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 informasi selengkapnya tentang lingkungan, lihat Tentang lingkungan dan grup lingkungan.

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

Mengonfigurasi lingkungan

Sebelum Anda menerapkan lingkungan, konfigurasikan lingkungan tersebut untuk mengidentifikasi proksi API dan alur bersama yang ingin Anda terapkan, dan konfigurasikan kait alur bersama atau server target, sesuai kebutuhan.

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

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

Selain itu, jika Anda menggunakan kebijakan apa pun 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 Anda, lalu klik Ikon buat lingkungan.

      + ditampilkan saat Anda memosisikan kursor di atas folder environments

    • Pilih View > Command Palette untuk membuka Palet perintah, 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 Environments dengan file deployments.json, flowhooks.json, dan targetservers.json

Konfigurasi lingkungan, seperti yang dijelaskan di bagian berikut.

Mengonfigurasi penyamaran debug (debugmask.json)

Apigee memungkinkan Anda menentukan konfigurasi penyamaran untuk menyamarkan data tertentu dalam sesi debug dan rekaman aktivitas. Saat data disamarkan, data tersebut diganti dengan tanda bintang dalam 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 masker 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 atau dengan mengedit file secara langsung.

Untuk mengkonfigurasi penyebaran menggunakan wizard konfigurasi:

  1. Arahkan kursor Anda ke file deployments.json untuk lingkungan tersebut dan klik Ikon wizard untuk mengonfigurasi deployment.

    Ikon setelan akan ditampilkan saat Anda memosisikan kursor di atas folder deployments.json

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

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 proxy dan alur bersama

Proxy API yang bergantung pada layanan Google sebagai backend mungkin memerlukan Google Cloud akun layanan yang dikaitkan dengan deployment. Lihat Menggunakan otentikasi 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 tempat 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 tentang cara mengonfigurasi Apigee Emulator untuk menguji fitur otentikasi akun layanan di proxy API Anda.

Melampirkan alur bersama menggunakan hook alur (flowhooks.json)

Dengan flow hook, Anda melampirkan alur bersama sehingga dieksekusi di tempat yang sama untuk semua proxy API yang di deploy ke lingkungan tertentu. Ini memberi Anda rangkaian logika yang diimplementasikan dan diterapkan secara terpisah, yang bukan merupakan bagian dari kode implementasi proxy API. Secara spesifik, Anda dapat melampirkan alur bersama di lokasi berikut dalam alur proksi 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 hook alur, lihat Melampirkan alur bersama menggunakan hook alur.

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

Untuk mengonfigurasi hook alur menggunakan wizard konfigurasi:

  1. Arahkan kursor Anda ke file flowhooks.json untuk lingkungan tersebut dan 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 akan terbuka di editor.
  3. Edit konfigurasi sesuai kebutuhan.
  4. Pilih File > Save atau ⌘S untuk menyimpan hasil edit Anda.

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."
  }
}

Konfigurasi 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, rujuk setiap TargetServer berdasarkan nama di HTTPConnection TargetEndpoint.

Untuk mengetahui 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 mengetahui 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 dan klik Ikon wizard untuk mengonfigurasi server target.
  2. Ikuti langkah-langkah panduan konfigurasi untuk mengkonfigurasi server target dan mengisi otomatis kolom-kolom dalam file targetservers.json. File targetservers.json akan terbuka di editor.
  3. Edit konfigurasi sesuai kebutuhan.
  4. Pilih File > Save atau ⌘S untuk menyimpan hasil edit Anda.

Contoh berikut menambahkan server target baru ke dalam lingkungan:

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

Contoh berikut mengonfigurasi server target dengan mutual TLS menggunakan keystore:

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

Konfigurasi keystore (keystores.json)

Keystore mendefinisikan repositori sertifikat keamanan yang digunakan untuk enkripsi TLS di titik akhir target dan server target.

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

Untuk mengonfigurasi keystore:

  1. Buka file keystores.json untuk lingkungan di editor. File tersebut 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 Anda.

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

Sebarkan proxy API dan alur bersama yang telah dikonfigurasi untuk suatu lingkungan agar dapat diakses untuk pengujian.

Untuk menerapkan lingkungan:

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

    Ikon deploy ditampilkan saat Anda memosisikan kursor di atas folder lingkungan dev

  3. Jika beberapa penampung untuk Apigee Emulator sedang berjalan, pilih penampung yang ingin Anda deploy lingkungannya.
  4. Pilih bundel pengujian yang ingin Anda ekspor dengan penyebaran atau pilih Sebarkan tanpa bundel pengujian.

    Perintah untuk mengekspor paket pengujian

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

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

Aplikasi yang di-deploy ditampilkan di Emulator Apigee:

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