Terminología de Cloud Deploy

Los términos de este documento se definen de acuerdo con su uso en Cloud Deploy.

Abandonar

Para desactivar una versión de forma permanente.

Aplicación

El software que implementarás con Cloud Deploy.

Entrega de aplicaciones

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

Artefacto

Las imágenes de contenedor que se implementarán (artefactos de compilación) y los archivos de configuración, como los manifiestos y las configuraciones de Skaffold, que se usan para la implementación (artefactos de destino).

Automatización

La automatización te permite configurar tu canalización de entrega y tus destinos para que se puedan realizar algunas acciones en las versiones y los lanzamientos de esa canalización sin necesidad de intervención humana. Por ejemplo, puedes configurar tu canalización de publicación para que la promoción a un objetivo específico se realice automáticamente, en las circunstancias adecuadas. Obtén 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 una versión.

Las reglas de automatización disponibles se indican en el documento Cómo usar reglas de automatización.

Ejecución de automatización

Es una instancia de una automatización.

Implementación de versiones canary

Una estrategia de implementación en la que primero lanzas los cambios a un subconjunto de usuarios, los pruebas para garantizar la confiabilidad y, luego, los lanzas por completo.

Lanzamiento secundario

En el caso de la implementación en paralelo, el lanzamiento se genera para implementarse en un objetivo secundario.

Consulta también Lanzamiento del controlador.

Objetivo secundario

Para la implementación en paralelo, un destino que representa uno de los varios destinos individuales de GKE, GKE Enterprise o Cloud Run a los que implementas de forma simultánea.

Consulta también Multitarget, Implementación en paralelo y Lanzamiento 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 casi automática.

Implementación continua

Una práctica de ingeniería de software que da como resultado cambios en el código y la configuración y se implementa de forma automática.

Mientras que la entrega continua requiere la aprobación manual en una o más etapas, la implementación continua es automática, sin aprobación manual.

Lanzamiento del controlador

Un lanzamiento generado para la implementación en paralelo. El lanzamiento del controlador no se usa para implementar en un solo clúster o servicio de destino, sino que tiene un lanzamiento secundario para cada destino secundario.

Consulta también Implementación en paralelo y Múltiples objetivos.

Segmentación personalizada

Es un objetivo que usa un tipo de objetivo personalizado definido por el usuario en lugar de uno de los tipos de objetivos admitidos.

Declarativa

Configuración de un sistema, como un clúster de Kubernetes, que describe el estado deseado y depende de ese sistema para lograrlo. Contrasta con la configuración imperativa, en la que describes los pasos específicos para lograr ese estado.

Además de renderizar e implementar manifiestos declarativos de Kubernetes, Cloud Deploy usa definiciones de recursos declarativos para definir el proceso de renderización y entrega. skaffold.yaml y clouddeploy.yaml son nombres de archivo típicos para la definición de Skaffold y la definición de canalización de lanzamiento.

Canalización de entrega

Una representación del flujo de trabajo que entrega una aplicación a cada destino en una progresión de implementación.

En la documentación de Cloud Deploy, se usa el término “entrega canalización” para distinguirla de otras canalizaciones que puedas usar, como una canalización de CI.

En Cloud Deploy, la canalización de entrega se define en un archivo de configuración YAML, por lo general, clouddeploy.yaml, y esa definición consta de lo siguiente:

  • Destinos de implementación
  • La secuencia de promoción entre esos destinos

Consulta también Instancia de canalización.

Hook de implementación

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

Implementar parámetros

Son marcadores de posición que se pueden agregar 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 renderiza cada manifiesto específico del objetivo. Obtén más información.

Estrategia de implementación

Es una técnica para implementar cambios de forma segura en tu aplicación y, al mismo tiempo, minimizar el impacto en los usuarios.

Entorno de ejecución

Es un conjunto de recursos de Google Cloud en los que se ejecuta Cloud Deploy. Consiste en lo siguiente:

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

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

  • La ubicación de almacenamiento predeterminada o alternativa para los manifiestos renderizados en Cloud Storage.

Hidratación

Consulta Renderización.

Trabajo

Es una operación específica que se realizará en un lanzamiento, como implementar o verificar. Obtén más información.

Ejecución de trabajo

Es un recurso secundario de un lanzamiento. La ejecución de trabajo es una instancia de un trabajo. Es decir, representa un intento de realizar una tarea, como implementar o verificar. Obtén más información.

Manifiesto

Un objeto de configuración de Kubernetes que se usa para crear, modificar y borrar recursos de Kubernetes como Pods, implementaciones, servicios o entradas.

Los manifiestos en Cloud Deploy existen en uno de estos dos estados: renderizados o no renderizados. Un manifiesto no renderizado no está listo para su implementación en un destino. El proceso de renderización, que incluye propagar valores específicos en el manifiesto, a menudo se realiza mediante herramientas como Helm, Kustomize y kpt. Cloud Deploy usa Skaffold para organizar la renderización de la configuración (el comando skaffold render).

Consulta también Renderizar.

Múltiples destinos

Cuando configuras o realizas una implementación en paralelo, un destino múltiple es una sola etapa de canalización, pero puede incluir más de un entorno de ejecución objetivo.

Consulta también Destino secundario, Implementación en paralelo y Lanzamiento del controlador.

Implementación en paralelo

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

Fase

Es la colección de operaciones (tareas) de un lanzamiento que se agrupan de forma lógica, por ejemplo, una implementación o una implementación y verificación. Obtén más información.

Canalización

Consulta Canalización de entrega

Instancia de canalización

Una instantánea de una canalización de entrega, tomada cuando se crea una release. Cloud Deploy mantiene esta instantánea para garantizar que todas las implementaciones de una versión se administren de forma coherente mediante la canalización como se definió cuando se creó el release.

Consulta Instancias de canalización por actualización para obtener más información.

Discrepancia de canalización

Cuando se cambia una canalización de entrega o un destino después de crear una versión, la instancia de canalización asociada con release ahora es diferente de la definición de la canalización.

Si hay una discrepancia de canalizaciones, Cloud Deploy te solicita que examines las definiciones antes de promover una versión o intentar una reversión.

Consulta Instancias de canalización por actualización para obtener más información.

Progresión

Una configuración, en el archivo de configuración de la canalización de entrega, que describe una secuencia de promoción de un destino a otro, por ejemplo, de test a staging a prod

Promoción

El proceso de mover una versión de un destino a otro, según la progresión definida en la canalización de entrega.

Registrarse

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

Versión

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

El ciclo de vida de la versión se describe en el documento Arquitectura de servicios de Cloud Deploy.

Renderizar

Preparar un manifiesto para su implementación en el destino La renderización de un manifiesto consiste principalmente en proporcionar valores para las variables del manifiesto. Cloud Deploy lo hace con skaffold render.

Lanzamiento

Es un recurso que asocia una versión con un destino de implementación. Se crea un rollout por versión y por destino, por lo que, en una progresión simple de tres destinos en una canalización de entrega, habría tres recursos rollout para la versión, uno para cada destino.

Para implementaciones más complejas, por ejemplo, con una estrategia de implementación de versiones canary, un rollout puede ser más complicado. Obtén más información.

Estrategia de implementación estándar

La estrategia de implementación estándar es la forma predeterminada de implementar una aplicación en un destino. Para cada etapa definida en la canalización de entrega, tu aplicación se implementa por completo en el destino y, cada vez, se reemplaza la aplicación como se implementó anteriormente.

Etapa

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

  • dev
  • staging
  • prod

Cada una de ellas es una etapa.

Cuando se realiza una implementación en paralelo, la implementación multiobjetivo es una sola etapa, pero los objetivos secundarios no son etapas independientes.

Suspender (una canalización de entrega)

Evita la creación y promoción de lanzamientos de una canalización de entrega determinada. Para obtener más información, consulta Cómo suspender una canalización de entrega

Objetivo

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

Puedes definir tus destinos en el archivo de configuración de la canalización de entrega o en un archivo separado.

Los objetivos deben definirse en el mismo proyecto y la misma región que la canalización de publicación. Sin embargo, los tiempos de ejecución en los que se implementan los destinos pueden estar en diferentes proyectos y regiones.

Un destino también puede ser un destino múltiple o un destino secundario para admitir la implementación en paralelo.

Artefacto de destino

Es un archivo de configuración que se usa para renderizar e implementar una aplicación en un objetivo. Estos incluyen el manifiesto de Kubernetes o la definición de servicio de Cloud Run, los archivos de configuración de Skaffold y la fuente de renderización que se usa para crearlos.

Verificación

La capacidad de confirmar que una implementación se realizó correctamente mediante la ejecución de un contenedor arbitrario con pruebas Obtén más información sobre la verificación de implementación.