Implementar en clústeres de usuario de GKE Enterprise

En este documento, se describe cómo implementar tus aplicaciones para Clústeres de GKE Enterprise. La compatibilidad con los objetivos de GKE Enterprise 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 de usuario de GKE Enterprise al que puedes acceder con Connect.

Antes de comenzar

  • Tener un clúster de usuarios de GKE Enterprise al que implementarás

    Este clúster puede ser uno que hayas creado como clúster de usuarios de GKE Enterprise, o bien puedes registrar un clúster de Kubernetes existente. Los clústeres que crees para GKE Enterprise recibirán automáticamente membresías. En el caso de los clústeres existentes que registras en una flota, debes designar un nombre de membresía cuando los registres. Necesitarás esta membresía nombre de la configuración de destino.

    Si usas la versión 407.0.0 de Google Cloud CLI o una versión posterior, 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 es de forma predeterminada.

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

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

Configura Cloud Deploy para implementar en GKE Enterprise

  1. Crea tu configuración de destino.

    El destino se puede configurar en el archivo YAML de tu 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 estrofas de kind: Target.

  2. 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.

    Este otorgamiento es necesario si usas el servicio predeterminado de Cloud Deploy cuenta de servicio o una cuenta de servicio personalizada.

  3. Configura el RBAC para la cuenta de servicio de ejecución en el clúster de Kubernetes que subyace 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 tu clúster extraiga imágenes de Artifact Registry.

  5. En la definición de destino, crea una estrofa anthosCluster 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 estás ejecutando este clúster.

      El clúster en el que realizas la implementación, incluidos los clústeres de GKE Enterprise, no tiene que estar en el mismo proyecto que tu canalización de entrega.

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

    Para location, todas las membresías de clúster de GKE Enterprise son de 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 una instancia de GKE Enterprise clúster de usuario:

      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?