Mengonfigurasi Sinkronisasi

Bagian ini menjelaskan tentang Penyinkron.

Ringkasan sinkronisasi

Pada Apigee Hybrid, tugas utama Synchronizer adalah melakukan polling dan mendownload kontrak runtime yang disediakan oleh bidang pengelolaan. Informasi yang disampaikan melalui kontrak mencakup proxy API, produk API, cache, dan host virtual.

Instance sinkronisasi yang berjalan di bidang runtime diharapkan melakukan polling pada bidang pengelolaan secara berkala, mendownload kontrak, dan menyediakannya untuk instance runtime lokal.

Satu Sinkronisasi dapat mendukung banyak Pemroses Pesan yang di-deploy di pod yang sama.

Aktifkan akses Penyinkron

Anda harus memberikan izin kepada Synchronizer untuk mengambil artefak Apigee, seperti paket proxy dan resource dari bidang pengelolaan. Anda harus memanggil Apigee API untuk mengizinkan Synchronizer menarik artefak ke bawah dari bidang pengelolaan ke bidang runtime.

  1. Pastikan Anda telah mengaktifkan Apigee API seperti yang dijelaskan dalam langkah-langkah penyiapan GCP. Untuk mengetahui detailnya, lihat Langkah 3: Aktifkan API.
  2. Temukan kunci akun layanan GCP yang mendukung penulisan (file JSON) yang Anda download sebagai bagian dari Buat akun layanan. Akun layanan memiliki peran Apigee Org Admin dan akun bernama "apigee-org-admin". Jika Anda belum pernah membuat akun layanan ini, Anda harus membuatnya sebelum melanjutkan.
  3. Tetapkan variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS ke jalur tempat kunci akun layanan berada:

    export GOOGLE_APPLICATION_CREDENTIALS=your_sa_credentials_file.json
  4. Panggil setSyncAuthorization API guna mengaktifkan izin yang diperlukan untuk Synchronizer:
    curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/your_org_name:setSyncAuthorization" \
       -d '{"identities":["serviceAccount:synchronizer-manager-service-account-name"]}'
    

    Dengan keterangan:

    • your_org_name: Nama organisasi campuran.
    • synchronizer-manager-service-account-name: Nama akun layanan dengan peran Apigee Synchronizer Manager. Nama tersebut akan dibuat seperti alamat email. Contoh: my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com

    Contoh:

    curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/my_org:setSyncAuthorization" \
       -d '{"identities":["serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com"]}'
    

    Untuk informasi selengkapnya tentang API ini, lihat SyncAuthorization API.

  5. Untuk memverifikasi bahwa akun layanan sudah ditetapkan, panggil API berikut untuk mendapatkan daftar akun layanan:
    curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/your_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="
    }