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.

Konfigurasi 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, Anda harus mengonfigurasinya untuk mengidentifikasi proxy API dan alur bersama yang ingin di-deploy, serta mengonfigurasi hook alur atau server target bersama, sesuai kebutuhan.

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

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

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

Menciptakan lingkungan

Untuk membuat lingkungan di Apigee di Cloud Code:

  1. Lakukan salah satu tindakan berikut:

    • Arahkan kursor ke folder environments di bagian Apigee, lalu klik Buat ikon.

      + ditampilkan saat Anda memosisikan kursor ke folder lingkungan

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

    Wizard Buat lingkungan akan terbuka.

  2. Masukkan nama untuk lingkungan tersebut, lalu tekan Enter.

Lingkungan tersebut akan ditambahkan ke folder environments di bagian Apigee, seperti yang ditunjukkan pada gambar berikut.

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

Konfigurasikan lingkungan, seperti yang dijelaskan di bagian berikut.

Mengonfigurasi debug mask (debugmask.json)

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

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

Untuk informasi selengkapnya, lihat Menyembunyikan data sensitif.

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

Berikut ini 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)

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

Untuk mengonfigurasi deployment, perbarui file deployments.json menggunakan wizard konfigurasi (dijelaskan di bawah) 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.

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

  2. Jelajahi wizard konfigurasi untuk memilih deployment dan mengisi kolom secara otomatis di file deployments.json.
    File deployments.json dibuka di editor.

  3. Edit konfigurasi sesuai yang diperlukan.

  4. Pilih File > Simpan atau ⌘S untuk menyimpan hasil edit.

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

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

Mengonfigurasi akun layanan dengan deployment proxy dan alur bersama

Proxy 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 dengan akun layanan dikaitkan dengan proxy API helloworld dan alur bersama mysharedflow, tetapi proxy healthcheck dan alur bersama hw-sharedflow tidak terkait dengan akun layanan:

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

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

Melampirkan alur bersama menggunakan flow hook (flowhooks.json)

Dengan flow hook, Anda melampirkan alur bersama sehingga dijalankan di tempat yang sama untuk semua proxy API yang di-deploy ke lingkungan tertentu. Ini memberi Anda urutan logika yang diterapkan dan di-deploy secara terpisah yang bukan bagian dari kode penerapan 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 mengetahui informasi selengkapnya tentang flow hook, lihat Melampirkan flow bersama menggunakan flow hook.

Untuk melampirkan alur bersama menggunakan flow hook, perbarui file flowhooks.json menggunakan wizard konfigurasi (dijelaskan di bawah) atau dengan mengedit file secara langsung.

Untuk mengonfigurasi deployment menggunakan wizard konfigurasi:

  1. Posisikan kursor ke file flowhooks.json untuk lingkungan, lalu klik Ikon wizard.
  2. Ikuti wizard konfigurasi untuk memilih alur bersama yang akan dilampirkan di lokasi tertentu dalam alur proxy API dan mengisi kolom secara otomatis di file flowhooks.json.
    File flowhooks.json dibuka di editor.
  3. Edit konfigurasi sesuai yang diperlukan.
  4. Pilih File > Simpan 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 menetapkan URL konkret dalam konfigurasi, Anda dapat mengonfigurasi satu atau beberapa TargetServers yang bernama. Kemudian, referensikan setiap TargetServer berdasarkan nama dalam TargetEndpoint HTTPConnection.

Untuk informasi lebih lanjut tentang server target, lihat topik berikut:

Untuk mengonfigurasi server target, perbarui file targetservers.json menggunakan wizard konfigurasi (dijelaskan di bawah) 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 tersebut, lalu klik Ikon wizard.
  2. Ikuti wizard konfigurasi untuk mengonfigurasi server target dan mengisi kolom secara otomatis dalam file targetservers.json. File targetservers.json dibuka di editor.
  3. Edit konfigurasi sesuai yang diperlukan.
  4. Pilih File > Simpan atau ⌘S untuk menyimpan hasil edit.

Contoh berikut menambahkan server target baru di lingkungan:

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

Contoh berikut mengonfigurasi server target dengan TLS bersama menggunakan keystores:

[
    {
        "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 dan alias yang ditambahkan.
    • references - Peta semua nama referensi keystore dan nama keystore terkait.
  2. Edit konfigurasi sesuai yang diperlukan.
  3. Pilih File > Simpan atau ⌘S untuk menyimpan hasil edit.

Contoh berikut menunjukkan mykeystore keystore 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 suatu lingkungan agar dapat diakses untuk pengujian.

Untuk men-deploy lingkungan:

  1. Di bagian Apigee, posisikan kursor ke folder lingkungan yang ingin Anda deploy.
  2. Klik Ikon Deploy.

    Ikon deploy ditampilkan saat Anda memosisikan kursor ke folder lingkungan developer

  3. Jika beberapa penampung untuk Emulator Apigee berjalan, pilih container tempat Anda ingin men-deploy lingkungan.
  4. Pilih paket pengujian yang ingin Anda ekspor dengan deployment atau pilih Deploy tanpa paket pengujian.

    Minta 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 informasi berikut ditampilkan di tab Output:

Environment dev deployed successfully with revision 7

Aplikasi yang di-deploy akan ditampilkan di Emulator Apigee, seperti yang ditunjukkan di bawah.

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

Langkah berikutnya

Sekarang saatnya menguji API Anda.