In questa sezione viene descritto il sincronizzatore.
Panoramica del sincronizzatore
In Apigee hybrid, il compito principale del sincronizzatore consiste nel eseguire il polling e scaricare i contratti di runtime che vengono fornite dal piano di gestione. Le informazioni comunicate per contratto includono l'API proxy, prodotti API, cache e host virtuali.
Le istanze del sincronizzatore in esecuzione nel piano di runtime devono eseguire il polling della gestione eseguire il piano in modo regolare, scaricare i contratti e renderli disponibili per il runtime locale di Compute Engine.
Un sincronizzatore può supportare molti processori di messaggi distribuiti nello stesso pod.
Abilita l'accesso del sincronizzatore
Devi concedere all'account Synchronizer l'autorizzazione per scaricare gli elementi Apigee, ad esempio bundle di proxy e risorse dal piano di gestione. Devi chiamare un L'API Apigee per autorizzare il sincronizzatore a eseguire il pull degli artefatti dal piano di gestione nel piano di runtime.
- Assicurati di aver abilitato l'API Apigee come spiegato nei passaggi di configurazione di Google Cloud. Per maggiori dettagli, consulta il Passaggio 3: abilita le API.
- Individua la chiave dell'account di servizio Google Cloud abilitata alla scrittura (un file JSON) che hai scaricato nell'ambito della creazione degli account di servizio. L'account di servizio dispone dell'amministratore organizzazione Apigee ruolo ed è quello denominato "apigee-org-admin". Se non hai ancora creato questo account di servizio, devi farlo prima di continuare.
-
Imposta la variabile di ambiente
GOOGLE_APPLICATION_CREDENTIALS
sul percorso in cui si trova la chiave dell'account di servizio:export GOOGLE_APPLICATION_CREDENTIALS=your_sa_credentials_file.json
- Chiama l'API setSyncAuthorization per attivare le autorizzazioni richieste per 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"]}'
Dove:
your_org_name
: il nome dell'organizzazione ibrida.synchronizer-manager-service-account-name
: il nome di un account di servizio con il ruolo Apigee Sincronizzar Manager. Il nome ha la forma di . Ad esempio:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com
Esempio:
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"]}'
Per ulteriori informazioni su questa API, consulta l'API SyncAuthorization.
- Per verificare che l'account di servizio sia stato impostato, chiama l'API seguente per ottenere un elenco dei servizi
account:
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 ''
L'output è simile al seguente:
{ "identities":[ "serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }