Langkah 7: Instal runtime campuran

Mengaktifkan akses sinkronisasi

Untuk mengaktifkan akses penyinkron:

  1. Buat akun layanan Google Cloud dan tambahkan peran Apigee Organization Admin kepadanya. Akun layanan ini akan digunakan untuk mengautentikasi panggilan API yang akan Anda lakukan di langkah selanjutnya. Cara mudah untuk membuat akun layanan adalah melalui konsol GCP. Untuk mengetahui petunjuknya, lihat Membuat dan mengelola akun layanan dalam dokumentasi GCP.

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

    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:

      • $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 Admin Org Apigee.
  2. Download kunci akun layanan ke sistem Anda. Gunakan perintah berikut untuk mendownload kunci ke direktori service-accounts/ Anda. Untuk mengetahui informasi selengkapnya, 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

      Outputnya akan terlihat seperti ini:

      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 dapat menggunakan pola tersebut pada langkah berikutnya.

  7. Panggil setSyncAuthorization API untuk mengaktifkan 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:

    • $ORG_NAME: Nama organisasi hybrid Anda.
    • apigee-synchronizer$ORG_NAME.iam.gserviceaccount.com: Alamat email akun layanan apigee-syncnronizer.
  8. Untuk memverifikasi bahwa akun layanan telah disetel, gunakan perintah berikut untuk memanggil API guna mendapatkan 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 akan terlihat mirip seperti berikut:

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

Terapkan konfigurasi ke cluster

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

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

    Di versi hybrid 1.4.4, sintaksis flag --dry-run 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 layanan deployment Apigee Apigee Deployment Controller dan Apigee Admission Webhook.

  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

    Setelah pod siap, lanjutkan ke langkah berikutnya.

  7. Lakukan penginstalan uji coba. Jalankan perintah apply dengan flag --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 error, 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 hingga semua pod siap. Pod mungkin memerlukan waktu beberapa menit untuk dimulai.