Neste documento, mostramos como gerenciar recursos em várias zonas em um universo do Google Distributed Cloud (GDC) com isolamento físico. Cada superfície, seja o console do GDC, a CLI gdcloud, as APIs ou o Terraform, fornece mecanismos para gerenciar adequadamente os recursos em uma zona designada para recursos zonais ou globalmente para recursos compatíveis com o provisionamento global. Em um universo de várias zonas, é preciso gerenciar os recursos zonais e globais para alta disponibilidade.
Este documento é destinado aos seguintes grupos de público-alvo:
- Administradores de plataforma, como administradores de TI, responsáveis por desenvolver fluxos de trabalho de recuperação de desastres.
- Operadores de aplicativos, como desenvolvedores de aplicativos, responsáveis por desenvolver e manter aplicativos em um universo do GDC.
Para mais informações, consulte Públicos-alvo da documentação do GDC com isolamento físico.
Antes de começar
Antes de gerenciar recursos em várias zonas, conclua os seguintes pré-requisitos com base na superfície de sua preferência:
- Para usar a CLI do Distributed Cloud, instale a CLI gdcloud.
- Para implantar recursos personalizados de API zonais e globais,
instale o componente
kubectl. - Para usar o Terraform, configure o provedor do Terraform para Kubernetes.
Mudar para o contexto global
Para gerenciar recursos que abrangem todas as zonas ou são compatíveis com o provisionamento global, mude para o contexto global.
Console
O contexto global é definido ao navegar até o URL global, que segue esta sintaxe:
https://console.ORG_NAME.SUFFIX
Acesse o URL global para ter uma visão global dos seus recursos em todas as zonas.
gdcloud
O URL global é definido com o parâmetro organization_console_url ao
inicializar a
configuração padrão da CLI gdcloud.
O contexto global é assumido, a menos que você tenha definido explicitamente um contexto zonal.
Para reverter para o URL global, siga estas etapas:
Defina o URL padrão do console da organização como o URL global:
gdcloud config set core/organization_console_url GLOBAL_URLFaça login no contexto global:
gdcloud auth login --login-config-cert=CA_CERTSubstitua
CA_CERTpelo certificado de autoridade certificadora (CA) instalado no repositório de certificados confiáveis do sistema. Para mais informações, consulte Configuração do certificado TLS da Web.
API
É preciso definir explicitamente o arquivo kubeconfig para o servidor da API de gerenciamento global nos comandos kubectl ao gerenciar ou provisionar recursos personalizados da API KRM global. Exemplo:
kubectl apply -f resource.yaml --kubeconfig GLOBAL_API_SERVER
É possível definir o contexto global para as chamadas de API automaticamente definindo o contexto do kubectl para o servidor de API global. Para mais informações, consulte Recursos globais do servidor de API.
Terraform
É preciso definir explicitamente o servidor da API de gerenciamento global no módulo do Terraform e inicializá-lo:
Defina o arquivo kubeconfig para o servidor de API de gerenciamento global em um arquivo do Terraform no módulo, como o arquivo
main.tf:provider "kubernetes" { config_path = "GLOBAL_API_SERVER" }Para mais informações sobre como acessar o arquivo kubeconfig do servidor de API global, consulte Recursos do servidor de API global.
Aplique o novo contexto global ao módulo do Terraform:
terraform apply
Todas as ações subsequentes do Terraform são chamadas no contexto global.
Mudar para um contexto zonal
Para gerenciar recursos hospedados em uma zona específica, mude para um contexto zonal.
Console
O contexto zonal é definido ao acessar o URL zonal, que segue esta sintaxe:
https://console.ORG_NAME.ZONE.SUFFIX
Acesse o URL zonal para ver os recursos hospedados na zona única.
Muitas páginas de recursos também oferecem seletores de escopo de zona, que permitem alternar entre contextos zonais na página do console do GDC.

Selecione o contexto zonal nos mecanismos fornecidos para visualizar e gerenciar seus recursos zonais.
gdcloud
Como o contexto global é configurado por padrão ao usar a CLI gdcloud, é necessário definir explicitamente o contexto zonal para manipular recursos zonais. É possível realizar essa ação de uma das três maneiras a seguir, dependendo do fluxo de trabalho de sua preferência:
- Defina a configuração de zona padrão: recomendado se você trabalha principalmente em contextos zonais.
- Definir a configuração de URL zonal: recomendado se você planeja alternar com frequência entre contextos globais e zonais.
- Aplique a flag
--zone: recomendado se você quiser flexibilidade para aplicar diretamente um contexto zonal sem atualizações de configuração da CLI gdcloud.
Siga estas etapas para aplicar uma dessas abordagens:
Definir a configuração de zona padrão
Defina a configuração de zona para sua instância da CLI gdcloud:
gdcloud config set core/zone ZONE_NAMESubstitua
ZONE_NAMEpelo nome da zona a ser definida para o contexto. Para mais informações, consulte Listar zonas em um universo.
Definir a configuração de URL zonal
Defina o URL padrão do console da organização como o URL zonal:
gdcloud config set core/organization_console_url ZONAL_URLFaça login na zona:
gdcloud auth login --login-config-cert=CA_CERTSubstitua
CA_CERTpelo certificado de autoridade de certificação (CA) instalado no repositório de certificados confiáveis do sistema. Para mais informações, consulte Configuração do certificado TLS da Web.
Execute o comando da CLI gdcloud com a flag
--zoneincluída. Exemplo:gdcloud auth print-identity-token --zone=ZONE_NAMEÉ possível definir a flag
--zonepara qualquer comando que seja compatível com ela. Para verificar se o comando específico fornece a flag--zone, consulte a documentação de referência da CLI gdcloud.É possível usar a flag
--zoneem qualquer contexto global ou zonal.
API
É preciso definir explicitamente o arquivo kubeconfig para o servidor da API de gerenciamento zonal nos comandos kubectl ao gerenciar ou provisionar recursos personalizados da API KRM zonal. Exemplo:
kubectl apply -f resource.yaml --kubeconfig ZONAL_API_SERVER
É possível definir o contexto zonal para as chamadas de API automaticamente definindo o contexto do kubectl para o servidor de API de gerenciamento da zona. Para mais informações, consulte Recursos do servidor de API de gerenciamento zonal.
Terraform
É preciso definir explicitamente o servidor da API de gerenciamento zonal no módulo do Terraform e inicializá-lo:
Defina o arquivo kubeconfig para o servidor de API de gerenciamento zonal em um arquivo do Terraform no módulo, como o arquivo
main.tf:provider "kubernetes" { config_path = "ZONAL_API_SERVER" }Para mais informações sobre como acessar o arquivo kubeconfig do servidor de API de gerenciamento zonal, consulte Recursos do servidor de API de gerenciamento zonal.
Aplique o novo contexto global ao módulo do Terraform:
terraform apply
Todas as ações subsequentes do Terraform são chamadas no contexto da zona que você configurou.
Listar zonas em um universo
Para gerenciar recursos zonais em várias zonas, você precisa conhecer todas as zonas disponíveis no seu universo.
Liste todas as zonas do seu universo:
gdcloud zones listA saída será assim:
METADATA.NAME us-east1-a us-east1-b us-east1-c
A seguir
- Saiba mais sobre os servidores de API globais e zonais disponíveis em um universo do GDC.
- Confira o guia de alta disponibilidade para garantir que seu aplicativo seja resiliente a falhas de zona local.
- Acesse as páginas de referência da CLI gdcloud para ver uma lista completa dos comandos disponíveis.
- Para configurar o Terraform, consulte a visão geral do Terraform.