Ativar acesso do sincronizador
Para ativar o acesso do sincronizador:
- Crie uma conta de serviço do Google Cloud e adicione o papel Administrador da organização da Apigee
a ela. Essa conta de serviço será usada para autenticar uma chamada de API que você fará
em uma etapa posterior. Uma maneira fácil de criar a conta de serviço é por meio do console do GCP.
Para instruções, consulte
Como criar e gerenciar contas de serviço na documentação do GCP.
Por exemplo, os comandos
gclouda seguir criarão a conta de serviço e atribuirão o Administrador da organização do Apigee a ela:- Crie a conta:
gcloud iam service-accounts create apigee-org-admin \ --display-name="apigee-org-admin"Em que apigee-org-admin é o nome da conta de serviço que você está criando. "
apigee-org-admin" é recomendado para este tutorial. - Atribua o papel Administrador da organização da Apigee à conta de serviço:
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="serviceAccount:apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/apigee.admin"Em que:
- $PROJECT_ID é o nome do projeto do Google Cloud que você criou na Etapa 2: criar um projeto do Google Cloud.
- apigee-org-admin é o nome da conta de serviço que você acabou de criar.
- roles/apigee.admin é o papel de roles/apigee.admin.
- Crie a conta:
- Faça o download da chave de conta de serviço no seu sistema. Use o seguinte comando para fazer o download
da chave no seu diretório
service-accounts/. Para mais informações, consulte as instruções em Como criar chaves de conta de serviço na documentação do GCP.- Verifique se você está no diretório
/hybrid-base-directory/hybrid-files/. - Faça o download da chave:
gcloud iam service-accounts keys create ./service-accounts/$PROJECT_ID-apigee-org-admin.json \ --iam-account apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com
A resposta será semelhante a esta:
created key [a0b1c2d3e4f5a0b1c2d3e4f5a0b1c2d3e4f5a0b1] of type [json] as [./service-accounts/hybrid- example-apigee-org-admin.json] for [apigee-org-admin@my-hybrid.iam.gserviceaccount.com] $
- Verifique se você está no diretório
- Verifique o caminho para a chave da conta de serviço do administrador da organização da Apigee com o seguinte comando:
ls service-accounts/*admin*
O resultado será similar a este:
service-accounts/hybrid-example-apigee-org-admin.json
- Crie uma variável de ambiente ORG_ADMIN_ACCOUNT com o nome do arquivo da chave.
Por exemplo:
export ORG_ADMIN_ACCOUNT="hybrid-example-apigee-org-admin.json"
- Execute os seguintes comandos para receber um token:
export GOOGLE_APPLICATION_CREDENTIALS=./service-accounts/$ORG_ADMIN_ACCOUNTexport TOKEN=$(gcloud auth application-default print-access-token) - Encontre o endereço de e-mail da conta de serviço
apigee-synchronizercom o seguinte comando:gcloud iam service-accounts list --filter "apigee-synchronizer"
Se ele corresponder ao padrão
apigee-synchronizer$ORG_NAME.iam.gserviceaccount.com, use esse padrão na próxima etapa - Chame a API setSyncAuthorization para
ativar as permissões necessárias para o Sincronizador usando o seguinte comando:
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"'"]}'Em que:
$ORG_NAME: o nome da organização híbrida.apigee-synchronizer$ORG_NAME.iam.gserviceaccount.com: o endereço de e-mail da conta de serviço apigee-syncronizer.
- Para verificar se a conta de serviço foi definida, use o seguinte comando para chamar a API a fim de conseguir
uma lista de contas de serviço:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/$ORG_NAME:getSyncAuthorization" \ -d ''
A resposta será semelhante a:
{ "identities":[ "serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }
Aplicar a configuração ao cluster
Siga estas etapas para instalar a Apigee híbrida no cluster:
- Verifique se você está no diretório
hybrid-base-directory/hybrid-files. - Verifique se
kubectlestá definido para o contexto correto usando o seguinte comando. O contexto atual será definido como o cluster ao qual você está implantando a Apigee híbrida.kubectl config get-contexts
- Apenas para as plataformas AWS on GKE, EKS e GKE on prem, verifique
se o campo
KUBECONFIGé definida usando o seguinte comando.echo $KUBECONFIG
- Faça uma inicialização de simulação. Execute o comando
initcom a sinalização--dry-run. Uma simulação permite verificar se há erros antes de qualquer alteração no cluster.Na versão 1.4.4 da versão híbrida, a sintaxe da sinalização
--dry-rundepende da versão dekubectlque você está executando. Verifique a versão dekubectlcom o seguinte comando:kubectl version
kubectlversão 1.17 e anteriores:$APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml --dry-run=true
kubectlversão 1.18 e mais recentes:$APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml --dry-run=client
- Se não houver erros, execute o comando
initda seguinte maneira:$APIGEECTL_HOME/apigeectl init -f overrides/overrides.yaml
O comando
initinstala os serviços de implantação da Apigee,, o Apigee Deployment Controller e o Apigee Admission Webhook. - Para verificar o status da implantação, use os seguintes comandos:
$APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yamlkubectl get pods -n apigee-systemkubectl get pods -n istio-systemQuando os pods estiverem prontos, vá para a próxima etapa.
- Faça uma instalação de simulação. Execute o comando
applycom a sinalização--dry-run.kubectlversão 1.17 e anteriores:$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --dry-run=true
kubectlversão 1.18 e mais recentes:$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --dry-run=client
-
Se não houver erros, aplique os
componentes de ambiente de execução específicos da Apigee ao cluster com o seguinte comando:
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml
- Para verificar o status da implantação, execute o seguinte comando:
$APIGEECTL_HOME/apigeectl check-ready -f overrides/overrides.yaml
Repita essa etapa até que os pods estejam prontos. Os pods podem levar vários minutos para serem iniciados.