Configura implementaciones automáticas


Puedes configurar las implementaciones automatizadas para tus cargas de trabajo en Google Kubernetes Engine (GKE).

En esta página, se muestra cómo configurar una canalización simple de integración continua y entrega continua (CI/CD) para la carga de trabajo. Cuando envías un cambio al repositorio, Cloud Build implementa y compila el contenedor en el clúster de GKE de forma automática.

Cómo funciona una implementación automatizada

Si tienes una carga de trabajo que hace referencia a una imagen de un solo contenedor en GKE, puedes configurar una implementación automatizada para que tu aplicación se vuelva a compilar e implementar cada vez que se verifique un cambio de código en el repositorio.

Con una implementación automatizada, puedes definir la carga de trabajo como un archivo YAML y almacenar ese archivo en tu repositorio (coherente con las prácticas recomendadas). GKE genera un archivo YAML que puedes usar para este propósito.

Tienes las siguientes dos opciones para usar archivos YAML:

  • Si aún no tienes el archivo YAML que define tu carga de trabajo, puedes usar el archivo YAML que se generó. Guárdalo en tu repositorio. Cloud Build lo usa para cada implementación de la carga de trabajo.

  • Si ya tienes un archivo YAML que define la carga de trabajo, puedes dirigir GKE a su ubicación en el repositorio. Puedes comparar el archivo YAML en el repositorio con el archivo YAML recomendado para asegurarte de implementar la carga de trabajo correcta de forma adecuada.

Antes de comenzar

Antes de comenzar, asegúrate de haber realizado las siguientes tareas:

  • Habilita la API de Google Kubernetes Engine.
  • Habilitar la API de Google Kubernetes Engine
  • Si deseas usar Google Cloud CLI para esta tarea, instala y, luego, inicializa gcloud CLI. Si ya instalaste gcloud CLI, ejecuta gcloud components update para obtener la versión más reciente.

Requisitos

Las implementaciones automatizadas tienen los siguientes requisitos:

  • Solo se puede usar una implementación automatizada con cargas de trabajo de tipo Deployment que especifiquen una sola imagen de contenedor. No se admiten las cargas de trabajo de varios contenedores ni otros tipos de cargas de trabajo (por ejemplo, ReplicaSet).

  • El repositorio de código fuente debe contener un Dockerfile a fin de compilar la imagen.

    Puedes alojar este repositorio en uno de los siguientes productos:

    Si usas GitHub o Bitbucket, debes otorgar acceso a Google Cloud al repositorio.

  • Almacena la imagen de contenedor en Artifact Registry, en el mismo proyecto de Google Cloud que el clúster de GKE. Debes tener la imagen en Artifact  Registry y debes haberla implementado al menos una vez para tener una carga de trabajo en GKE.

Crea la implementación automatizada

Para crear una implementación automática, sigue estos pasos:

  1. Ve a la página Cargas de trabajo en la consola de Google Cloud.

    Ir a Cargas de trabajo

  2. En la lista de cargas de trabajo, haz clic en el nombre del Deployment que deseas modificar.

  3. Haz clic en Acciones > Implementación automatizada.

En el panel Automatiza la implementación, realiza los siguientes pasos:

  1. En Repositorio de origen, elige tu repositorio de código fuente:

    1. En la lista desplegable Proveedor del repositorio, selecciona el proveedor para tu repositorio.

      La implementación automatizada admite los siguientes hosts de control de fuente:

      • Cloud Source Repositories
      • GitHub
      • Bitbucket

        Si usas GitHub o Bitbucket, autentícate con tu nombre de usuario y contraseña.

    2. En la lista desplegable Repositorio, selecciona el nombre del repositorio que contiene el código fuente para tu implementación.

    3. Haga clic en Continuar.

  2. En Configuración de compilación, especifica la información de la configuración de compilación:

    1. Ingresa el nombre de la rama desde la que deseas compilar o una expresión regular (RegExp2) a fin de que coincida con la rama o las ramas. La rama predeterminada es master. Cuando envías a esta rama, Cloud Build compila la aplicación.
    2. Ingresa la ruta de acceso relativa del directorio de Dockerfile.
    3. Ingresa el nombre del Dockerfile.

    4. Haga clic en Continuar.

  3. En Configuración de implementación automatizada, proporciona la ubicación del archivo YAML de configuración.

    El sistema genera de forma automática un archivo YAML que puedes usar para propagar el archivo YAML en el repositorio.

    1. Haz clic en Ver YAML recomendado por Google para ver el archivo YAML generado.

    2. Compáralo con tu propio archivo YAML, si lo tienes, y actualiza el tuyo en función de este.

      De lo contrario, crea un archivo nuevo y propágalo con el archivo YAML que se generó. Esto ayuda a garantizar que la carga de trabajo que se implementa coincida con lo que se ejecuta en la actualidad. El archivo puede tener cualquier nombre, pero debe tener una extensión .yaml o .yml.

    3. Especifica la ruta de acceso relativa al directorio que contiene el archivo YAML.

      Si hay más de un archivo YAML en el directorio especificado, GKE los usa a todos.

  4. Haz clic en Configurar para finalizar la configuración de tu implementación automatizada.

    Es posible que se te solicite que otorgues permisos a la cuenta de servicio de Cloud Build. Este permiso es obligatorio.

¿Qué sucede a continuación?

Después de configurar una implementación automatizada para la carga de trabajo seleccionada, tienes un activador de Cloud Build que compila una imagen de contenedor después de un envío a la rama del repositorio seleccionada. Cloud Build también implementa una revisión nueva de tu carga de trabajo en el clúster en el que se implementó la imagen original.

Si deseas obtener más información sobre la carga de trabajo, consulta la página Detalles de la implementación (pestaña Historial de revisión).