Menyediakan NAT IP

Halaman ini berlaku untuk Apigee, tetapi tidak untuk Apigee Hybrid.

Lihat dokumentasi Apigee Edge.

Bagian ini menjelaskan cara mengelola IP NAT untuk instance Apigee.

Apigee menyediakan IP sementara dan IP khusus. Dalam banyak kasus, IP sementara sudah cukup. Jika backend Anda tidak memerlukan daftar yang diizinkan IP, Anda tidak perlu mengelola IP NAT, dan Apigee akan otomatis mengalokasikan IP sementara untuk egress.

Jika memerlukan daftar yang diizinkan IP, Anda dapat mencadangkan dan mengaktifkan IP sehingga Apigee menggunakan IP statis untuk traffic keluar.

Menyiapkan penyediaan IP NAT Apigee

Untuk menetapkan penyediaan IP NAT untuk instance Apigee Anda:

  1. Buat dan isi variabel lingkungan berikut:

    Variabel

    PROJECT_ID=YOUR_PROJECT_ID
    ORG_ID=YOUR_ORG_ID
    INSTANCE_NAME=YOUR_INSTANCE_NAME
    NAT_ID=1st_NAT_IP_ID

    Contoh

    PROJECT_ID=apigee-saas-prod
    ORG_ID=apigee-saas-prod
    INSTANCE_NAME=prod-us-west1-instance1
    NAT_ID=nat-1

    Dengan keterangan:

    • YOUR_PROJECT_ID adalah project ID Cloud yang Anda buat sebagai bagian dari Prasyarat. Jika Anda tidak yakin dengan project ID Anda, gunakan konsol Cloud atau perintah gcloud projects list untuk menemukannya.
    • YOUR_ORG_ID adalah ID organisasi Apigee Anda.
    • YOUR_INSTANCE_NAME adalah nama instance Apigee Anda.
    • 1st_NAT_IP_ID adalah nama yang Anda tetapkan ke alamat IP NAT ini; misalnya, nat-1. Nilai parameter ini tidak boleh melebihi 20 karakter.
  2. Cadangkan IP NAT dengan perintah berikut:
    1. Di command line, dapatkan kredensial autentikasi gcloud Anda, seperti yang ditunjukkan pada contoh berikut:

      TOKEN=$(gcloud auth print-access-token)

      Untuk memeriksa apakah token Anda telah diisi, gunakan echo, seperti yang ditunjukkan contoh berikut:

      echo $TOKEN

      Tindakan ini akan menampilkan token Anda sebagai string yang dienkode.

      Untuk mengetahui informasi selengkapnya, lihat ringkasan alat command line gcloud.

    2. Perintah untuk mencadangkan IP NAT akan menampilkan operasi yang berjalan lama. Oleh karena itu, perintah seperti yang ditampilkan di sini menetapkan output ke variabel operation_name:
      operation_name=$(curl -H "Authorization: Bearer $TOKEN" \
        "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses" \
        -X POST -H "content-type:application/json" -d "{\"name\":\"${NAT_ID}\"}" | jq -r '.name')
      
    3. Lakukan polling operasi yang berjalan lama hingga menampilkan status done: true dengan menjalankan permintaan berikut:
      curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"
  3. Setelah operasi selesai, aktifkan IP NAT dengan perintah berikut:
    1. Aktifkan IP dan tetapkan nama operasi yang berjalan lama ke operation_name:
      operation_name=$(curl -H "Authorization: Bearer $TOKEN" \
        "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses/${NAT_ID}:activate" \
        -X POST -H "content-type:application/json" -d "{}" | jq -r '.name')
    2. Lakukan polling pada operasi yang berjalan lama hingga menampilkan status done: true:
      curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"
  4. Ulangi prosedur ini dengan nama IP NAT baru untuk setiap IP NAT yang perlu Anda siapkan.

Mengambil IP NAT

Cantumkan IP NAT untuk instance dengan perintah berikut:

curl -H "Authorization: Bearer $TOKEN" \
  "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses"

Contoh respons akan terlihat seperti ini:

{
  "natAddresses": [
    {
      "name": "nat-1",
      "ipAddress": "35.203.160.18",
      "state": "ACTIVE"
    },
    {
      "name": "nat-2",
      "ipAddress": "35.230.14.174",
      "state": "RESERVED"
    },
    {
      "name": "nat-3",
      "state": "CREATING"
    }
  ]
}

Status IP NAT

  • CREATING : Pembuatan IP NAT tertunda. Belum siap digunakan.
  • RESERVED: IP NAT telah dibuat, tetapi tidak digunakan. Hal ini memberi Anda kesempatan untuk mengizinkan IP ini sebelum mengaktifkannya.
  • ACTIVE: IP NAT sedang digunakan untuk mengirim traffic keluar.
  • DELETING: IP NAT sedang dihapus.

Menghapus IP NAT

Anda dapat menghapus IP NAT dengan perintah berikut:

  1. Hapus IP dan tetapkan output ke "operation_name".
    operation_name=$(curl -H "Authorization: Bearer $TOKEN" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses/${NAT_ID}" \
      -X DELETE | jq -r '.name')
  2. Lakukan polling pada operasi yang berjalan lama hingga menampilkan status done: true.
    curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"