Mengonfigurasi dan men-deploy lingkungan

Halaman ini berlaku untuk Apigee dan Apigee hybrid.

Lihat dokumentasi Apigee Edge.

Lingkungan adalah konteks eksekusi runtime untuk proxy API dan alur bersama yang ingin Anda deploy. Anda harus men-deploy proxy API dan alur bersama ke satu atau beberapa lingkungan sebelum dapat diakses untuk pengujian. Untuk mengetahui informasi selengkapnya tentang lingkungan, lihat Tentang lingkungan dan grup lingkungan.

Konfigurasikan dan deploy lingkungan seperti yang dijelaskan di bagian berikut. Lihat juga Mengelola folder dan file di ruang kerja Apigee.

Mengonfigurasi lingkungan

Sebelum men-deploy lingkungan, konfigurasikan untuk mengidentifikasi proxy API dan alur bersama yang ingin Anda deploy, serta konfigurasikan hook alur bersama atau server target, sesuai kebutuhan.

Untuk mengonfigurasi lingkungan, buat lingkungan dan edit konfigurasi yang ditentukan dalam tabel berikut.

Konfigurasi Deskripsi
Mask debug (debugmasks.json) Tentukan konfigurasi mask untuk menyamarkan data tertentu dalam sesi pelacakan dan proses debug.
Deployment (deployments.json) Tentukan proxy API dan alur bersama dalam deployment Anda.
Hook alur (flowhooks.json) Lampirkan alur bersama ke hook alur agar dieksekusi di tempat yang sama untuk semua proxy API yang di-deploy ke lingkungan.
Server target (targetservers.json) Pisahkan endpoint konkret dari endpoint target untuk mendukung load balancing dan failover di beberapa instance server backend.
Key store (keystores.json) Tambahkan dukungan TLS ke endpoint target dan server target Anda.

Selain itu, jika menggunakan kebijakan yang memerlukan resource, Anda dapat mengelola resource di tingkat lingkungan, sesuai kebutuhan.

Membuat lingkungan

Untuk membuat lingkungan di Apigee di Cloud Code:

  1. Lakukan salah satu tindakan berikut:

    • Arahkan kursor ke folder environments di ruang kerja Apigee, lalu klik Membuat ikon lingkungan.

      + ditampilkan saat Anda memosisikan kursor ke folder lingkungan

    • Pilih View > Command Palette untuk membuka Command palette, lalu pilih Cloud Code: Create Apigee environment.

    Wizard Create environment akan terbuka.

  2. Masukkan nama untuk lingkungan, lalu tekan Enter.

Lingkungan ditambahkan ke folder environments di bagian Apigee:

Folder lingkungan dengan file deployments.json, flowhooks.json, dan targetservers.json

Konfigurasikan lingkungan, seperti yang dijelaskan di bagian berikut.

Mengonfigurasi mask debug (debugmask.json)

Apigee memungkinkan Anda menentukan konfigurasi mask untuk menyamarkan data tertentu dalam sesi pelacakan dan proses debug. Jika disamarkan, data akan diganti dengan tanda bintang di output rekaman aktivitas. Contoh:

<description>**********</description>

Untuk mengetahui informasi selengkapnya, lihat Menyamarkan data sensitif.

Untuk mengonfigurasi mask debug, perbarui file debugmask.json dengan mengedit file secara langsung.

Berikut adalah contoh struktur dasar konfigurasi mask dalam format JSON. Untuk mengetahui informasi selengkapnya tentang kolom konfigurasi mask yang ditampilkan dalam contoh, lihat DebugMask.

{
  "namespaces": {
    "myco": "https://example.com"
  },
  "requestXPaths": [
    "/myco:Greeting/myco:User"
  ],
  "responseXPaths": [
    "/myco:Greeting/myco:User"
  ],
  "faultXPaths": [
    "/myco:Greeting/myco:User"
  ],
  "requestJSONPaths": [
    "$.store.book[].author"
  ],
  "responseJSONPaths": [
    "$.store.book[].author"
  ],
  "faultJSONPaths": [
    "$.store.book[*].author"
  ],
  "variables": [
    "request.header.user-agent",
    "request.formparam.password"
  ]
}

Mengonfigurasi deployment (deployments.json)

Konfigurasikan proxy API dan alur bersama yang ingin Anda sertakan dalam deployment.

Untuk mengonfigurasi deployment, perbarui file deployments.json menggunakan wizard konfigurasi atau dengan mengedit file secara langsung.

Untuk mengonfigurasi deployment menggunakan wizard konfigurasi:

  1. Arahkan kursor ke file deployments.json untuk lingkungan, lalu klik Ikon wizard untuk mengonfigurasi deployment.

    ikon setelan ditampilkan saat Anda mengarahkan kursor ke folder deployments.json

  2. Ikuti langkah-langkah wizard konfigurasi untuk memilih deployment dan mengisi otomatis kolom dalam file deployments.json. File deployments.json dibuka di editor.
  3. Edit konfigurasi sesuai kebutuhan.
  4. Pilih File > Save atau ⌘S untuk menyimpan hasil edit.

Contoh berikut mengonfigurasi deployment untuk menyertakan proxy API helloworld dan alur bersama mysharedflow dan hw-sharedflow:

{
  "proxies" : [
     "helloworld"
  ],
  "sharedflows" : [
     "mysharedflow",
     "hw-sharedflow"
  ]
}

Mengonfigurasi akun layanan dengan deployment alur bersama dan proxy

Proksi API yang bergantung pada layanan Google sebagai backend mungkin memerlukan akun layanan Google Cloud untuk dikaitkan dengan deployment. Lihat Menggunakan autentikasi Google.

Saat mengedit file deployments.json, Anda dapat mengaitkan proxy API atau alur bersama dengan akun layanan Google Cloud. Contoh:

{
  "name": "proxy-name",
  "serviceAccount": "associated-service-account"
}

Contoh berikut menunjukkan konfigurasi deployment saat akun layanan dikaitkan dengan proxy API helloworld dan alur bersama mysharedflow, tetapi proxy healthcheck dan alur bersama hw-sharedflow tidak dikaitkan dengan akun layanan:

{
  "proxies": [
    {
      "name": "helloworld",
      "serviceAccount": "myserviceaccount@myorg.iam.gserviceaccount.com"
    },
    "healthcheck"
  ],
  "sharedflows": [
    {
      "name": "mysharedflow",
      "serviceAccount": "myserviceaccount@myorg.iam.gserviceaccount.com"
    },
    "hw-sharedflow"
  ]
}

Pelajari lebih lanjut cara mengonfigurasi Apigee Emulator untuk menguji fitur autentikasi akun layanan di proxy API Anda.

Melampirkan alur bersama menggunakan hook alur (flowhooks.json)

Dengan hook alur, Anda melampirkan alur bersama sehingga alur tersebut dieksekusi di tempat yang sama untuk semua proxy API yang di-deploy ke lingkungan tertentu. Hal ini memberi Anda urutan logika yang diterapkan dan di-deploy secara terpisah yang bukan bagian dari kode implementasi proxy API. Secara khusus, Anda dapat melampirkan alur bersama di lokasi berikut dalam alur proxy API:

  • Sebelum endpoint proxy API dieksekusi (PreProxyFlowHook)
  • Setelah endpoint proxy API dieksekusi dan tepat sebelum respons dikirim ke klien (PostProxyFlowHook)
  • Sebelum endpoint target dieksekusi (PreTargetFlowHook)
  • Setelah respons target dieksekusi (PostTargetFlowHook)

Untuk informasi selengkapnya tentang hook alur, lihat Melampirkan alur bersama menggunakan hook alur.

Untuk melampirkan alur bersama menggunakan hook alur, perbarui file flowhooks.json menggunakan wizard konfigurasi atau dengan mengedit file secara langsung.

Untuk mengonfigurasi hook alur menggunakan wizard konfigurasi:

  1. Arahkan kursor ke file flowhooks.json untuk lingkungan, lalu klik Ikon wizard untuk mengonfigurasi hook alur.
  2. Pilih alur bersama yang akan dilampirkan di lokasi tertentu dalam alur proxy API dan isi otomatis kolom dalam file flowhooks.json. File flowhooks.json dibuka di editor.
  3. Edit konfigurasi sesuai kebutuhan.
  4. Pilih File > Save atau ⌘S untuk menyimpan hasil edit.

Contoh berikut melampirkan mysharedflow ke PreProxyFlowHook sehingga dieksekusi sebelum endpoint proxy API dieksekusi:

{
  "PreProxyFlowHook": {
    "continueOnError": true,
    "sharedFlow": "mysharedflow",
    "description": "Shared enforced before a proxy endpoint executes."
  }
}

Mengonfigurasi server target (targetservers.json)

Server target (TargetServers) memisahkan URL endpoint konkret dari konfigurasi endpoint target (TargetEndpoint). Daripada menentukan URL konkret dalam konfigurasi, Anda dapat mengonfigurasi satu atau beberapa TargetServer bernama. Kemudian, referensikan setiap TargetServer menurut namanya di HTTPConnection TargetEndpoint.

Untuk informasi selengkapnya tentang server target, lihat topik berikut:

Untuk mengonfigurasi server target, perbarui file targetservers.json menggunakan wizard konfigurasi atau dengan mengedit file secara langsung. Untuk deskripsi kolom dalam file targetservers.json, lihat Resource: TargetServer.

Untuk mengonfigurasi server target menggunakan wizard konfigurasi:

  1. Arahkan kursor ke file targetservers.json untuk lingkungan, lalu klik Ikon wizard untuk mengonfigurasi server target.
  2. Ikuti langkah-langkah di wizard konfigurasi untuk mengonfigurasi server target dan mengisi otomatis kolom dalam file targetservers.json. File targetservers.json dibuka di editor.
  3. Edit konfigurasi sesuai kebutuhan.
  4. Pilih File > Save atau ⌘S untuk menyimpan hasil edit.

Contoh berikut menambahkan server target baru di lingkungan:

[
  {
    "enabled": true,
    "name": "mytargetserver",
    "description": "My first target server",
    "host": "localhost",
    "port": 80
  }
]

Contoh berikut mengonfigurasi server target dengan TLS bersama menggunakan keystore:

[
    {
        "name": "mtlsserver",
        "host": "mytargetserver.mydomain",
        "port": 443,
        "enabled": true,
        "protocol": "HTTP",
        "tlsInfo": {
            "enabled": true,
            "clientAuthEnabled": true,
            "keyStore": "mykeystore",
            "keyAlias": "mykeyandcert",
            "trustStore": "mytruststore"
        }
    }
]

Mengonfigurasi keystore (keystores.json)

Keystore menentukan repositori sertifikat keamanan yang digunakan untuk enkripsi TLS di endpoint target dan server target.

Untuk informasi selengkapnya tentang konfigurasi TLS, lihat Opsi untuk mengonfigurasi TLS.

Untuk mengonfigurasi keystore:

  1. Buka file keystores.json untuk lingkungan di editor. File ini memiliki dua elemen utama
    • stores - Peta nama keystore yang ditambahkan dan aliasnya.
    • references - Peta semua nama referensi keystore dan nama keystore terkait.
  2. Edit konfigurasi sesuai kebutuhan.
  3. Pilih File > Save atau ⌘S untuk menyimpan hasil edit.

Contoh berikut menunjukkan keystore mykeystore dengan dua alias, mycert-alias dan mykeycert-alias:

{
    "stores": {
      "mykeystore": {
        "my-cert-alias": {
          "cert": "/Users/jdoe/testkeys/cert1.pem"
        },
        "my-keycert-alias": {
          "key": "/Users/jdoe/testkeys/key1.pem",
          "cert": "/Users/jdoe/testkeys/cert1.pem"
        }
      }
    }
  }

Men-deploy lingkungan

Deploy proxy API dan alur bersama yang dikonfigurasi untuk lingkungan agar dapat diakses untuk pengujian.

Untuk men-deploy lingkungan:

  1. Di bagian Apigee, posisikan kursor di atas folder lingkungan yang ingin di-deploy.
  2. Klik Ikon deploy untuk lingkungan Apigee.

    Ikon deploy ditampilkan saat Anda memosisikan kursor ke folder lingkungan pengembangan

  3. Jika beberapa penampung untuk Apigee Emulator sedang berjalan, pilih penampung tempat Anda ingin men-deploy lingkungan.
  4. Pilih paket pengujian yang ingin diekspor dengan deployment atau pilih Deploy without a test bundle.

    Perintah untuk mengekspor paket pengujian

    Anda dapat mengekspor resource pengujian nanti, seperti yang dijelaskan dalam Mengekspor resource pengujian ke Emulator Apigee.

Lingkungan akan di-deploy dan menampilkan pesan berhasil di tab Output.

Aplikasi yang di-deploy ditampilkan di Apigee Emulator:

Emulator Apigee yang menampilkan aplikasi helloworld yang di-deploy dan resource pengujian yang aktif