Langkah 7: Instal runtime hybrid

Aktifkan akses sinkronisasi

Untuk mengaktifkan akses sinkronisasi:

  1. Membuat akun layanan Google Cloud dan menambahkan peran Apigee Organization Admin IP eksternal mana pun yang ditetapkan pada instance tersebut. Akun layanan ini akan digunakan untuk mengautentikasi panggilan API yang akan Anda lakukan di langkah selanjutnya. Cara mudah untuk membuat akun layanan adalah melalui GCP Console. Untuk petunjuk, lihat Membuat dan mengelola akun layanan dalam dokumentasi GCP.

    Misalnya, perintah gcloud berikut akan membuat akun layanan dan tetapkan Admin Organisasi Apigee:

    1. Buat akun:
      gcloud iam service-accounts create apigee-org-admin \
          --display-name="apigee-org-admin"

      Dengan apigee-org-admin adalah nama akun layanan yang Anda buat. "apigee-org-admin" direkomendasikan untuk tutorial ini.

    2. Tetapkan peran Apigee Org Admin ke akun layanan:
      gcloud projects add-iam-policy-binding $PROJECT_ID \
          --member="serviceAccount:apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com" \
          --role="roles/apigee.admin"

      Dengan keterangan:

      • $PROJECT_ID adalah nama project Google Cloud yang Anda buat di Langkah 2: Buat project Google Cloud.
      • apigee-org-admin adalah nama akun layanan yang baru saja Anda buat.
      • roles/apigee.admin adalah peran Apigee Org Admin.
  2. Download kunci akun layanan ke sistem Anda. Gunakan perintah berikut untuk mendownload kunci ke direktori service-accounts/ Anda. Untuk informasi lebih lanjut, lihat petunjuk di Membuat kunci akun layanan dalam dokumentasi GCP.
    1. Pastikan Anda berada di direktori /hybrid-base-directory/hybrid-files/.
    2. Download kunci:
      gcloud iam service-accounts keys create ./service-accounts/$PROJECT_ID-apigee-org-admin.json \
        --iam-account apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com

      Output-nya akan terlihat seperti:

      created key [a0b1c2d3e4f5a0b1c2d3e4f5a0b1c2d3e4f5a0b1] of type [json] as [./service-accounts/hybrid-
      example-apigee-org-admin.json] for [apigee-org-admin@my-hybrid.iam.gserviceaccount.com]
      $ 
  3. Verifikasi jalur ke kunci akun layanan Admin Org Apigee dengan perintah berikut:
    ls service-accounts/*admin*

    Hasilnya akan terlihat seperti berikut:

    service-accounts/hybrid-example-apigee-org-admin.json
  4. Buat variabel lingkungan ORG_ADMIN_ACCOUNT dengan nama file kunci. Contoh:
    export ORG_ADMIN_ACCOUNT="hybrid-example-apigee-org-admin.json"
  5. Jalankan perintah berikut untuk mendapatkan token:
    export GOOGLE_APPLICATION_CREDENTIALS=./service-accounts/$ORG_ADMIN_ACCOUNT
    export TOKEN=$(gcloud auth application-default print-access-token)
  6. Dapatkan alamat email untuk akun layanan apigee-synchronizer Anda dengan perintah berikut:
    gcloud iam service-accounts list --filter "apigee-synchronizer"

    Jika cocok dengan pola apigee-synchronizer$ORG_NAME.iam.gserviceaccount.com, Anda Anda dapat menggunakan pola tersebut di langkah berikutnya.

  7. Memanggil setSyncAuthorization API untuk aktifkan izin yang diperlukan untuk Synchronizer menggunakan perintah berikut:
    curl -X POST -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/$ORG_NAME:setSyncAuthorization" \
       -d '{"identities":["'"serviceAccount:apigee-synchronizer@$ORG_NAME.iam.gserviceaccount.com"'"]}'
    

    Dengan keterangan:

    • $ORG_NAME: Nama organisasi campuran Anda.
    • apigee-synchronizer$ORG_NAME.iam.gserviceaccount.com: Email alamat akun layanan apigee-syncnronizer.
  8. Untuk memverifikasi bahwa akun layanan telah disetel, gunakan perintah berikut untuk memanggil API guna daftar akun layanan:
    curl -X POST -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/$ORG_NAME:getSyncAuthorization" \
       -d ''
    

    Outputnya terlihat mirip dengan yang berikut ini:

    {
       "identities":[
          "serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com"
       ],
       "etag":"BwWJgyS8I4w="
    }

Menerapkan konfigurasi ke cluster

Gunakan langkah-langkah berikut untuk menginstal Apigee Hybrid ke cluster Anda:

  1. Pastikan Anda berada di direktori hybrid-base-directory/hybrid-files.
  2. Pastikan kubectl ditetapkan ke konteks yang benar menggunakan perintah berikut. Konteks saat ini harus ditetapkan ke cluster tempat Anda men-deploy Apigee Hybrid.
    kubectl config get-contexts
  3. Khusus untuk platform AWS di GKE, EKS, dan GKE di infrastruktur lokal, Verifikasi bahwa variabel KUBECONFIG diatur menggunakan perintah berikut.
    echo $KUBECONFIG
  4. Lakukan inisialisasi dry run. Jalankan perintah init dengan tanda --dry-run. Dengan melakukan uji coba, Anda dapat memeriksa error sebelum perubahan dilakukan pada cluster.

    Dalam hybrid versi 1.4.4, sintaksis --dry-run flag ini bergantung pada versi kubectl yang Anda jalankan. Periksa versi kubectl dengan perintah berikut:

    kubectl version

    kubectl versi 1.17 dan yang lebih lama:

    $APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml --dry-run=true

    kubectl versi 1.18 dan yang lebih baru:

    $APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml --dry-run=client
  5. Jika tidak ada error, jalankan perintah init sebagai berikut:
    $APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml

    Perintah init menginstal deployment Apigee layanan Pengontrol Deployment Apigee dan Webhook Penerimaan Apigee.

  6. Untuk memeriksa status deployment, Anda dapat menggunakan perintah berikut:
    $APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml
    kubectl get pods -n apigee-system
    kubectl get pods -n istio-system

    Jika pod sudah siap, lanjutkan ke langkah berikutnya.

  7. Lakukan penginstalan dry run. Jalankan perintah apply dengan tanda --dry-run.

    kubectl versi 1.17 dan yang lebih lama:

    $APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --dry-run=true

    kubectl versi 1.18 dan yang lebih baru:

    $APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --dry-run=client
  8. Jika tidak ada kesalahan, Anda dapat menerapkan Komponen runtime khusus Apigee ke cluster dengan perintah berikut:
    $APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml
  9. Untuk memeriksa status deployment, jalankan perintah berikut:
    $APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml

    Ulangi langkah ini sampai semua pod siap. Pod mungkin memerlukan waktu beberapa menit untuk dimulai.