Mengonfigurasi Synchronizer

Bagian ini menjelaskan Sinkronisasi.

Ringkasan sinkronisasi

Di Apigee hybrid, tugas utama Synchronizer adalah melakukan polling dan mendownload kontrak runtime yang disediakan oleh bidang pengelolaan. Informasi yang dikomunikasikan oleh kontrak mencakup proxy API, produk API, cache, dan host virtual. Secara default, Synchronizer menyimpan data konfigurasi lingkungan di database Cassandra.

Instance sinkronisasi yang berjalan di runtime-plane diharapkan melakukan polling pada management plane secara rutin, mendownload kontrak, dan menyediakannya untuk instance runtime lokal.

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

Mengaktifkan akses Synchronizer

Anda harus memberikan izin Synchronizer untuk menarik artefak Apigee, seperti paket proxy dan resource dari bidang pengelolaan. Anda harus memanggil Apigee API untuk memberi otorisasi pada Synchronizer agar menarik artefak dari bidang pengelolaan ke bidang runtime.

  1. Pastikan Anda telah mengaktifkan Apigee API seperti yang dijelaskan dalam langkah-langkah penyiapan Google Cloud. Untuk mengetahui detailnya, lihat Mengaktifkan API.
  2. Temukan kunci akun layanan Google Cloud yang memiliki akses tulis (file JSON) yang Anda download sebagai bagian dari Membuat akun layanan dan kredensial. Akun layanan memiliki peran Apigee Org Admin dan merupakan akun yang bernama "apigee-org-admin". Jika Anda belum pernah membuat akun layanan ini, Anda harus melakukannya sebelum melanjutkan.
  3. Gunakan kunci akun layanan Admin Org Apigee untuk membuat token akses OAuth 2.0. Token ini diperlukan untuk mengautentikasi Apigee API.

    gcloud

    Gunakan gcloud untuk mendapatkan token akses OAuth 2.0, dengan meneruskan file JSON kredensial akun layanan yang Anda download menggunakan variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS:

    export GOOGLE_APPLICATION_CREDENTIALS=your_sa_credentials_file.json
    gcloud auth application-default print-access-token

    Token OAuth2.0 ditampilkan.

    Untuk mengetahui informasi selengkapnya, lihat gcloud beta auth application-default print-access-token.

  4. Salin token OAuth 2.0 yang ditampilkan dan simpan di variabel, seperti TOKEN. Contoh:
    export TOKEN=ya29....Ts13inj3LrqMJlztwygtM
  5. Panggil setSyncAuthorization untuk mengaktifkan izin yang diperlukan untuk Synchronizer:
    curl -X POST -H "Authorization: Bearer $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:

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

    Contoh:

    curl -X POST -H "Authorization: Bearer $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 mengetahui informasi selengkapnya tentang API ini, lihat setSyncAuthorization API.

  6. Untuk memverifikasi bahwa akun layanan telah disetel, panggil API berikut untuk mendapatkan daftar akun layanan:
    curl -X POST -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/your_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="
    }