En este documento, se describe cómo implementar tus aplicaciones en clústeres conectados de GKE. La compatibilidad con los clústeres conectados de GKE permite la implementación en clústeres de AWS, Azure y locales.
Cloud Deploy te permite implementar tus cargas de trabajo basadas en contenedores en cualquier clúster conectado de GKE al que puedas acceder con la puerta de enlace de Connect.
Antes de comenzar
Ten un clúster de usuario en el que realizarás la implementación.
Los clústeres se pueden crear como clústeres conectados de GKE o puedes registrar un clúster de Kubernetes existente. Los clústeres que creas como clústeres conectados de GKE reciben automáticamente membresías. Para los clústeres existentes que registras en una flota, designas un nombre de membresía cuando los registras. Necesitas este nombre de membresía cuando configuras el destino.
Si usas Google Cloud CLI versión 407.0.0 o posterior, debes incluir la marca
--install-connect-agenten el comandogcloud container fleet memberships register, cuando registres un clúster de Google Kubernetes Engine. El agente de Connect ya no se instala de forma predeterminada.Configura la puerta de enlace de Connect para conectar el clúster o los clústeres registrados Google Cloud.
Asegúrate de configurar la puerta de enlace con la misma cuenta de servicio que se usará como la cuenta de servicio de ejecución de Cloud Deploy. De lo contrario, la cuenta de servicio de ejecución no tendrá los permisos necesarios para realizar la implementación en el clúster.
Configura Cloud Deploy para realizar la implementación en clústeres conectados de GKE
Crea la configuración de destino.
El destino se puede configurar en el archivo YAML de la canalización de entrega o en un archivo separado. Además, puedes configurar más de un destino en el mismo archivo, pero deben estar en diferentes secciones
kind: Target.Otorga a la cuenta de servicio de ejecución los roles que necesita para que pueda interactuar con los clústeres conectados a través de la puerta de enlace.
Esta concesión es necesaria, ya sea que uses la cuenta de servicio predeterminada de Cloud Deploy o una cuenta de servicio personalizada.
Configura el RBAC para la cuenta de servicio de ejecución en el clúster de Kubernetes subyacente.
Opcional: Si el clúster subyacente no es un clúster de GKE, es posible que debas configurar un imagePullSecret para permitir que tu clúster extraiga datos de Artifact Registry.
En la definición de destino, crea una sección
anthosClusterpara que apunte al clúster:La sintaxis para especificar clústeres conectados de GKE es la siguiente:
anthosCluster: membership: projects/[project_name]/locations/global/memberships/[membership_name]Este identificador de recursos de clústeres conectados de GKE usa los siguientes elementos:
[
project_name] es el nombre del Google Cloud proyecto en el que ejecutas este clúster.El clúster en el que realizas la implementación, incluidos los clústeres conectados de GKE, no necesita estar en el mismo proyecto que tu canalización de entrega.
[
membership_name] es el nombre que elegiste cuando registraste el clúster en una flota.
Para
location, todas las membresías de clúster songlobal, por lo que no necesitas cambiar/locations/global/en este identificador de recursos.
A continuación, se muestra un ejemplo de configuración de destino:
apiVersion: deploy.cloud.google.com/v1
kind: Target
metadata:
name: qsdev
description: development cluster
anthosCluster:
membership: projects/my-app/locations/global/memberships/my-app-dev-cluster
¿Qué sigue?
Obtén más información para configurar destinos de Cloud Deploy.
Obtén información sobre los entornos de ejecución de Cloud Deploy.
Más información sobre los clústeres conectados de GKE
Obtén más información sobre la puerta de enlace de Connect.