Pode instalar o Config Sync como predefinição da frota para que todos os novos clusters adicionados à sua frota tenham automaticamente o Config Sync ativado com as definições pretendidas. Ao configurar predefinições ao nível da frota, ajuda a garantir que cada novo cluster do GKE no Google Cloud registado na frota herda uma configuração padrão do Config Sync, incluindo a versão e as ligações à sua fonte de verdade. Este processo simplifica o aprovisionamento de clusters e ajuda a manter uma base de gestão de configuração uniforme.
Esta página explica o seguinte:
- Como configurar estas predefinições ao nível da frota através da Google Cloud CLI, Google Cloud consola ou Terraform.
- Como aplicar as predefinições a clusters existentes.
- Como desativar a configuração predefinida da frota, se necessário.
Para ver informações gerais sobre as configurações predefinidas da frota, consulte o artigo Gerir funcionalidades ao nível da frota.
Antes de começar
Antes de instalar o Config Sync, prepare a sua fonte de verdade e um cluster adequado.
Conceda acesso do Config Sync à sua fonte de verdade
Para sincronizar a configuração de uma fonte de verdade com os seus clusters, o Config Sync requer acesso só de leitura ao seu repositório. Para autorizar o Config Sync a ler as suas configurações, conclua os seguintes passos:
Criar ou ter acesso a uma fonte de verdade que contenha os ficheiros de configuração que quer que o Config Sync sincronize com os seus clusters. Para mais informações, consulte os seguintes recursos:
- Adicione configurações a uma fonte de verdade: informações conceptuais sobre as configurações.
- Práticas recomendadas de GitOps: sugestões e práticas recomendadas gerais para organizar e gerir o seu repositório.
- Use um repositório não estruturado: recomendações para usar e organizar um repositório não estruturado.
Se a sua fonte de dados fidedigna for pública, não tem de fazer mais nada. A sincronização de configurações não requer autorizações adicionais.
Se a sua fonte de dados fidedignos for privada, conclua as instruções numa das seguintes páginas:
Reveja os requisitos do cluster
Antes de criar um cluster, reveja os requisitos do cluster.
Limitações
- A configuração do Helm como um tipo de origem não é suportada como predefinição da frota.
- A consola Google Cloud não suporta a ligação a uma fonte de verdade como predefinição. Em alternativa, tem de usar a funcionalidade Implementar pacotes depois de criar um cluster.
Configure predefinições ao nível da frota para um repositório Git
Para configurar as predefinições ao nível da frota para o Config Sync, conclua os seguintes passos:
gcloud
Crie um manifesto com o nome
apply-spec.yaml
com o seguinte conteúdo. Se já tiver criado um manifesto, não precisa de criar um novo.applySpecVersion: 1 spec: configSync: enabled: true sourceType: git sourceFormat: unstructured syncRepo: REPO syncRev: REVISION secretType: SECRET_TYPE # only required if gcpserviceaccount is the secretType # gcpServiceAccountEmail: EMAIL metricsGcpServiceAccountEmail: METRICS_EMAIL preventDrift: false
Substitua o seguinte:
REPO
: o URL do seu repositório Git, por exemplo,https://github.com/GoogleCloudPlatform/anthos-config-management-samples
. Use o formato HTTPS para o URL ou o formato SSH sessh
for o sourceType.REVISION
: a revisão de Git (etiqueta ou hash) ou o nome do ramo a partir do qual sincronizar. Quando usar um hash, tem de ser um hash completo e não uma forma abreviada.SECRET_TYPE
: o método de autenticação usado para estabelecer ligação ao seu repositório Git. Para repositórios públicos, usenone
. Para repositórios privados, use uma das seguintes opções:ssh
: usar um par de chaves SSH.cookiefile
: use umcookiefile
.token
: use um token.gcpserviceaccount
: use uma conta de serviço Google se a Workload Identity Federation para o GKE estiver ativada. Secure Source Manager ou Cloud Source Repositories apenas.gcenode
: use uma conta de serviço Google se a Workload Identity Federation para o GKE não estiver ativada. Secure Source Manager ou Cloud Source Repositories apenas.githubapp
: use uma app GitHub para autenticar um repositório do GitHub.
Para mais informações sobre como associar o seu repositório Git ao Config Sync, consulte o artigo Conceda acesso do Config Sync ao Git.
EMAIL
: segcpserviceaccount
for osecretType
, descomente este campo e adicione o endereço de email da conta do serviço Google, por exemplo,config-sync@PROJECT_ID.iam.gserviceaccount.com
.METRICS_EMAIL
: o email da Google Cloud conta de serviço (GSA) usada para exportar métricas do Config Sync para o Cloud Monitoring. Para mais informações sobre a configuração da exportação de métricas, consulte o artigo Monitorize a sincronização de configuração.
Para ver uma lista completa dos campos que pode adicionar ao
apply-spec
manifesto, consulte gcloud apply spec fields.Aplique o ficheiro
apply-spec
com as predefinições da frota executando o seguinte comando:gcloud beta container fleet config-management enable \ --fleet-default-member-config=apply-spec.yaml
Consola
Na Google Cloud consola, aceda à página Gestor de funcionalidades.
No painel Sincronização de configuração, clique em Configurar.
Reveja as definições ao nível da frota. Todos os novos clusters que criar na frota herdam estas definições.
Opcional: para alterar as predefinições, clique em Personalizar definições da frota. Na caixa de diálogo apresentada, faça o seguinte:
- Selecione a versão do Config Sync que quer usar.
- Clique em Guardar alterações.
Clique em Configurar.
Na caixa de diálogo de confirmação Configurar definições da frota, clique em Confirmar. Se não ativou anteriormente a sincronização de configuração, clicar em Confirmar também ativa a API
anthosconfigmanagement.googleapis.com
.
Embora não possa configurar as definições da fonte de dados fidedignos como predefinição da frota a partir da consola Google Cloud , pode selecionar vários clusters quando usa a funcionalidade Implementar um pacote.
Terraform
Para ativar o Config Sync como predefinição da frota, consulte o seguinte exemplo:
Substitua o seguinte:
REPO
: o URL do repositório Git que contém os seus ficheiros de configuração.BRANCH
: o ramo do repositório, por exemplo,main
.DIRECTORY
: o caminho no repositório Git que representa o nível superior do repositório que quer sincronizar.SECRET
: o tipo de autenticação secreta.
Para mais informações sobre a utilização do Terraform, consulte o artigo Aprovisione recursos do Config Sync com o Terraform.
Configure predefinições ao nível da frota para uma imagem de OCI
Para configurar as predefinições ao nível da frota para o Config Sync, conclua os seguintes passos:
gcloud
Crie um manifesto com o nome
apply-spec.yaml
com o seguinte conteúdo. Se já tiver criado um manifesto, não precisa de criar um novo.applySpecVersion: 1 spec: configSync: enabled: true sourceType: oci sourceFormat: unstructured syncRepo: REPO secretType: SECRET_TYPE # only required if gcpserviceaccount is the secretType # gcpServiceAccountEmail: EMAIL metricsGcpServiceAccountEmail: METRICS_EMAIL preventDrift: false
Substitua o seguinte:
REPO
: o URL da sua imagem OCI com o formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME
. Por predefinição, a imagem é extraída da etiquetalatest
, mas pode extrair imagens através deTAG
ouDIGEST
. EspecifiqueTAG
ouDIGEST
noPACKAGE_NAME
:- Para puxar por
TAG
:LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME:TAG
- Para puxar por
DIGEST
:LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME@sha256:DIGEST
- Para puxar por
SECRET_TYPE
: o método de autenticação usado para se ligar à sua imagem OCI. Para imagens públicas, usenone
como valor. Para imagens privadas, use uma das seguintes opções:gcpserviceaccount
: apenas Secure Source Manager ou Cloud Source Repositories. Use uma conta de serviço Google se a federação de identidades da carga de trabalho para o GKE estiver ativada.gcenode
: apenas Secure Source Manager ou Cloud Source Repositories. Use uma conta de serviço Google se a Workload Identity Federation para o GKE não estiver ativada.
Para mais informações sobre como associar a sua imagem OCI ao Config Sync, consulte o artigo Conceda acesso do Config Sync ao OCI ou ao Helm.
EMAIL
: segcpserviceaccount
for osecretType
, descomente este campo e adicione o endereço de email da conta do serviço Google, por exemplo,config-sync@PROJECT_ID.iam.gserviceaccount.com
.METRICS_EMAIL
: o email da Google Cloud conta de serviço (GSA) usada para exportar métricas do Config Sync para o Cloud Monitoring. Para mais informações sobre a configuração da exportação de métricas, consulte o artigo Monitorize a sincronização de configuração.
Para ver uma lista completa dos campos que pode adicionar ao
apply-spec
manifesto, consulte gcloud apply spec fields.Aplique o ficheiro
apply-spec
com as predefinições da frota executando o seguinte comando:gcloud beta container fleet config-management enable \ --fleet-default-member-config=apply-spec.yaml
Consola
Na Google Cloud consola, aceda à página Gestor de funcionalidades.
No painel Sincronização de configuração, clique em Configurar.
Reveja as definições ao nível da frota. Todos os novos clusters que criar na frota herdam estas definições.
Opcional: para alterar as predefinições, clique em Personalizar definições da frota. Na caixa de diálogo apresentada, faça o seguinte:
- Selecione a versão do Config Sync que quer usar.
- Clique em Guardar alterações.
Clique em Configurar.
Na caixa de diálogo de confirmação Configurar definições da frota, clique em Confirmar. Se não ativou anteriormente a sincronização de configuração, clicar em Confirmar também ativa a API
anthosconfigmanagement.googleapis.com
.
Embora não possa configurar as definições da fonte de dados fidedignos como predefinição da frota a partir da consola Google Cloud , pode selecionar vários clusters quando usa a funcionalidade Implementar um pacote.
Terraform
Para ativar o Config Sync como predefinição da frota, consulte o seguinte exemplo:
Substitua o seguinte:
REPO
: o URL para o repositório de imagens da OCI que contém os seus ficheiros de configuração.DIRECTORY
: o caminho absoluto do diretório que contém os recursos que quer sincronizar. Para usar o diretório raiz, deixe este campo em branco.SECRET
: o tipo de autenticação secreta.
Para mais informações sobre a utilização do Terraform, consulte o artigo Aprovisione recursos do Config Sync com o Terraform.
Atualize os clusters existentes para herdarem as predefinições da frota
Para atualizar os clusters existentes de modo a usarem as predefinições do Config Sync, pode usar a consola ou a CLI gcloud para sincronizar os clusters selecionados da frota com as predefinições da frota. Google Cloud Em alternativa, pode configurar manualmente cada cluster com as mesmas definições através do Terraform e seguindo as instruções de instalação do Config Sync na secção anterior. Se usou anteriormente o Terraform para especificar as predefinições da frota, use o mesmo bloco configmanagement
e config_sync
que usou para definir as predefinições para configurar os clusters escolhidos.
Para sincronizar as predefinições do Config Sync na sua frota, siga estes passos:
gcloud
Sincronize uma subscrição existente com a configuração predefinida da frota:
gcloud beta container fleet config-management apply \ --origin=FLEET \ --membership=MEMBERSHIP_NAME
Substitua
MEMBERSHIP_NAME
pelo nome de membro da frota do cluster que quer sincronizar com a configuração predefinida da frota.Confirme se as configurações da subscrição estão sincronizadas com a predefinição da frota:
gcloud beta container fleet config-management status
O resultado deste comando deve ser apresentado como
Yes
para o estadoSynced_to_Fleet_Default
da subscrição que sincronizou.
consola
Aceda ao Gestor de funcionalidades:
Na tabela de clusters, selecione os clusters que quer sincronizar com as definições da frota.
Clique em Sincronizar com as definições da frota.
Desative as predefinições da frota
Para desativar as predefinições do Config Sync em toda a sua frota, siga estes passos:
Para desativar a configuração predefinida da frota, execute o seguinte comando:
gcloud beta container fleet config-management disable --fleet-default-member-config
Confirme que a configuração predefinida da frota está desativada:
gcloud beta container fleet config-management status
O que se segue?
- Saiba como atualizar o Config Sync.
- Descubra como configurar a sincronização a partir de vários repositórios.
- Use o comando
nomos
. - Reveja as autorizações de sincronização da configuração predefinidas.