Menyediakan organisasi evaluasi tanpa peering VPC

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

Lihat Dokumentasi Apigee Edge.

Dokumen ini menjelaskan cara menginstal dan mengonfigurasi organisasi evaluasi Apigee dari command line tanpa Peering VPC. Masa berlaku organisasi evaluasi akan berakhir setelah 60 hari dan mungkin memiliki keterbatasan lainnya. Lihat juga Membandingkan organisasi berbayar dan eval.

Batasan

Opsi penginstalan peering non-VPC yang dijelaskan dalam dokumen ini memiliki beberapa batasan:

Untuk mengetahui daftar lengkap fitur dan pendekatan jaringan yang didukung dan tidak didukung untuk peering non-VPC, lihat Cara memilih opsi jaringan.

Ringkasan langkah-langkah

Langkah-langkah penyediaannya adalah sebagai berikut:

Langkah 1: Menentukan variabel lingkungan

Siapkan gcloud dan tentukan variabel lingkungan untuk digunakan dalam langkah-langkah berikutnya:

  1. Pastikan Anda telah melengkapi persyaratan yang tercantum dalam Prasyarat.
  2. Anda harus sudah menginstal gcloud CLI. Jika Anda perlu menginstalnya, lihat Menginstal gcloud CLI.
  3. Melakukan inisialisasi gcloud CLI, seperti yang dijelaskan dalam Menginisialisasi gcloud CLI, atau jika CLI sudah diinisialisasi, pastikan bahwa project Google Cloud yang Anda buat di Prasyarat adalah project default untuk gcloud.
  4. Tentukan variabel lingkungan berikut:
    AUTH="Authorization: Bearer $(gcloud auth print-access-token)"
    PROJECT_ID="YOUR_PROJECT_ID"
    RUNTIME_LOCATION="YOUR_RUNTIME_LOCATION"
    ANALYTICS_REGION="YOUR_ANALYTICS_REGION"

    Dengan keterangan:

    • AUTH menentukan header Authentication dengan token pemilik. Anda akan menggunakan header ini saat memanggil API Apigee. Perhatikan bahwa token akan habis masa berlakunya setelah periode waktu tertentu dan ketika itu terjadi, Anda cukup membuat ulang menggunakan perintah yang sama. Sebagai mengetahui informasi selengkapnya, lihat halaman referensi untuk perintah print-access-token.
    • PROJECT_ID adalah project ID Cloud yang Anda buat sebagai bagian dari Prasyarat.
    • RUNTIME_LOCATION adalah lokasi fisik tempat Apigee lokasi instance. Untuk daftar lokasi runtime yang tersedia, lihat Lokasi Apigee.

    • ANALYTICS_REGION adalah lokasi fisik tempat Apigee data analisis akan disimpan. Untuk daftar region Analisis Apigee API yang tersedia, lihat Lokasi Apigee.

      RUNTIME_LOCATION dan ANALYTICS_REGION bisa berada di region yang sama, tetapi tidak harus sama. Namun, ada manfaat performa jika mereka sama.

  5. (Opsional) Periksa pekerjaan Anda dengan mencerminkan nilai yang baru saja Anda tetapkan. Perhatikan bahwa bila Anda ingin untuk menggunakan variabel dalam perintah Anda, awali nama variabel dengan tanda dolar ($).
    echo $AUTH
    echo $PROJECT_ID
    echo $RUNTIME_LOCATION
    echo $ANALYTICS_REGION
    

    Respons terhadap perintah echo Anda akan terlihat seperti berikut:

    Authorization: Bearer ya29.a123456678940B63hPSAMPLEsampleKKYVsample0f3pWDWZDuH2-hENkNa
    TvgZ1PD977TMvv6edBQPJezdHw040880Ol_LoD5ZDkt-i-knizia_KhA9L20sSvztL81-SAMPLE42ELPMASk2_
    1CxN
    my-cloud-project
    us-west1
    us-west1
    

Langkah 2: Aktifkan API

  1. Apigee mengharuskan Anda mengaktifkan beberapa API Google Cloud. Aktifkan dengan menjalankan services enable berikut:

    gcloud services enable apigee.googleapis.com \
      cloudkms.googleapis.com --project=$PROJECT_ID
  2. (Opsional) Untuk memeriksa pekerjaan Anda, gunakan perintah services list untuk menampilkan semua API yang telah diaktifkan:

    gcloud services list

    Responsnya menampilkan semua layanan yang diaktifkan, termasuk API yang baru saja Anda aktifkan (Apigee, Cloud KMS, dan Compute Engine).

Langkah 3: Buat organisasi

Organisasi adalah container level teratas di Apigee. Paket ini berisi semua proxy API Anda dan resource terkait. Untuk mengetahui detailnya, lihat Memahami organisasi.

  1. Buat organisasi evaluasi baru dengan ProvisioningOrganization API:
     suppresswarning="true">curl "https://apigee.googleapis.com/v1/projects/$PROJECT_ID:provisionOrganization"  \
      -H "$AUTH" \
      -X POST \
      -H "Content-Type:application/json" \
      -d '{
        "analyticsRegion":"'"$ANALYTICS_REGION"'",
        "runtimeLocation":"'"$RUNTIME_LOCATION"'",
        "disableVpcPeering":"true",
      }'

    Dengan keterangan:

    • -d menentukan payload data untuk permintaan. Payload ini harus mencakup hal berikut:
      • ANALYTICS_REGION: Menentukan lokasi fisik tempat analisis Anda data akan disimpan.

      • RUNTIME_LOCATION: adalah lokasi fisik tempat instance Apigee berada.

      • disableVpcPeering: Dalam alur penyediaan ini, kita tidak menggunakan peering VPC, sehingga tanda ini harus ditetapkan ke true. Default: false
  2. Apigee memulai LRO untuk membuat organisasi eval. Operasi ini membutuhkan waktu hingga 40 menit untuk selesai.

  3. Untuk memeriksa status permintaan pembuatan, Anda dapat mengirim permintaan GET ke Apigee Cantumkan API organisasi, seperti yang ditampilkan dalam contoh berikut:
    curl -H "$AUTH" "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID"

    Jika Anda melihat respons ini, artinya pembuatan organisasi belum selesai:

    {
    "error": {
    "code": 403,
    "message": "Permission denied on resource \"organizations/apigee-docs-m\" (or it may not exist)",
    "status": "PERMISSION_DENIED"
    }
    }

    Jika berhasil, objek respons akan menunjukkan "state": "ACTIVE", dan Anda dapat melanjutkan ke langkah berikutnya.

Langkah 4: Konfigurasi pemilihan rute

Pada langkah ini, Anda akan mengonfigurasi cara aplikasi klien berkomunikasi dengan Apigee. Klien untuk Apigee lalu lintas juga disebut "arah utara" kemacetan. Opsi konfigurasi arah utara meliputi:

Jenis akses Deskripsi proses konfigurasi dan deployment
Internal dengan PSC

Hanya izinkan akses internal ke proxy API Anda dari project Google Cloud mana pun yang menggunakan Private Service Connect (PSC).

PSC memungkinkan koneksi pribadi antara produsen layanan (Apigee) dan konsumen layanan (project VPC yang di-peering dan/atau satu atau beberapa project Cloud lain yang Anda kontrol). Dengan metode ini, permintaan melewati endpoint layanan atau load balancer internal regional ke satu titik lampiran, yang disebut lampiran layanan. Konfigurasi ini memungkinkan klien internal Anda mengirim Permintaan proxy API Apigee dari mesin yang mendukung jaringan.

Eksternal dengan PSC

Izinkan akses eksternal ke proxy API menggunakan Private Service Connect (PSC).

Gunakan Private Service Connect (PSC) untuk mengaktifkan koneksi pribadi antara produsen layanan (Apigee) dan konsumen layanan (project VPC yang di-peering dan/atau satu atau beberapa project Cloud lain yang Anda kontrol). Dengan metode ini, permintaan melewati load balancer eksternal global atau load balancer eksternal regional ke titik lampiran, yang disebut lampiran layanan. Konfigurasi ini memungkinkan Anda mengirim Permintaan proxy Apigee API dari komputer yang kompatibel dengan jaringan.

Masing-masing pendekatan {i>routing<i} ini ditampilkan pada tab di petunjuk di bawah ini.

Perutean internal (PSC)

Bagian ini menjelaskan cara hanya mengizinkan akses internal ke proxy API dari Project Google Cloud yang menggunakan Private Service Connect (PSC).

Anda harus memilih opsi untuk mengonfigurasi akses internal dengan PSC:

  • Endpoint layanan: Permintaan melewati endpoint layanan ke satu titik lampiran, yang disebut lampiran layanan.
  • Load balancer regional internal: Permintaan diteruskan melalui load balancer HTTP(S) internal regional. Lihat juga Load balancing global vs regional.

Pilih tab di bawah untuk pilihan konfigurasi Anda dan ikuti langkah-langkahnya:

Endpoint layanan

Membuat endpoint layanan PSC untuk lampiran layanan

  1. Dapatkan lampiran layanan dari instance Apigee:
    curl -i -X GET -H "$AUTH" \
      "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/instances"

    Dalam contoh output berikut, nilai serviceAttachment ditunjukkan dalam huruf tebal:

    {
      "instances": [
        {
          "name": "us-west1",
          "location": "us-west1",
          "createdAt": "1645731488019",
          "lastModifiedAt": "1646504754219",
          "diskEncryptionKeyName": "projects/my-project/locations/us-west1/keyRings/us-west1/cryptoKeys/dek",
          "state": "ACTIVE",
          "runtimeVersion": "1-7-0-20220228-190814",
          "consumerAcceptList": [
            "my-project"
          ],
          "serviceAttachment": "projects/bfac74a67a320c43a12p-tp/regions/us-west1/serviceAttachments/apigee-us-west1-crw1"
        }
      ]
    }
  2. Buat PSC Service Endpoint yang mengarah ke lampiran layanan yang Anda dapatkan dari isi respons instance di langkah sebelumnya, seperti yang dijelaskan dalam Membuat endpoint Private Service Connect.
  3. Catat dan ingat alamat IP endpoint layanan. Anda akan memerlukan alamat IP nanti ketika Anda menguji penyiapan dengan memanggil proxy API. (Contoh: 10.138.0.2)

Penyediaan Apigee selesai. Buka Deploy a sample proxy.

LB regional internal

Langkah 8a: Menyiapkan variabel lingkungan

Petunjuk di bagian ini menggunakan variabel lingkungan untuk merujuk pada penggunaan berulang {i>string<i}. Pastikan Anda telah menetapkan variabel di Menentukan variabel lingkungan.

Selain itu, tetapkan variabel lingkungan berikut:

  • Tentukan variabel lingkungan berikut di terminal perintah Anda:
    NEG_NAME=YOUR_NEG_NAME"
    TARGET_SERVICE=YOUR_TARGET_SERVICE"
    NETWORK_NAME=YOUR_NETWORK_NAME"
    SUBNET_NAME=YOUR_SUBNET_NAME"

    Dengan keterangan:

    • NEG_NAME: nama untuk grup endpoint jaringan.
    • TARGET_SERVICE: lampiran layanan yang ingin Anda hubungkan. Contoh: projects/bfac7497a40c32a12p-tp/regions/us-west1/serviceAttachments/apigee-us-west1-crw7
    • NETWORK_NAME: (Opsional) Nama jaringan tempat NEG dibuat. Jika Anda menghilangkan parameter ini, jaringan project default akan digunakan.
    • SUBNET_NAME: Nama subnet yang digunakan untuk konektivitas pribadi ke produsen. Ukuran subnet bisa jadi kecil: NEG PSC hanya memerlukan satu IP dari subnet. Untuk Apigee, hanya satu NEG PSC yang diperlukan per wilayah. Subnet dapat dibagikan dan digunakan oleh VM atau entitas lain. Jika subnet tidak ditentukan, endpoint jaringan dapat menjadi bagian dari subnetwork region tempat grup endpoint jaringan dibuat.
  • Langkah 8b: Buat subnet khusus proxy

    gcloud compute networks subnets create testproxyonlysubnet \
      --purpose=REGIONAL_MANAGED_PROXY --role=ACTIVE --region=$RUNTIME_REGION --network=$NETWORK_NAME \
      --range=100.0.0.0/24 --project=$PROJECT_ID

    Langkah 8c: Buat grup endpoint jaringan (NEG)

    1. Dapatkan lampiran layanan dari instance yang Anda buat sebelumnya:
      curl -i -X GET -H "$AUTH" \
      "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/instances"

      Dalam contoh output berikut, nilai serviceAttachment ditunjukkan dalam huruf tebal:

      {
      "instances": [
        {
          "name": "us-west1",
          "location": "us-west1",
          "createdAt": "1645731488019",
          "lastModifiedAt": "1646504754219",
          "diskEncryptionKeyName": "projects/my-project/locations/us-west1/keyRings/us-west1/cryptoKeys/dek",
          "state": "ACTIVE",
          "runtimeVersion": "1-7-0-20220228-190814",
          "consumerAcceptList": [
            "my-project"
          ],
          "serviceAttachment": "projects/bfac7497a40c32a12p-tp/regions/us-west1/serviceAttachments/apigee-us-west1-crw7"
        }
      ]
      }
    2. Buat NEG Private Service Connect yang mengarah ke layanan lampiran tambahan yang Anda peroleh dari isi respons instance pada langkah sebelumnya.

      gcloud compute network-endpoint-groups create $NEG_NAME \
      --network-endpoint-type=private-service-connect \
      --psc-target-service=$TARGET_SERVICE \
      --region=$RUNTIME_LOCATION \
      --project=$PROJECT_ID
      

    Langkah 8d: Konfigurasikan load balancer internal regional

    1. Mencadangkan alamat IPv4 internal untuk load balancer.
      gcloud compute addresses create ADDRESS_NAME \
      --ip-version=IPV4 --subnet=$SUBNET_NAME \
        --region=$RUNTIME_LOCATION --project=$PROJECT_ID

      Ganti ADDRESS_NAME dengan nama untuk resource alamat IP.

      Jalankan perintah ini untuk melihat alamat IP yang dicadangkan:

      gcloud compute addresses describe ADDRESS_NAME \
      --format="get(address)" --region=RUNTIME_LOCATION --project=$PROJECT_ID
    2. Buat layanan backend untuk NEG.
      gcloud compute backend-services create BACKEND_SERVICE_NAME \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --protocol=HTTPS \
      --region=$RUNTIME_REGION \
      --project=$PROJECT_ID
    3. Ganti BACKEND_SERVICE_NAME dengan nama layanan backend.

    4. Tambahkan NEG ke layanan backend.
      gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
      --network-endpoint-group=NEG_NAME \
      --region=$RUNTIME_LOCATION \
      --project=$PROJECT_ID

      Ganti kode berikut:

      • BACKEND_SERVICE_NAME: nama layanan backend.
      • NEG_NAME: nama grup endpoint jaringan.
    5. Anda harus memiliki resource sertifikat SSL untuk digunakan di Proxy target HTTPS.

      Gunakan perintah ini untuk membuat resource sertifikat SSL yang dikelola sendiri. Untuk membuat sertifikat SSL yang dikelola sendiri, Anda memerlukan file kunci pribadi lokal dan sertifikat lokal . Jika Anda perlu membuat file ini, lihat langkah 1 dari menggunakan sertifikat SSL yang dikelola sendiri.

      gcloud compute ssl-certificates create CERTIFICATE \
      --certificate LB_CERT \
      --private-key LB_PRIVATE_KEY
      --region=RUNTIME_LOCATION --project=$PROJECT_ID

      Ganti kode berikut:

      • CERTIFICATE: nama untuk sertifikat.
      • LB_CERT: jalur ke file sertifikat berformat PEM untuk sertifikat yang dikelola sendiri.
      • LB_PRIVATE_KEY: jalur ke file kunci pribadi berformat PEM untuk sertifikat yang dikelola sendiri.
    6. Buat peta URL untuk load balancer.

      Peta URL harus merujuk ke layanan backend default. Tetapkan layanan backend yang Anda baru saja dibuat sebagai {i>default<i}.

      gcloud compute url-maps create URL_MAP_NAME \
          --default-service=DEFAULT_BACKEND_SERVICE_NAME \
          --global --project=$PROJECT_ID

      Ganti kode berikut:

      • URL_MAP_NAME: nama untuk peta URL.
      • DEFAULT_BACKEND_SERVICE_NAME: nama layanan backend default load balancer. Setelan default digunakan saat tidak ada aturan host yang cocok dengan nama host yang diminta.
    7. Gunakan resource sertifikat SSL untuk membuat proxy HTTPS target.

      gcloud compute target-https-proxies create PROXY_NAME \
      --url-map=URL_MAP_NAME \
      --ssl-certificates=CERTIFICATE \
      --region=$RUNTIME_LOCATION --project=$PROJECT_ID

      Ganti kode berikut:

      • PROXY_NAME: nama untuk proxy HTTPS target.
      • URL_MAP_NAME: nama peta URL.
      • CERTIFICATE: nama resource sertifikat.
    8. Buat aturan penerusan.
      gcloud compute forwarding-rules create FWD_RULE \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --address=ADDRESS_NAME \
      --target-https-proxy=PROXY_NAME \
      --ports=443 \
      --target-https-proxy-region=$RUNTIME_REGION \
      --region=$RUNTIME_REGION
      --project=$PROJECT_ID

      Ganti kode berikut:

      • FWD_RULE: nama untuk aturan penerusan.
      • ADDRESS_NAME: resource alamat IP yang Anda reservasi untuk digunakan bagi aturan penerusan.
      • PROXY_NAME: nama proxy HTTPS target.

    Penyediaan Apigee selesai. Buka Deploy a sample proxy.

    Perutean eksternal (PSC)

    Bagian ini menjelaskan cara mengonfigurasi perutean eksternal menggunakan Private Service Connect (PSC) untuk memungkinkan komunikasi antara Apigee dan VPC yang Anda kontrol. Anda harus melakukannya sebelum Anda dapat mengirim permintaan dari klien eksternal ke instance runtime Apigee.

    Langkah 8b: Buat NEG dan konfigurasikan load balancer

    Anda dapat membuat load balancer global atau regional.

    LB eksternal global

    Mengonfigurasi global load balancer HTTP(S) eksternal (load balancing skema ditetapkan ke EXTERNAL_MANAGED).

    Meskipun NEG Private Service Connect bersifat regional, semua komponen load balancing lainnya dalam konfigurasi ini bersifat global.

    1. Pastikan Anda telah menetapkan variabel lingkungan di Menentukan variabel lingkungan.
    2. Dapatkan lampiran layanan dari instance yang Anda buat sebelumnya:
      curl -i -X GET -H "$AUTH" \
            "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/instances"

      Dalam contoh output berikut, nilai serviceAttachment ditunjukkan dalam huruf tebal:

      {
            "instances": [
              {
                "name": "us-west1",
                "location": "us-west1",
                "host": "10.82.192.2",
                "port": "443",
                "createdAt": "1645731488019",
                "lastModifiedAt": "1646504754219",
                "diskEncryptionKeyName": "projects/my-project/locations/us-west1/keyRings/us-west1/cryptoKeys/dek",
                "state": "ACTIVE",
                "peeringCidrRange": "SLASH_22",
                "runtimeVersion": "1-7-0-20220228-190814",
                "ipRange": "10.82.192.0/22,10.82.196.0/28",
                "consumerAcceptList": [
                  "875609189304"
                ],
                "serviceAttachment": "projects/bfac7497a40c32a12p-tp/regions/us-west1/serviceAttachments/apigee-us-west1-crw7"
              }
            ]
          }
    3. Buat NEG Private Service Connect yang mengarah ke layanan lampiran tambahan yang Anda peroleh dari isi respons instance pada langkah sebelumnya.

          gcloud compute network-endpoint-groups create $NEG_NAME \
            --network-endpoint-type=private-service-connect \
            --psc-target-service=$TARGET_SERVICE \
            --region=$RUNTIME_LOCATION \
            --network=NETWORK_NAME \
            --subnet=SUBNET_NAME \
            --project=$PROJECT_ID
          

      Ganti kode berikut:

      • NETWORK_NAME: (Opsional) Nama jaringan tempat NEG dibuat. Jika Anda menghilangkan parameter ini, jaringan project default akan digunakan.
      • SUBNET_NAME: Nama subnet yang digunakan untuk konektivitas pribadi ke produsen. Ukuran subnet bisa jadi kecil: NEG PSC hanya memerlukan satu IP dari subnet. Untuk Apigee, hanya satu NEG PSC yang diperlukan per wilayah. Subnet dapat dibagikan dan digunakan oleh VM atau entitas lain. Jika subnet tidak ditentukan, endpoint jaringan dapat menjadi bagian dari subnetwork region tempat grup endpoint jaringan dibuat.
      • PROJECT_ID Project Cloud yang sudah dikaitkan dengan organisasi Apigee Anda, atau project Cloud yang disertakan di consumerAcceptlist saat instance runtime Apigee dibuat.
    4. Cadangkan alamat IPv4 eksternal global untuk load balancer.
      gcloud compute addresses create ADDRESS_NAME \
        --ip-version=IPV4 --global --project=$PROJECT_ID

      Ganti ADDRESS_NAME dengan nama untuk resource alamat IP.

      Jalankan perintah ini untuk melihat alamat IP yang dicadangkan:

      gcloud compute addresses describe ADDRESS_NAME \
        --format="get(address)" --global --project=$PROJECT_ID
    5. Buat layanan backend untuk NEG.
      gcloud compute backend-services create BACKEND_SERVICE_NAME \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --protocol=HTTPS \
        --global --project=$PROJECT_ID
    6. Ganti BACKEND_SERVICE_NAME dengan nama layanan backend.

    7. Tambahkan layanan backend ke NEG.
      gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
        --network-endpoint-group=NEG_NAME \
        --network-endpoint-group-region=$REGION \
        --global --project=$PROJECT_ID

      Ganti kode berikut:

      • BACKEND_SERVICE_NAME: nama layanan backend.
      • NEG_NAME: nama grup endpoint jaringan.
      • REGION: region grup endpoint jaringan.
    8. Buat peta URL untuk load balancer.

      Peta URL harus merujuk ke layanan backend default. Tetapkan layanan backend yang Anda baru saja dibuat sebagai {i>default<i}.

      gcloud compute url-maps create URL_MAP_NAME \
        --default-service=DEFAULT_BACKEND_SERVICE_NAME \
        --global --project=$PROJECT_ID

      Ganti kode berikut:

      • URL_MAP_NAME: nama untuk peta URL.
      • DEFAULT_BACKEND_SERVICE_NAME: nama layanan backend default load balancer. Setelan default digunakan saat tidak ada aturan host yang cocok dengan nama host yang diminta.
    9. Buat proxy HTTPS target.

      Anda harus memiliki resource sertifikat SSL untuk digunakan di Proxy target HTTPS. Anda dapat membuat resource sertifikat SSL menggunakan sertifikat Sertifikat SSL atau sertifikat SSL yang dikelola sendiri. Menggunakan sertifikat yang dikelola Google direkomendasikan karena Google Cloud mendapatkan, mengelola, dan memperpanjang sertifikat ini secara otomatis.

      Untuk membuat sertifikat yang dikelola Google, Anda harus memiliki domain.

      Gunakan perintah ini untuk membuat resource sertifikat SSL yang dikelola Google:

      gcloud compute ssl-certificates create CERTIFICATE \
        --domains DOMAIN --project=$PROJECT_ID

      Ganti kode berikut:

      • CERTIFICATE: nama untuk sertifikat.
      • DOMAIN: nama domain load balancer Anda.

      Gunakan perintah ini untuk membuat resource sertifikat SSL yang dikelola sendiri. Untuk membuat sertifikat SSL yang dikelola sendiri, Anda memerlukan file kunci pribadi lokal dan sertifikat lokal . Jika Anda perlu membuat file tersebut, lihat langkah 1 cara menggunakan sertifikat SSL yang dikelola sendiri.

      gcloud compute ssl-certificates create CERTIFICATE \
        --certificate LB_CERT \
        --private-key LB_PRIVATE_KEY --project=$PROJECT_ID

      Ganti kode berikut:

      • CERTIFICATE: nama untuk sertifikat.
      • LB_CERT: jalur ke file sertifikat berformat PEM untuk sertifikat yang dikelola sendiri.
      • LB_PRIVATE_KEY: jalur ke file kunci pribadi berformat PEM untuk sertifikat yang dikelola sendiri.

      Gunakan resource sertifikat SSL untuk membuat proxy HTTPS target.

      gcloud compute target-https-proxies create PROXY_NAME \
        --url-map=URL_MAP_NAME \
        --ssl-certificates=CERTIFICATE --project=$PROJECT_ID

      Ganti kode berikut:

      • PROXY_NAME: nama untuk proxy HTTPS target.
      • URL_MAP_NAME: nama peta URL.
      • CERTIFICATE: nama resource sertifikat.
    10. Buat aturan penerusan.
      gcloud compute forwarding-rules create FWD_RULE \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --network-tier=PREMIUM \
        --address=ADDRESS_NAME \
        --target-https-proxy=PROXY_NAME \
        --ports=443 \
        --global --project=$PROJECT_ID

      Ganti kode berikut:

      • FWD_RULE: nama untuk aturan penerusan.
      • ADDRESS_NAME: resource alamat IP yang Anda reservasi untuk digunakan bagi aturan penerusan.
      • PROXY_NAME: nama proxy HTTPS target.

    Penyediaan Apigee selesai. Buka Deploy a sample proxy.

    LB eksternal regional

    Mengonfigurasi load balancer HTTP(S) eksternal regional. Lihat juga Ringkasan load balancer HTTP(S) eksternal.

    1. Pastikan Anda telah menetapkan variabel di Menentukan variabel lingkungan.
    2. Buat subnet khusus proxy:
      gcloud compute networks subnets create SUBNET_NAME \
        --purpose=REGIONAL_MANAGED_PROXY --role=ACTIVE \
        --region=$RUNTIME_LOCATION --network=NETWORK_NAME \
        --range=100.0.0.0/24 --project=$PROJECT_ID
      • Ganti SUBNET_NAME dengan nama subnet.
      • (Opsional) Ganti Nama NETWORK_NAME jaringan tempat subnet dibuat. Jika Anda menghapus parameter ini, jaringan project default akan digunakan.
    3. Dapatkan lampiran layanan dari instance yang Anda buat sebelumnya:
      curl -i -X GET -H "$AUTH" \
              "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/instances"

      Dalam contoh output berikut, nilai serviceAttachment ditunjukkan dalam huruf tebal:

      {
              "instances": [
                {
                  "name": "us-west1",
                  "location": "us-west1",
                  "host": "10.82.192.2",
                  "port": "443",
                  "createdAt": "1645731488019",
                  "lastModifiedAt": "1646504754219",
                  "diskEncryptionKeyName": "projects/my-project/locations/us-west1/keyRings/us-west1/cryptoKeys/dek",
                  "state": "ACTIVE",
                  "peeringCidrRange": "SLASH_22",
                  "runtimeVersion": "1-7-0-20220228-190814",
                  "ipRange": "10.82.192.0/22,10.82.196.0/28",
                  "consumerAcceptList": [
                    "875609189304"
                  ],
                  "serviceAttachment": "projects/bfac7497a40c32a12p-tp/regions/us-west1/serviceAttachments/apigee-us-west1-crw7"
                }
              ]
            }
    4. Buat grup endpoint jaringan.
      gcloud compute network-endpoint-groups create NEG_NAME \
              --network-endpoint-type=private-service-connect \
              --psc-target-service=TARGET_SERVICE \
              --region=$RUNTIME_LOCATION --project=$PROJECT_ID

      Ganti kode berikut:

      • NEG_NAME: nama grup endpoint jaringan.
      • TARGET_SERVICE: nama lampiran layanan yang ingin Anda hubungkan. Contoh: projects/bfac7497a40c32a12p-tp/regions/us-west1/serviceAttachments/apigee-us-west1-crw7
    5. Buat layanan backend untuk NEG.
      gcloud compute backend-services create BACKEND_SERVICE_NAME \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --protocol=HTTPS \
        --region=$RUNTIME_LOCATION  \
        --project=$PROJECT_ID
    6. Ganti BACKEND_SERVICE_NAME dengan nama layanan backend.

    7. Tambahkan layanan backend ke NEG.
      gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
        --network-endpoint-group=NEG_NAME \
        --region=$RUNTIME_LOCATION  \
        --project=$PROJECT_ID

      Ganti kode berikut:

      • BACKEND_SERVICE_NAME: nama layanan backend.
      • NEG_NAME: nama grup endpoint jaringan.
    8. Buat peta URL untuk load balancer.

      Peta URL harus merujuk ke layanan backend default. Tetapkan layanan backend yang Anda baru saja dibuat sebagai {i>default<i}.

      gcloud compute url-maps create URL_MAP_NAME \
        --default-service=DEFAULT_BACKEND_SERVICE_NAME \
        --region=$RUNTIME_LOCATION  \
        --project=$PROJECT_ID

      Ganti kode berikut:

      • URL_MAP_NAME: nama untuk peta URL.
      • DEFAULT_BACKEND_SERVICE_NAME: nama layanan backend default load balancer. Setelan default digunakan saat tidak ada aturan host yang cocok dengan nama host yang diminta.
    9. Buat proxy HTTPS target.

      Anda harus memiliki resource sertifikat SSL untuk digunakan di Proxy target HTTPS.

      Gunakan perintah ini untuk membuat resource sertifikat SSL yang dikelola sendiri. Untuk membuat sertifikat SSL yang dikelola sendiri, Anda memerlukan file kunci pribadi lokal dan sertifikat lokal . Jika Anda perlu membuat file tersebut, lihat langkah 1 cara menggunakan sertifikat SSL yang dikelola sendiri.

      gcloud compute ssl-certificates create CERTIFICATE \
        --certificate LB_CERT \
        --private-key LB_PRIVATE_KEY --region=$RUNTIME_LOCATION \
        --project=$PROJECT_ID

      Ganti kode berikut:

      • CERTIFICATE: nama untuk sertifikat.
      • LB_CERT: jalur ke file sertifikat berformat PEM untuk sertifikat yang dikelola sendiri.
      • LB_PRIVATE_KEY: jalur ke file kunci pribadi berformat PEM untuk sertifikat yang dikelola sendiri.
    10. Tambahkan domain ke grup lingkungan Apigee yang dibuat untuk Anda. Nama grup lingkungan adalah eval-group:
      curl "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/envgroups/eval-group" \
            -H "$AUTH" \
            -X PATCH \
            -H "Content-Type:application/json" \
            -d '{
              "hostnames":["'"DOMAIN"'"]
            }'
    11. Periksa status operasi grup lingkungan:
      curl -H "$AUTH" \
            "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/envgroups/eval-group/attachments"
          
    12. Gunakan resource sertifikat SSL untuk membuat proxy HTTPS target.

      gcloud compute target-https-proxies create PROXY_NAME \
        --url-map=URL_MAP_NAME --region=$RUNTIME_LOCATION \
        --ssl-certificates=CERTIFICATE --project=$PROJECT_ID

      Ganti kode berikut:

      • PROXY_NAME: nama untuk proxy HTTPS target.
      • URL_MAP_NAME: nama peta URL.
      • CERTIFICATE: nama resource sertifikat.
    13. Mencadangkan alamat eksternal regional untuk load balancer. Perhatikan bahwa tingkat jaringan harus ditetapkan ke STANDARD.
      gcloud compute addresses create ADDRESS_NAME \
            --region=$RUNTIME_LOCATION --network-tier=STANDARD \
            --project=$PROJECT_ID

      Ganti ADDRESS_NAME dengan nama untuk resource alamat IP.

      Jalankan perintah ini untuk melihat alamat IP yang dicadangkan:

      gcloud compute addresses describe ADDRESS_NAME \
            --format="get(address)" --region=$RUNTIME_LOCATION \
            --project=$PROJECT_ID
    14. Membuat aturan penerusan.
      gcloud compute forwarding-rules create FWD_RULE \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --network-tier=STANDARD \
        --address=ADDRESS_NAME \
        --target-https-proxy=PROXY_NAME \
        --ports=443  --region=$RUNTIME_LOCATION \
        --target-https-proxy-region=$RUNTIME_LOCATION --project=$PROJECT_ID

      Ganti kode berikut:

      • FWD_RULE: nama untuk aturan penerusan.
      • ADDRESS_NAME: resource alamat IP yang Anda reservasi untuk digunakan bagi aturan penerusan.
      • PROXY_NAME: nama proxy HTTPS target.

    Penyediaan Apigee selesai. Buka Memanggil proxy API contoh.

    Langkah 5: Panggil contoh proxy API

    Proxy API bernama hello-world dibuat dan di-deploy untuk Anda selama penyediaan. Pada langkah ini, Anda akan menguji organisasi eval tertentu dengan memanggil {i>proxy<i}.

    Memanggil proxy API dengan perutean internal

    Jika Anda memilih perutean internal dengan opsi endpoint layanan di Langkah 5, ikuti langkah-langkah di Memanggil proxy API dengan akses khusus internal.

    Memanggil proxy API dengan perutean eksternal

    Jika Anda memilih opsi pemilihan rute eksternal di Langkah 5, ikuti langkah-langkah di bagian ini.

    1. Siapkan entri DNS untuk domain Anda. Berikut adalah dua cara untuk menyelesaikan tugas ini:
      • Di registrar, buat data A yang mengarah ke domain Anda. Misalnya, jika domainnya adalah sales.example.com dan IP adalah 10.23.0.2, lalu arahkan merekam sales.example.com ke alamat 10.23.0.2.

        Jalankan perintah ini untuk melihat alamat IP yang dicadangkan:

        gcloud compute addresses describe ADDRESS_NAME \
            --format="get(address)" --region=$RUNTIME_LOCATION \
            --project=$PROJECT_ID
      • Gunakan Google Cloud DNS untuk memetakan URL ke alamat IP.
    2. Pastikan proxy hello-world telah di-deploy:
      curl -i -H "$AUTH" \
        "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/environments/eval/apis/hello-world/revisions/1/deployments"
    3. Panggil proxy API:

      Kirim permintaan ke proxy API dari mesin yang mendukung jaringan dengan mengeksekusi perintah perintah berikut:

      curl -i -H "Host: DOMAIN" \
        https://DOMAIN/hello-world

      Dengan DOMAIN adalah domain yang Anda masukkan ke dalam sertifikat dan ditambahkan ke grup lingkungan, seperti yang dibahas di Langkah 5: Konfigurasi perutean. Jika perlu, Anda dapat menggunakan API untuk mendapatkan nilai DOMAIN dari grup lingkungan:

      curl -i -H "$AUTH" \
        "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/envgroups"

      Setelah berhasil, proxy API contoh akan menampilkan respons:

      Hello, Guest!

      Tips pemecahan masalah:

      Jika Anda mendapatkan error handshake, periksa status sertifikat SSL. Untuk mengetahui informasi tentang memecahkan masalah sertifikat yang dikelola sendiri dan dikelola Google, lihat Memecahkan masalah sertifikat SSL.

      Pastikan domain yang terdaftar memiliki Kumpulan data yang mengarah ke alamat IP dari alamat IPv4 eksternal global yang dibuat di Langkah 5. Jalankan perintah ini untuk melihat alamat IP yang dicadangkan:

      gcloud compute addresses describe ADDRESS_NAME \
                    --format="get(address)" --region=$RUNTIME_LOCATION \
                    --project=$PROJECT_ID

      Jika Anda tidak dapat menyelesaikan konfigurasi domain, coba panggil proxy dengan perintah ini:

      curl  -H Host:DOMAIN --resolve \
        DOMAIN:443:EXTERNAL_IP_ADDRESS  \
        https://DOMAIN:443/hello-world -k

    Berikutnya: Untuk mempelajari lebih lanjut cara membangun dan men-deploy proxy API, lihat Bangun ringkasan proxy API pertama Anda.