Applica la configurazione al cluster
Per installare Apigee hybrid nel tuo cluster:
- Assicurati di essere nella directory
hybrid-base-directory/hybrid-files
. - Esegui il comando
init
:$APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml
Il comando
init
installa i servizi di deployment Apigee Apigee Deployment Controller e Apigee Admission Webhook e esegue il deployment dei componenti non Apigee Istio e Cert Manager. - Per controllare lo stato del deployment, puoi utilizzare questi comandi:
$APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml
e
kubectl get pods -n apigee-system
e
kubectl get pods -n istio-system
Quando i pod sono pronti, vai al passaggio successivo.
- Fai una prova installare l'app. Esegui il comando
apply
con il flag--dry-run=true
. Eseguire un'asciugatura ti consente di verificare la presenza di eventuali errori prima di apportare modifiche al cluster.$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --dry-run=true
-
Se non ci sono errori, puoi applicare le opzioni specifiche
componenti runtime al cluster:
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml
- Per controllare lo stato del deployment:
$APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml
Ripeti questo passaggio finché i pod non sono tutti pronti. I pod potrebbero richiedere diversi minuti all'avvio.
Abilita l'accesso per sincronizzare
- Creare un account di servizio Google Cloud e aggiungere il ruolo Amministratore organizzazione Apigee che le sono assegnati. Questo account di servizio verrà utilizzato per autenticare una chiamata API che effettuerai in un passaggio successivo. Un modo semplice per creare un account di servizio è utilizzare la console di Google Cloud. Per istruzioni, vedi Creazione e gestione degli account di servizio nella documentazione di Google Cloud.
- Scarica la chiave dell'account di servizio nel sistema. Segui le istruzioni riportate in Creare chiavi account di servizio nella documentazione di Google Cloud.
- Sposta la chiave dell'account di servizio scaricata nella directory degli account di servizio:
/hybrid-base-directory
/hybrid-files/service-accounts
. - Esegui questi due comandi per ottenere un token:
export GOOGLE_APPLICATION_CREDENTIALS=org-admin-service-account-file
export TOKEN=$(gcloud auth application-default print-access-token)
Dove org-admin-service-account-file è il percorso del sistema verso il servizio chiave account che hai scaricato con il ruolo di Amministratore organizzazione Apigee.
- Chiama l'API setSyncAuthorization per
abilita le autorizzazioni richieste per synchronousr:
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-email"]}'
Dove:
your_org_name
: il nome della tua organizzazione ibrida.synchronizer-manager-service-account-email
: il nome di un account di servizio con il ruolo Apigee Sincronizzar Manager. Il nome ha lo stesso formato di un indirizzo email. Ad esempio:apigee-synchronizer@my-project.iam.gserviceaccount.com
Esempio:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/my_org:setSyncAuthorization" \ -d '{"identities":["serviceAccount:apigee-synchronizer@my-project.iam.gserviceaccount.com"]}'
- Per verificare che l'account di servizio sia stato impostato, chiama la seguente API per ottenere un elenco di account di servizio:
curl -X POST -H "Authorization: Bearer $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=" }
Aggiungi l'IP MART alla tua organizzazione
Devi aggiungere l'indirizzo IP dell'endpoint MART
alla tua organizzazione Apigee. Hai impostato questo valore in precedenza, quando viene impostato
il valore della proprietà mart.hostAlias
nelle sostituzioni
.
Il piano di gestione ha bisogno di questo indirizzo per poter comunicare con il runtime
in aereo sopra la MART.
Segui questi passaggi per aggiungere l'IP MART alla tua organizzazione:
- Recupera il valore impostato in precedenza nel file degli override per il valore
mart.hostAlias
proprietà. Affinché MART funzioni, l'alias host deve essere un nome di dominio completo. - Individua la chiave dell'account di servizio con il ruolo Amministratore organizzazione Apigee scaricato in precedenza, nella sezione Abilita l'accesso per la sincronizzazione.
- Esegui questi due comandi per ottenere un token:
export GOOGLE_APPLICATION_CREDENTIALS=org-admin-service-account-file
export TOKEN=$(gcloud auth application-default print-access-token)
dove org-admin-service-account-file è il percorso sul sistema della chiave dell'account di servizio che hai scaricato con il ruolo Amministratore dell'organizzazione Apigee.
- Chiama l'API di gestione seguente per aggiornare la tua organizzazione con l'endpoint MART:
curl -v -X PUT \ https://apigee.googleapis.com/v1/organizations/your_org_name \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ -d '{ "name" : "your_org_name", "properties" : { "property" : [ { "name" : "features.hybrid.enabled", "value" : "true" }, { "name" : "features.mart.server.endpoint", "value" : "https://HOST_ALIAS_DNS" } ] } }'
Ecco un esempio. Assicurati di aggiungere il prefisso "https://" al nome di dominio.
curl -v -X PUT \ https://apigee.googleapis.com/v1/organizations/my_organization \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ -d '{ "name" : "my_organization", "properties" : { "property" : [ { "name" : "features.hybrid.enabled", "value" : "true" }, { "name" : "features.mart.server.endpoint", "value" : "https://foo-mart.example.com" } ] } }'
Salva il file degli override
Assicurati di salvare il file degli override. Avrai bisogno di questo file per eseguire upgrade futuri, di patch o altre modifiche alla configurazione del cluster.