Bagian ini menjelaskan Synchronizer.
Ringkasan sinkronisasi
Di Apigee hybrid, tugas utama Synchronizer adalah melakukan polling dan mendownload kontrak runtime yang disediakan oleh platform pengelolaan. Informasi yang dikomunikasikan melalui 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 platform runtime diharapkan melakukan polling pada platform manajemen secara berkala, mendownload kontrak, dan menyediakannya untuk instance runtime lokal.
Satu Synchronizer dapat mendukung banyak Message Processor yang di-deploy di pod yang sama.
Mengaktifkan akses Synchronizer
Anda harus memberikan izin Synchronizer untuk mengambil artefak Apigee, seperti paket proxy dan resource dari platform pengelolaan. Anda harus memanggil Apigee API untuk memberi otorisasi Synchronizer guna menarik artefak dari platform pengelolaan ke platform runtime.
- Pastikan Anda telah mengaktifkan Apigee API seperti yang dijelaskan dalam langkah-langkah penyiapan Google Cloud. Untuk mengetahui detailnya, lihat Mengaktifkan API.
- Temukan kunci akun layanan Google Cloud yang mengaktifkan operasi tulis (file JSON) yang Anda download sebagai bagian dari Membuat akun layanan dan kredensial. Akun layanan memiliki peran Apigee Org Admin dan bernama "apigee-org-admin". Jika sebelumnya Anda belum membuat akun layanan ini, Anda harus melakukannya sebelum melanjutkan.
-
Tetapkan variabel lingkungan
GOOGLE_APPLICATION_CREDENTIALS
ke jalur tempat kunci akun layanan berada:export GOOGLE_APPLICATION_CREDENTIALS=your_sa_credentials_file.json
- Panggil API setSyncAuthorization untuk 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 dibuat seperti alamat email. Misalnya: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 mengetahui informasi selengkapnya tentang API ini, lihat setSyncAuthorization API.
- Untuk memverifikasi bahwa akun layanan telah 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=" }