Como instalar com o complemento do GKE
Nesta página, descrevemos como instalar o Config Connector em um cluster do Google Kubernetes Engine (GKE) usando o complemento Config Connector.
Para mais detalhes sobre cada opção de instalação, com vantagens e desvantagens, consulte Escolher um tipo de instalação.
Antes de começar
Antes de começar, verifique se você realizou as tarefas a seguir:
- Ativar a API Google Kubernetes Engine. Ativar a API Google Kubernetes Engine
- Se você quiser usar a Google Cloud CLI para essa tarefa,
instale e, em seguida,
inicialize a
CLI gcloud. Se você instalou a CLI gcloud anteriormente, instale a versão mais recente executando o comando
gcloud components update. Talvez as versões anteriores da CLI gcloud não sejam compatíveis com a execução dos comandos neste documento.
Selecione ou crie um Google Cloud projeto para instalar o Config Connector.
Se você já instalou o Config Connector manualmente, desinstale-o antes de instalar o complemento Config Connector:
Como instalar o complemento Config Connector
Use o complemento Config Connector criando um novo cluster do GKE ou ativando-o em um cluster existente. Depois de instalar o complemento Config Connector, configure a instalação com suas Contas de serviço do Google e seus namespaces.
Requisitos
Os requisitos do complemento Config Connector são os seguintes:
Use uma versão do GKE de:
- 1.15.11-gke.5 e superior
- 1.16.8-gke.8 e superior
- 1.17.4-gke.5 e superior
É preciso ativar um pool de Identidade da carga de trabalho e Kubernetes Engine Monitoring nos clusters em que o Config Connector é ativado.
Como configurar um cluster do GKE
Use o complemento Config Connector em um cluster novo ou atual.
Como criar um novo cluster com o complemento Config Connector ativado
É possível criar um cluster do GKE usando a CLI gcloud ou o Google Cloud console.
gcloud
Para criar um cluster com a Google Cloud CLI, execute o seguinte comando:
gcloud container clusters create CLUSTER_NAME \
--release-channel CHANNEL \
--addons ConfigConnector \
--workload-pool=PROJECT_ID.svc.id.goog \
--logging=SYSTEM \
--monitoring=SYSTEM
Substitua:
- CLUSTER_NAME pelo nome do cluster do GKE.
- CHANNEL com um
canal de lançamento do GKE,
rapideregularsão compatíveis. - PROJECT_ID pela ID do Google Cloud projeto.
Google Cloud Console do
Para criar um cluster com o Google Cloud console, siga estas etapas:
Acesse o menu do Google Kubernetes Engine no Google Cloud console.
Clique em Criar. A página Criar um cluster do Kubernetes será exibida.
Especifique o Nome do cluster.
Selecione uma Versão principal compatível.
Configure o restante do cluster como quiser.
No painel de navegação, em Cluster, clique em Segurança.
Marque a caixa de seleção Ativar identidade da carga de trabalho.
No painel de navegação à esquerda, em Cluster, clique em Recursos.
Marque a caixa de seleção Ativar Config Connector.
Clique em Criar.
Depois de criar o cluster, acesse Como criar uma identidade.
Como ativar o complemento Config Connector em um cluster existente
É possível ativar o complemento Config Connector em um cluster do GKE atual
com gcloud ou o Google Cloud console.
Pré-requisitos
A ativação do complemento Config Connector em um cluster atual tem os seguintes pré-requisitos:
- Você precisa de um cluster que atenda aos requisitos para o complemento Config Connector.
Para ativar a Federação de Identidade da Carga de Trabalho para GKE para um pool de nós, use a ferramenta de linha de comando gcloud:
gcloud container node-pools update NODE_POOL \
--workload-metadata=GKE_METADATA \
--cluster CLUSTER_NAME
Substitua:
- NODE_POOL pelo nome do pool de nós;
- CLUSTER_NAME pelo nome do cluster.
Como ativar o complemento Config Connector.
É possível ativar o complemento Config Connector em um cluster do GKE atual com a Google Cloud CLI ou o Google Cloud console.
gcloud
Para ativar o complemento Config Connector em um cluster do GKE existente, use a Google Cloud CLI:
gcloud container clusters update CLUSTER_NAME \
--update-addons ConfigConnector=ENABLED
Substitua CLUSTER_NAME pelo nome do cluster do GKE.
Google Cloud console
Acesse o menu do Google Kubernetes Engine no Google Cloud console.
Selecione o cluster em que você quer instalar o Config Connector. A página Detalhes do cluster é exibida.
Na seção Recursos, localize a linha do Config Connector e clique em Editar.
Marque a caixa de seleção Ativar o Config Connector e clique em Salvar alterações para atualizar o cluster.
Criar uma identidade
O Config Connector cria e gerencia Google Cloud recursos usando a autenticação com uma conta de serviço do Identity and Access Management (IAM) e a Federação de Identidade da Carga de Trabalho para GKE para vincular contas de serviço do IAM a contas de serviço do Kubernetes
Para criar a identidade, conclua as etapas a seguir:
Crie uma conta de serviço do IAM. Se você quiser usar uma conta de serviço atual, use essa conta e pule esta etapa:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAMESubstitua SERVICE_ACCOUNT_NAME por um nome para sua conta de serviço.
Para saber mais sobre como criar contas de serviço, consulte Como criar e gerenciar contas de serviço.
Conceda à Conta de serviço do IAM permissões elevadas no projeto:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/editor"Substitua PROJECT_ID pela ID do seu projeto.
Crie uma vinculação de política do IAM entre a conta de serviço do IAM e a conta de serviço predefinida do Kubernetes que o Config Connector executa:
gcloud iam service-accounts add-iam-policy-binding \ SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \ --member="serviceAccount:PROJECT_ID.svc.id.goog[cnrm-system/cnrm-controller-manager]" \ --role="roles/iam.workloadIdentityUser"
Como configurar o Config Connector
Para concluir a instalação, crie um arquivo de configuração para
o ConfigConnector
CustomResource,
e, em seguida, aplique-o usando o comando kubectl apply. O operador do Config Connector instala
Google Cloud as CRDs de recursos e os componentes do Config Connector no cluster.
Para configurar o operador como modo de cluster, siga estas etapas:
-
Copie o arquivo YAML a seguir em um arquivo chamado
configconnector.yaml: Substitua:# configconnector.yaml apiVersion: core.cnrm.cloud.google.com/v1beta1 kind: ConfigConnector metadata: # the name is restricted to ensure that there is only one # ConfigConnector resource installed in your cluster name: configconnector.core.cnrm.cloud.google.com spec: mode: cluster googleServiceAccount: "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" # Setting `stateIntoSpec` to `Absent` is recommended. It means setting `cnrm.cloud.google.com/state-into-spec` # annotation to `absent` for all Config Connector resources created in the cluster in the future. # It prevents Config Connector from populating unspecified fields into the spec. stateIntoSpec: Absent
SERVICE_ACCOUNT_NAMEpelo nome da conta de serviço;PROJECT_IDcom o ID do projeto.
-
Aplique a configuração ao cluster com
kubectl apply:kubectl apply -f configconnector.yaml
Como especificar o local para criar os recursos
O Config Connector pode organizar recursos por projeto, pasta ou organização, da mesma forma que você organizaria recursos com Google Cloud.
Antes de criar recursos com o Config Connector, você precisa configurar onde criar seus recursos. Para determinar onde criar o recurso, o Config Connector usa uma anotação na configuração do recurso ou em um namespace atual. Para mais informações, consulte Como organizando recursos.
Se você não tiver um namespace para essa finalidade, crie um comkubectl.
kubectl create namespace NAMESPACE
Substitua NAMESPACE pelo nome do namespace. Por exemplo: config-connector.
Selecione uma guia para escolher onde quer que o Config Connector crie recursos.
Projeto
Para criar recursos em determinado projeto, execute o seguinte comando:
kubectl annotate namespace \ NAMESPACE cnrm.cloud.google.com/project-id=PROJECT_ID
Substitua:
NAMESPACEpelo nome do namespace;PROJECT_IDpela ID do Google Cloud projeto.
Pasta
Para criar recursos em determinada pasta, execute o seguinte comando:
kubectl annotate namespace \ NAMESPACE cnrm.cloud.google.com/folder-id=FOLDER_ID
Substitua:
NAMESPACEpelo nome do namespace;FOLDER_IDpela ID da Google Cloud pasta.
Organização
Para criar recursos em determinada organização, execute o seguinte comando:
kubectl annotate namespace \ NAMESPACE cnrm.cloud.google.com/organization-id=ORGANIZATION_ID
Substitua:
NAMESPACEpelo nome do namespace;ORGANIZATION_IDpela ID da Google Cloud organização.
Quando você anota o namespace, o Config Connector cria recursos no projeto, na pasta ou na organização correspondente. Para saber mais sobre como o Config Connector usa namespaces do Kubernetes, consulte Namespaces e Google Cloud projetos do Kubernetes.
Como verificar a instalação
Todos os componentes do Config Connector são executados em um namespace chamado cnrm-system.
Para verificar se os pods estão prontos, execute o comando a seguir:
kubectl wait -n cnrm-system \
--for=condition=Ready pod --all
Se o Config Connector estiver instalado corretamente, o resultado será semelhante a este:
pod/cnrm-controller-manager-0 condition met
Como fazer upgrade do Config Connector
Os upgrades do complemento Config Connector do cluster são gerenciados por Google Cloud.
Os recursos no cluster são preservados sempre que um upgrade ocorre.
Leia sobre como Google Cloud o gerenciador de upgrades do complemento Config Connector funciona ou pule para como receber a versão mais recente do Config Connector.
Comoo Google Cloud gerenciador de upgrades do complemento Config Connector funciona
A versão do Config Connector que um cluster do GKE recebe depende inteiramente da versão secundária do GKE do cluster. Exemplo:
| Versão secundária do GKE | Versão do Config Connector |
|---|---|
| 1.20 | 1.69.0 |
| 1.21 | 1.69.0 |
| 1.22 | 1.71.0 |
| 1.23 | 1.82.0 |
| 1.24 | 1.89.0 |
À medida que as versões se qualificam, Google Cloud o gerenciador de upgrades do complemento Config Connector remapeia as versões secundárias mais recentes do GKE para uma versão recém-lançada do Config Connector. Isso é feito para todas as versões secundárias do GKE que são novas o suficiente para não estarem disponíveis nos canais de lançamento normal ou estável.
Como a versão do Config Connector que um cluster recebe depende da versão secundária do GKE do cluster, há dois casos em que o complemento Config Connector de um cluster é atualizado automaticamente por Google Cloud:
O cluster é atualizado para uma nova versão secundária do GKE que é mapeada para uma versão mais recente do Config Connector.
O cluster está em uma versão secundária do GKE que é nova o suficiente para não estar disponível nos canais de lançamento normal ou estável, e Google Cloud remapeia essa versão secundária do GKE para uma nova versão do Config Connector.
Quandoo gerenciador de upgrades do complemento Config Connector remapeia uma versão secundária do GKE e atualiza os clusters atuais para uma nova versão do Config Connector, dizemos que ele está "lançando uma nova versão do Config Connector" para essa versão secundária do GKE. Google Cloud
Google Cloud não lança novas versões do Config Connector para versões secundárias do GKE que são antigas o suficiente para estarem disponíveis nas versões dos canais de lançamento normal ou estável por motivos de estabilidade, exceto em situações de emergência em que um problema generalizado foi detectado.
Como receber a versão mais recente do Config Connector
A versão do Config Connector instalada pelo complemento Config Connector geralmente está atrasada em até 12 meses ou mais. Se você precisar da versão mais recente do Config Connector versão, recomendamos mudar para o Config Controller ou instalar manualmente o Config Connector e realizar os upgrades por conta própria. As instruções de migração para cada opção são:
Para mudar para o Config Controller, siga as instruções de migração do Config Controller para migrar os recursos atuais do Config Connector para uma instância do Config Controller.
Para instalar o Config Connector manualmente, siga as instruções para mudar do complemento Config Connector para a instalação manual.
Como desinstalar o Config Connector
Para desinstalar o Config Connector, siga estas etapas:
Use
kubectl deletepara remover as CRDs do Config Connector e os componentes do controlador:kubectl delete ConfigConnector configconnector.core.cnrm.cloud.google.com --wait=trueDesative o complemento Config Connector no cluster usando a CLI gcloud ou o Google Cloud console:
gcloud
Para desativar o complemento Config Connector com
gcloud, execute o seguinte comando:gcloud container clusters update CLUSTER_NAME --update-addons ConfigConnector=DISABLEDSubstitua CLUSTER_NAME pelo nome do cluster que tem o complemento Config Connector instalado.
Console do Cloud
Para desativar o complemento Config Connector no Google Cloud console, execute as etapas a seguir.
Acesse a página "Clusters" do Google Kubernetes Engine no Google Cloud console e selecione o cluster que você quer atualizar.
Clique em Edit. A tela Editar clusters é exibida.
Clique em Complementos.
Selecione Config Connector e escolha Desativado.
Clique em Salvar para atualizar seu cluster.
A seguir
- Introdução ao Config Connector.
- Saiba como resolver problemas do Config Connector.