En un universo multizonal, debes administrar tus recursos zonales y globales para lograr una alta disponibilidad. Cada plataforma, ya sea la consola de GDC, la CLI de gdcloud, las APIs o Terraform, proporciona mecanismos para administrar de forma adecuada tus recursos en una zona designada para los recursos zonales o de forma global para los recursos compatibles con el aprovisionamiento global.
En este documento, se destacan las formas en que puedes administrar los recursos en varias zonas.
Cambia al contexto global
Administra tus recursos a nivel global cambiando al contexto global.
Consola de GDC
El contexto global se establece cuando se navega a la URL global, que sigue esta sintaxis:
https://console.ORG_NAME.SUFFIX
Navega a la URL global para tener una vista global de tus recursos en todas las zonas.
gdcloud
La URL global se establece con el parámetro organization_console_url
cuando se inicializa la configuración predeterminada de la CLI de gcloud.
Se supone el contexto global, a menos que hayas establecido un contexto zonal de forma explícita.
Para volver a la URL global, completa los siguientes pasos:
Establece la URL predeterminada de la consola de la organización en la URL global:
gdcloud config set core/organization_console_url GLOBAL_URL
Accede al contexto global:
gdcloud auth login --login-config-cert=CA_CERT
Reemplaza
CA_CERT
por el certificado de la autoridad certificadora (CA) instalado en el almacén de certificados de confianza del sistema. Para obtener más información, consulta Configuración de certificados TLS web.
API
Debes definir de forma explícita el archivo kubeconfig para el servidor de la API de administración global en tus comandos de kubectl cuando administres o aprovisiones recursos personalizados de la API de KRM global. Por ejemplo:
kubectl apply -f resource.yaml --kubeconfig GLOBAL_API_SERVER
Puedes establecer el contexto global para tus llamadas a la API automáticamente configurando tu contexto de kubectl en el servidor de la API global. Consulta Acceder para obtener más detalles.
Terraform
Debes definir de forma explícita el servidor de la API de administración global en tu módulo de Terraform y, luego, inicializarlo:
Define el archivo kubeconfig para el servidor de la API de administración global en un archivo de Terraform dentro de tu módulo, como el archivo
main.tf
:provider "kubernetes" { config_path = "GLOBAL_API_SERVER" }
Consulta Acceder para obtener detalles sobre cómo adquirir el archivo kubeconfig del servidor de la API de administración global.
Aplica el nuevo contexto global a tu módulo de Terraform:
terraform apply
Todas las acciones posteriores de Terraform se llaman en el contexto global.
Cómo cambiar a un contexto zonal
Administrar los recursos de una zona en particular cambiando a un contexto zonal
Consola de GDC
El contexto zonal se establece navegando a la URL zonal, que sigue esta sintaxis:
https://console.ORG_NAME.ZONE.SUFFIX
Navega a la URL zonal para ver los recursos alojados en la zona única.
Muchas páginas de recursos también ofrecen selectores de alcance de zona, que te permiten cambiar entre contextos zonales desde la página de la consola de GDC.
Selecciona tu contexto zonal en los mecanismos proporcionados para ver y administrar tus recursos zonales.
gdcloud
Dado que el contexto global se configura de forma predeterminada cuando se usa la CLI de gcloud, debes establecer de forma explícita tu contexto zonal para manipular los recursos zonales. Puedes realizar esta acción de una de las siguientes tres maneras, según tu flujo de trabajo preferido:
- Establece la configuración de zona predeterminada: Se recomienda si trabajas principalmente en contextos zonales.
- Establece la configuración de URL zonales: Se recomienda si planeas cambiar con frecuencia entre contextos globales y zonales.
- Aplica la marca
--zone
: Se recomienda si deseas flexibilidad para aplicar directamente un contexto zonal sin ninguna actualización de configuración de gcloud CLI.
Para aplicar uno de estos enfoques, completa los siguientes pasos:
Cómo establecer la configuración de zona predeterminada
Establece la configuración de zona para tu instancia de la CLI de gcloud:
gdcloud config set core/zone ZONE_NAME
Reemplaza
ZONE_NAME
por el nombre de la zona que deseas establecer para tu contexto. Consulta Enumera las zonas de un universo para obtener instrucciones sobre cómo encontrar el nombre de una zona.
Cómo establecer la configuración de URL zonales
Establece la URL predeterminada de la consola de la organización en la URL zonal:
gdcloud config set core/organization_console_url ZONAL_URL
Accede a la zona:
gdcloud auth login --login-config-cert=CA_CERT
Reemplaza
CA_CERT
por el certificado de la autoridad certificadora (CA) instalado en el almacén de certificados de confianza del sistema. Para obtener más información, consulta Configuración de certificados TLS web.
Ejecuta el comando de la CLI de gdcloud con la marca
--zone
incluida. Por ejemplo:gdcloud auth print-identity-token --zone=ZONE_NAME
Puedes establecer la marca
--zone
para cualquier comando que la admita. Consulta la documentación de referencia de la CLI de gcloud para tu comando específico y confirma que la marca--zone
esté disponible.Puedes usar la marca
--zone
desde cualquier contexto global o zonal.
API
Debes definir de forma explícita el archivo kubeconfig para el servidor de la API de administración zonal en tus comandos de kubectl cuando administres o aprovisiones recursos personalizados de la API de KRM zonal. Por ejemplo:
kubectl apply -f resource.yaml --kubeconfig ZONAL_API_SERVER
Puedes establecer el contexto zonal para tus llamadas a la API automáticamente configurando tu contexto de kubectl en el servidor de la API de administración de la zona. Consulta Acceder para obtener más detalles.
Terraform
Debes definir de forma explícita el servidor de la API de administración zonal en tu módulo de Terraform y, luego, inicializarlo:
Define el archivo kubeconfig para el servidor de la API de administración zonal en un archivo de Terraform dentro de tu módulo, como el archivo
main.tf
:provider "kubernetes" { config_path = "ZONAL_API_SERVER" }
Consulta Acceder para obtener detalles sobre cómo adquirir el archivo kubeconfig del servidor de la API de administración zonal.
Aplica el nuevo contexto global a tu módulo de Terraform:
terraform apply
Todas las acciones posteriores de Terraform se llaman en el contexto de la zona que configuraste.
Enumera las zonas de un universo
Para enumerar todas las zonas de tu universo, ejecuta el siguiente comando:
gdcloud zones list
El resultado es similar al siguiente:
METADATA.NAME
us-east1-a
us-east1-b
us-east1-c
¿Qué sigue?
- Obtén información sobre los servidores de API globales y zonales disponibles en un universo de GDC.
- Explora la guía de alta disponibilidad para asegurarte de que tu aplicación sea resistente a las fallas de la zona local.
- Visita las páginas de referencia de la CLI de gdcloud para obtener una lista completa de los comandos disponibles de la CLI de gdcloud.
- Para configurar Terraform, consulta la descripción general de Terraform.