Implementa en clústeres de usuario de GKE Enterprise

En este documento, se describe cómo implementar tus aplicaciones en los clústeres de GKE Enterprise. La compatibilidad con los destinos de GKE Enterprise permite la implementación en AWS, Azure y clústeres locales.

Cloud Deploy te permite implementar tus cargas de trabajo basadas en contenedores en cualquier clúster de usuario de GKE Enterprise al que puedas acceder con la puerta de enlace Connect.

Antes de comenzar

  • Ten un clúster de usuario de GKE Enterprise en el que realices la implementación.

    Este clúster puede ser uno que creaste como un clúster de usuario de GKE Enterprise o puedes registrar un clúster de Kubernetes existente. Los clústeres que crees para GKE Enterprise recibirán membresías de forma automática. Para los clústeres existentes que registras en una flota, designas un nombre de membresía cuando te registras. Necesitarás este nombre de membresía para la configuración de destino.

    Si usas la versión 407.0.0 de Google Cloud CLI o una más reciente, debes incluir la marca --install-connect-agent en el comando gcloud container fleet memberships register cuando registres un clúster de Google Kubernetes Engine. El agente de Connect ya no está instalado de forma predeterminada.

  • Configura Conectar puerta de enlace para conectar el clúster o los clústeres registrados a Google Cloud.

    Asegúrate de configurar la puerta de enlace con la misma cuenta de servicio que se usará que 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 implementar en el clúster de GKE Enterprise.

Configura Cloud Deploy para implementarla en GKE Enterprise

  1. Crea la configuración de destino.

    El destino se puede configurar en el YAML de la canalización de entrega o puede estar en un archivo separado. Además, puedes configurar más de un destino en el mismo archivo, pero deben estar en diferentes estrofas de kind: Target.

  2. Otorga a la cuenta de servicio de ejecución las funciones que necesita para que pueda interactuar con los clústeres conectados a través de la puerta de enlace.

    Este otorgamiento es necesario sin importar si usas la cuenta de servicio predeterminada de Cloud Deploy o una cuenta de servicio personalizada.

  3. Configura RBAC para la cuenta de servicio de ejecución en el clúster de Kubernetes que está subyacente al clúster de Anthos.

  4. Opcional: Si el clúster subyacente no es un clúster de GKE, es posible que debas configurar un imagePullSecret para permitir que el clúster extraiga de Artifact Registry.

  5. En la definición del destino, crea una estrofa anthosCluster para que apunte al clúster de GKE Enterprise:

    La sintaxis para especificar un clúster de GKE Enterprise es la siguiente:

    anthosCluster:
     membership: projects/[project_name]/locations/global/memberships/[membership_name]
    

    Este identificador de recursos de GKE Enterprise usa los siguientes elementos:

    • [project_name] es el nombre del proyecto de Google Cloud en el que ejecutas este clúster.

      El clúster en el que realizas la implementación, incluidos los clústeres de GKE Enterprise, no es necesario que esté en el mismo proyecto que la canalización de entrega.

    • [membership_name] es el nombre que elegiste cuando registras el clúster en una flota.

    Para location, todas las membresías de clúster de GKE Enterprise son global, por lo que no necesitas cambiar /locations/global/ en este identificador de recursos.

El siguiente es un ejemplo de configuración de destino, que apunta a un clúster de usuario de GKE Enterprise:

      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?