Terminología de Cloud Deploy

Los términos de este documento se definen según el uso que se les da en Cloud Deploy.

Abandonar

Para desactivar una versión de forma permanente.

Aplicación

El software que vas a desplegar con Cloud Deploy.

Entrega de aplicaciones

Entrega de los recursos necesarios para implementar una aplicación en un entorno de destino. En Cloud Deploy, la entrega de aplicaciones consiste en generar, promover y entregar los archivos de manifiesto de Kubernetes de tu aplicación en el clúster.

Artefacto

Las imágenes de contenedor que se van a desplegar (artefactos de compilación) y los archivos de configuración, como los manifiestos y las configuraciones de Skaffold, que se usan para el despliegue (artefactos de destino).

Automatización

La automatización te permite configurar tu flujo de procesamiento de entrega y tus objetivos para que se puedan realizar algunas acciones en las versiones y los lanzamientos de ese flujo sin necesidad de intervención humana. Por ejemplo, puedes configurar tu canal de distribución para que la promoción a un objetivo específico se produzca automáticamente en las circunstancias adecuadas. Más información

Regla de automatización

El comportamiento de una automatización se define en parte por la regla de automatización. Una regla de automatización define qué se automatiza, por ejemplo, promocionar un lanzamiento.

Las reglas de automatización disponibles se indican en el documento Usar reglas de automatización.

Ejecución de automatización

Una instancia de Automation.

Despliegue canary

Estrategia de implementación en la que se aplican los cambios a un subconjunto de usuarios primero, se prueban para asegurar la fiabilidad y, después, se implementan por completo.

Lanzamiento para niños

En el caso del despliegue paralelo, el lanzamiento generado para desplegarse en un elemento secundario.

Consulta también Implementación de controladores.

Objetivo secundario

En el caso del despliegue paralelo, un destino que representa uno de los varios destinos individuales de GKE, GKE Enterprise o Cloud Run en los que se realiza el despliegue simultáneamente.

Consulte también Multiobjetivo, Despliegue paralelo y Despliegue secundario.

Entrega continua

Una práctica de ingeniería de software en la que los cambios se pueden lanzar a los usuarios de forma segura, frecuente y, en su mayoría, automática.

Despliegue continuo

Práctica de ingeniería de software que da como resultado que los cambios en el código y la configuración se implementen automáticamente.

Mientras que la entrega continua requiere aprobación manual en una o varias fases, la implementación continua es automática y no requiere aprobación manual.

Lanzamiento de controladores

Se ha generado un lanzamiento para la implementación paralela. El lanzamiento de controladores no se usa para desplegar en un único clúster o servicio de destino, sino que tiene un lanzamiento secundario para cada destino secundario.

Consulta también Despliegue paralelo y Multi-target.

Objetivo personalizado

Una segmentación que usa un tipo de segmentación personalizado definido por el usuario en lugar de uno de los tipos de segmentación admitidos.

Declarativo

Configuración de un sistema, como un clúster de Kubernetes, que describe el estado previsto y se basa en ese sistema para alcanzarlo. Contrasta con la configuración imperativa, en la que se describen los pasos específicos para conseguir ese estado.

Además de renderizar y desplegar manifiestos de Kubernetes declarativos, Cloud Deploy usa definiciones de recursos declarativas para definir el proceso de renderizado y entrega. skaffold.yaml y clouddeploy.yaml son nombres de archivo habituales para la definición de Skaffold y la definición de la canalización de entrega.

Flujo de procesamiento de entrega

Representación del flujo de trabajo que envía una aplicación a cada destino en una progresión de la implementación.

En la documentación de Cloud Deploy se usa el término "flujo de procesamiento de entrega" para distinguirlo de otros flujos de procesamiento que puedas usar, como un flujo de procesamiento de integración continua.

En Cloud Deploy, la canalización de distribución se define en un archivo de configuración YAML (normalmente, clouddeploy.yaml) y esa definición consta de lo siguiente:

  • Destinos de despliegue
  • La secuencia de promoción entre esos objetivos

Consulta también Instancia de flujo de procesamiento.

Desplegar hook

Una acción arbitraria que puedes ejecutar antes o después de la implementación. Más información

Parámetros de implementación

Marcadores de posición que se pueden añadir a un manifiesto, pero que no se resuelven como parte de la renderización. En su lugar, los valores de estos marcadores de posición se asignan después de que se renderice cada manifiesto específico de un destino. Más información

Estrategia de implementación

Técnica para desplegar cambios en tu aplicación de forma segura y minimizando el impacto en los usuarios.

Entorno de ejecución

Un conjunto de Google Cloud recursos en los que se ejecuta Cloud Deploy. Consta de lo siguiente:

  • El grupo de trabajadores predeterminado o privado en el que Cloud Deploy ejecuta las acciones de renderización e implementación

  • La cuenta de servicio del entorno de ejecución predeterminado o alternativo que llama a Cloud Deploy para realizar la renderización y la implementación

  • Ubicación de almacenamiento predeterminada o alternativa de los manifiestos renderizados en Cloud Storage.

Hidratante

Consulta Render.

Tarea

Una operación específica que se va a realizar en un lanzamiento, como implementar o verificar. Más información

Ejecución de la tarea

Un recurso secundario de un lanzamiento, la ejecución de la tarea es una instancia de una tarea. Es decir, representa un intento de realizar una tarea, como implementar o verificar. Más información

Archivo de manifiesto

Un objeto de configuración de Kubernetes que se usa para crear, modificar y eliminar recursos de Kubernetes, como pods, implementaciones, servicios o Ingresses.

Los archivos de manifiesto de Cloud Deploy pueden tener dos estados: renderizado o sin renderizar. Un manifiesto sin renderizar no está listo para implementarse en un destino. El proceso de renderización, que incluye la inserción de valores específicos en el manifiesto, suele llevarse a cabo con herramientas como Helm, Kustomize y kpt. Cloud Deploy usa Skaffold para orquestar el renderizado de la configuración (el comando skaffold render).

Consulta también Render.

Multi-target

Al configurar o realizar una implementación paralela, un multitarget es una sola fase de la canalización, pero puede incluir más de un tiempo de ejecución de destino.

Consulta también Destino secundario, Despliegue paralelo y Lanzamiento del controlador.

Despliegue paralelo

Práctica de implementar una aplicación en más de un destino al mismo tiempo, en la misma fase de la canalización de entrega. Esta técnica te permite desplegar en varios clústeres o servicios en producción, por ejemplo.

Fase

Conjunto de operaciones (trabajos) de un lanzamiento que se agrupan de forma lógica. Por ejemplo, una implementación o una implementación y una verificación. Más información

Flujo de procesamiento

Consulta Flujo de procesamiento de entrega.

Instancia de flujo de procesamiento

Una captura de un flujo de procesamiento de entrega, tomada cuando se crea un release. Cloud Deploy conserva esta instantánea para asegurarse de que todas las implementaciones de una versión se gestionen de forma coherente mediante la canalización tal como se definió cuando se creó el release.

Consulte Instancias de flujo de procesamiento por versión para obtener más información.

Discordancia de flujo de procesamiento

Cuando se cambia un canal o un destino de lanzamiento después de crear un lanzamiento, la instancia del canal asociada al release ahora es diferente de la definición del canal.

Si hay un error de coincidencia en la canalización, Cloud Deploy te pedirá que examines las definiciones antes de promocionar una versión o intentar restaurar una versión anterior.

Consulte Instancias de flujo de procesamiento por versión para obtener más información.

Progresión

Una configuración en el archivo de configuración de tu flujo de procesamiento de entrega que describe una secuencia de promoción de un destino o multidestino a otro. Por ejemplo, de test a staging y a prod.

Promoción

Proceso de avance de una versión de un destino a otro, según la progresión definida en la canalización de distribución.

Registrarse

Para proporcionar una aplicación al servicio Cloud Deploy en forma de flujo de procesamiento de entrega, de modo que el servicio gestione la entrega de la aplicación.

Lanzar

Un recurso de Cloud Deploy que representa los cambios (código, configuración o ambos) que se van a desplegar.

El ciclo de vida de las versiones se describe en el documento Arquitectura de servicio de Cloud Deploy.

Renderizar

Para preparar un manifiesto para la implementación en el destino. Renderizar un manifiesto consiste principalmente en proporcionar valores para las variables del manifiesto. Cloud Deploy lo hace mediante skaffold render.

Lanzamiento

Recurso que asocia una versión con un destino de implementación. Se crea un rollout por lanzamiento y por destino, por lo que, en una progresión sencilla en tres destinos de una canalización de entrega, habría tres recursos rollout para el lanzamiento (uno por cada destino).

En el caso de las implementaciones más complejas, como las que usan una estrategia de implementación canaria, un rollout puede ser más complicado. Más información

Estrategia de implementación estándar

La estrategia de despliegue estándar es la forma predeterminada de desplegar una aplicación en un destino. En cada fase definida en la canalización de lanzamiento, tu aplicación se implementa por completo en el destino, sustituyendo la aplicación tal como se había implementado anteriormente.

Fase

Un destino o varios destinos en una canalización de entrega. Por ejemplo, en una canalización de entrega sencilla que tiene las siguientes fases:

  • dev
  • staging
  • prod

Cada una de ellas es una fase.

Cuando se realiza una implementación en paralelo, la multiorientación es una sola fase, pero las orientaciones secundarias no son fases independientes.

Suspender (un flujo de procesamiento)

Para evitar la creación y la promoción de versiones de un flujo de procesamiento de entrega concreto. Para obtener más información, consulta Suspender una canalización de entrega.

Objetivo

El entorno de ejecución específico (clúster de Kubernetes, servicio de Cloud Run u otro entorno de ejecución compatible) en el que se va a desplegar la aplicación. Además, la configuración de ese entorno.

Puedes definir tus objetivos en el archivo de configuración de la pipeline de entrega o en un archivo independiente.

Los destinos deben definirse en el mismo proyecto y región que el flujo de procesamiento de entrega. Sin embargo, los tiempos de ejecución en los que se implementan los destinos pueden estar en diferentes proyectos y regiones.

Un objetivo también puede ser un objetivo múltiple o un objetivo secundario para admitir la implementación paralela.

Artefacto de destino

Archivo de configuración que se usa para renderizar y desplegar una aplicación en un destino. Entre ellos, se incluyen el manifiesto de Kubernetes o la definición de servicio de Cloud Run, los archivos de configuración de Skaffold y el origen de renderización utilizado para crearlos.

Verificación

La posibilidad de confirmar que una implementación se ha realizado correctamente ejecutando un contenedor arbitrario con pruebas. Más información sobre la verificación del despliegue