Abilita l'accesso per sincronizzare
Per abilitare l'accesso al sincronizzatore:
- Crea un account di servizio Google Cloud e aggiungi 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.
Ad esempio, i seguenti comandi
gcloud
creeranno l'account di servizio e assegnagli l'amministratore dell'organizzazione Apigee:- Crea l'account:
gcloud iam service-accounts create apigee-org-admin \ --display-name="apigee-org-admin"
Dove apigee-org-admin è il nome dell'account di servizio che stai creando. Per questo tutorial è consigliato "
apigee-org-admin
". - Assegna il ruolo Amministratore organizzazione Apigee all'account di servizio:
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="serviceAccount:apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/apigee.admin"
Dove:
- $PROJECT_ID è il nome del progetto Google Cloud che hai creato in Passaggio 2: crea un progetto Google Cloud.
- apigee-org-admin è il nome dell'account di servizio che hai appena creato.
- roles/apigee.admin è il ruolo Amministratore organizzazione Apigee.
- Crea l'account:
- Scarica la chiave dell'account di servizio nel sistema. Utilizza il seguente comando per eseguire il download
nella directory
service-accounts/
. Per saperne di più, consulta le istruzioni riportate in Creare chiavi dell'account di servizio nella documentazione di Google Cloud.- Assicurati di essere nella directory
/hybrid-base-directory/hybrid-files/
. - Scarica la chiave:
gcloud iam service-accounts keys create ./service-accounts/$PROJECT_ID-apigee-org-admin.json \ --iam-account apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com
L'output dovrebbe essere simile al seguente:
created key [a0b1c2d3e4f5a0b1c2d3e4f5a0b1c2d3e4f5a0b1] of type [json] as [./service-accounts/hybrid- example-apigee-org-admin.json] for [apigee-org-admin@my-hybrid.iam.gserviceaccount.com] $
- Assicurati di essere nella directory
- Verifica il percorso della chiave dell'account di servizio dell'amministratore dell'organizzazione Apigee con il seguente comando:
ls service-accounts/*admin*
Il risultato dovrebbe essere simile al seguente:
service-accounts/hybrid-example-apigee-org-admin.json
- Crea una variabile di ambiente ORG_ADMIN_ACCOUNT con il nome del file della chiave.
Ad esempio:
export ORG_ADMIN_ACCOUNT="hybrid-example-apigee-org-admin.json"
- Esegui questi comandi per ricevere un token:
export GOOGLE_APPLICATION_CREDENTIALS=./service-accounts/$ORG_ADMIN_ACCOUNT
export TOKEN=$(gcloud auth application-default print-access-token)
- Ottieni l'indirizzo email del tuo account di servizio
apigee-synchronizer
con il seguente comando:gcloud iam service-accounts list --filter "apigee-synchronizer"
Se corrisponde al pattern
apigee-synchronizer$ORG_NAME.iam.gserviceaccount.com
, puoi usare questo pattern nel passaggio successivo. - Chiama l'API setSyncAuthorization per
abilita le autorizzazioni richieste per synchronousr utilizzando il comando seguente:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/$ORG_NAME:setSyncAuthorization" \ -d '{"identities":["'"serviceAccount:apigee-synchronizer@$ORG_NAME.iam.gserviceaccount.com"'"]}'
Dove:
$ORG_NAME
: il nome della tua organizzazione ibrida.apigee-synchronizer$ORG_NAME.iam.gserviceaccount.com
: l'email. indirizzo dell'account di servizio apigee-syncnronizer.
- Per verificare che l'account di servizio sia stato impostato, utilizza il comando seguente per chiamare l'API e 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/$ORG_NAME:getSyncAuthorization" \ -d ''
L'output è simile al seguente:
{ "identities":[ "serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }
Applica la configurazione al cluster
Segui questi passaggi per installare Apigee hybrid nel tuo cluster:
- Assicurati di essere nella directory
hybrid-base-directory/hybrid-files
. - Verifica che
kubectl
sia impostato sul contesto corretto utilizzando il seguente comando. Il contesto attuale deve essere impostato sul cluster in cui stai eseguendo il deployment di Apigee hybrid.kubectl config get-contexts
- Solo per le piattaforme AWS su GKE, EKS e GKE on prem, verifica
che la variabile
KUBECONFIG
sia impostata utilizzando il seguente comando.echo $KUBECONFIG
- Esegui un'inizializzazione dry run. Esegui il comando
init
con Flag--dry-run
. Eseguire una prova consente di verificare la presenza di eventuali errori prima vengono apportate modifiche al cluster.Nella versione ibrida 1.4.4, la sintassi del flag
--dry-run
dipende dalla versione dikubectl
in esecuzione. Controlla la versione dikubectl
con il seguente comando:kubectl version
kubectl
versione 1.17 e precedenti:$APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml --dry-run=true
kubectl
1.18 e versioni successive:$APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml --dry-run=client
- Se non sono presenti errori, esegui il comando
init
come segue:$APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml
Il comando
init
installa il deployment Apigee di deployment Apigee Deployment Controller e Apigee Admission Webhook. - Per controllare lo stato del deployment, puoi utilizzare questi comandi:
$APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml
kubectl get pods -n apigee-system
kubectl get pods -n istio-system
Quando i pod sono pronti, vai al passaggio successivo.
- Esegui un'installazione dry run. Esegui il comando
apply
con Flag--dry-run
.kubectl
1.17 e versioni precedenti:$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --dry-run=true
kubectl
versione 1.18 e successive:$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --dry-run=client
-
Se non ci sono errori, puoi applicare i
componenti di runtime specifici di Apigee al cluster con il seguente comando:
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml
- Per controllare lo stato del deployment, esegui questo comando:
$APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml
Ripeti questo passaggio finché i pod non sono tutti pronti. L'avvio dei pod potrebbe richiedere diversi minuti.