CodeDeploy componentes principales - AWS CodeDeploy

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

CodeDeploy componentes principales

Antes de empezar a trabajar con el servicio, debe familiarizarse con los componentes principales del proceso de CodeDeploy implementación.

Aplicación

Una aplicación es un nombre que identifica de forma exclusiva la aplicación que desea implementar. CodeDeploy utiliza este nombre, que funciona como contenedor, para garantizar que se haga referencia a la combinación correcta de revisión, configuración de despliegue y grupo de despliegue durante un despliegue.

Plataforma de informática

Una plataforma informática es una plataforma en la que se CodeDeploy despliega una aplicación. Existen tres plataformas de informática:

  • EC2/On-Premises: describe instancias de servidores físicos que pueden ser instancias EC2 en la nube de Amazon, servidores locales o ambos. Las aplicaciones creadas con la plataforma informática EC2 /On-Premises pueden estar compuestas por archivos ejecutables, archivos de configuración, imágenes y mucho más.

    Las implementaciones que utilizan la plataforma informática EC2 /On-Premises administran la forma en que el tráfico se dirige a las instancias mediante una implementación local o de tipo azul/verde. Para obtener más información, consulte Descripción general de los tipos de implementación CodeDeploy .

  • AWS Lambda: se usa para implementar aplicaciones que constan de una versión actualizada de una función Lambda. AWS Lambda administra la función Lambda en un entorno informático sin servidor compuesto por una estructura informática de alta disponibilidad. Toda la administración de los recursos de cómputo la realiza. AWS Lambda Para obtener más información, consulte Aplicaciones y informática sin servidor‭. Para obtener más información acerca de AWS Lambda las funciones Lambda, consulte. AWS Lambda

    Puede administrar la forma en que el tráfico se desplaza a las versiones actualizadas de la función Lambda durante una implementación eligiendo una configuración canaria, lineal o all-at-once lineal.

  • Amazon ECS: se utiliza para implementar una aplicación ECS contenerizada de Amazon como un conjunto de tareas. CodeDeploy realiza una implementación azul/verde instalando una versión actualizada de la aplicación como un nuevo conjunto de tareas de reemplazo. CodeDeploy redirige el tráfico de producción del conjunto de tareas de la aplicación original al conjunto de tareas de reemplazo. Cuando la implementación se realiza correctamente, se termina el conjunto de tareas original. Para obtener más información sobre AmazonECS, consulta Amazon Elastic Container Service.

    Puede administrar la forma en que el tráfico se desplaza al conjunto de tareas actualizado durante una implementación eligiendo una all-at-once configuración canaria, lineal o lineal.

nota

Las implementaciones ECS azul/verde de Amazon son compatibles con y. CodeDeploy AWS CloudFormation Los detalles de estas implementaciones se describen en secciones posteriores.

Configuración de implementación

Una configuración de despliegue es un conjunto de reglas de despliegue y condiciones de éxito y fracaso que se utilizan CodeDeploy durante un despliegue. Si la implementación utiliza la plataforma informática EC2 /On-Premises, puede especificar el número mínimo de instancias en buen estado para la implementación. Si su implementación usa la plataforma de ECS cómputo Amazon AWS Lambda o la plataforma de cómputo de Amazon, puede especificar cómo se enruta el tráfico a su función ECS o conjunto de tareas de Lambda actualizado.

Para obtener más información sobre cómo especificar el número mínimo de hosts en buen estado para una implementación que utilice la plataforma informática EC2 /On-Premises, consulte. Acerca del número mínimo de instancias en buen estado

Las siguientes configuraciones de implementación especifican cómo se enruta el tráfico durante una implementación que usa Lambda o ECS la plataforma de cómputo:

  • Valor controlado: el tráfico se desvía en dos incrementos. Puede elegir entre las opciones de canario predefinidas que especifican el porcentaje de tráfico que se desplaza a la función o el conjunto de ECS tareas de Lambda actualizado en el primer incremento y el intervalo, en minutos, antes de que el tráfico restante se desplace en el segundo incremento.

  • Lineal: el tráfico se desvía en incrementos iguales con el mismo número de minutos entre incrementos. Puede elegir opciones lineales predefinidas que especifiquen el porcentaje de tráfico desviado en cada incremento y el número de minutos entre cada incremento.

  • R ll-at-once: Todo el tráfico se desplaza de la función o conjunto de ECS tareas original de Lambda a la función o conjunto de tareas actualizado de una sola vez.

Grupo de implementación

Un grupo de implementación es un conjunto de instancias individuales. Un grupo de despliegues contiene instancias etiquetadas individualmente, EC2 instancias de Amazon en grupos de Amazon EC2 Auto Scaling o ambas. Para obtener información sobre las etiquetas de EC2 instancia de Amazon, consulta Cómo trabajar con etiquetas mediante la consola. Para obtener más información acerca de las instancias en las instalaciones, consulte Working with On-Premises Instances. Para obtener información acerca de Amazon EC2 Auto Scaling, consulteIntegración CodeDeploy con Amazon EC2 Auto Scaling.

Tipo de implementación

Un tipo de implementación es un método que se utiliza para hacer que la última revisión de la aplicación esté disponible en las instancias de un grupo de implementación. Existen dos tipos de implementaciones:

  • Implementación local: la aplicación de cada instancia del grupo de implementación se para, se instala la última revisión de la aplicación, y se inicia y valida la nueva versión de la aplicación. Puede utilizar un equilibrador de carga de modo que se cancele el registro de cada instancia durante su implementación y, a continuación, vuelva a ponerse en servicio una vez completada la implementación. Solo las implementaciones que utilizan la plataforma informática EC2 /On-Premises pueden utilizar implementaciones locales. Para obtener más información acerca de las implementaciones locales, consulte Información general de la implementación local.

  • Implementación azul/verde: el funcionamiento de la implementación depende de la plataforma de informática que utilice:

    • Azul/verde en una plataforma informática EC2 /On-Premises: las instancias de un grupo de implementaciones (el entorno original) se sustituyen por un conjunto diferente de instancias (el entorno de reemplazo) siguiendo estos pasos:

      • Las instancias se aprovisionan en el entorno de sustitución.

      • La revisión de aplicación más reciente se instala en las instancias de sustitución.

      • Existe un tiempo de espera opcional para actividades como las pruebas de aplicaciones y la verificación del sistema.

      • Las instancias del entorno de sustitución se registran en uno o más equilibradores de carga de Elastic Load Balancing, lo que provoca que el tráfico se redirija a ellos. Las instancias del entorno original se anulan del registro y se pueden cerrar o mantener en ejecución para otros usos.

      nota

      Si utilizas una plataforma informática EC2 /On-Premises, ten en cuenta que las implementaciones azul/verde solo funcionan con instancias de Amazon. EC2

    • Azul/verde en una plataforma ECS informática o de AWS Lambda Amazon: el tráfico se desplaza en incrementos según una configuración canaria, lineal o all-at-oncede despliegue.

    • Implementaciones azules/verdes AWS CloudFormation: el tráfico pasa de los recursos actuales a los recursos actualizados como parte de una actualización de la pila. AWS CloudFormation Actualmente, solo se admiten las implementaciones ECS azul/verde.

    Para obtener más información acerca de las implementaciones blue/green, consulte Información general de la implementación azul/verde.

nota

Las implementaciones ECS azul/verde de Amazon son compatibles con y. CodeDeploy AWS CloudFormation Los detalles de estas implementaciones se describen en secciones posteriores.

Perfil de instancia IAM

Un perfil de IAM instancia es un IAM rol que adjuntas a tus EC2 instancias de Amazon. Este perfil incluye los permisos necesarios para acceder a los GitHub depósitos o repositorios de Amazon S3 en los que se almacenan las aplicaciones. Para obtener más información, consulte Paso 4: Crea un perfil de IAM instancia para tus EC2 instancias de Amazon.

Revisión

Una revisión es una versión de su aplicación. Una revisión de despliegue de AWS Lambda es un archivo con JSON formato YAML (o) que especifica información sobre la función de Lambda que se va a implementar. Una revisión de implementación EC2 de /On-Premises es un archivo de almacenamiento que contiene el contenido fuente (código fuente, páginas web, archivos ejecutables y scripts de implementación) y un archivo de especificaciones de la aplicación (archivo). AppSpec AWS Las revisiones Lambda se pueden almacenar en buckets de Amazon S3. EC2/Las revisiones locales se almacenan en depósitos o repositorios de Amazon S3. GitHub En el caso de Amazon S3, una revisión se identifica de forma exclusiva mediante su clave de objeto de Amazon S3 y su ETag versión o ambas. GitHubEn efecto, una revisión se identifica de forma exclusiva por su ID de confirmación.

Rol de servicio

Un rol de servicio es un IAM rol que otorga permisos a un AWS servicio para que pueda acceder a AWS los recursos. Las políticas que se adjuntan a la función de servicio determinan a qué AWS recursos puede acceder el servicio y las acciones que puede realizar con esos recursos. Para CodeDeploy, un rol de servicio se usa para lo siguiente:

  • Para leer las etiquetas aplicadas a las instancias o los nombres de los grupos de Amazon EC2 Auto Scaling asociados a las instancias. Esto le CodeDeploy permite identificar las instancias en las que puede implementar aplicaciones.

  • Para realizar operaciones en instancias, grupos de Amazon EC2 Auto Scaling y balanceadores de carga de Elastic Load Balancing.

  • Publicar información en los SNS temas de Amazon para que se puedan enviar notificaciones cuando se produzcan eventos de implementación o instancia específicos.

  • Para recuperar información sobre CloudWatch las alarmas a fin de configurar la supervisión de las alarmas para las implementaciones.

Para obtener más información, consulte Paso 2: Crear un rol de servicio para CodeDeploy.

Revisión de destino

Una revisión de destino es la versión más reciente de la revisión de la aplicación que ha cargado en su repositorio y que desea implementar en las instancias de un grupo de implementación. Es decir, revisión de la aplicación que se va a incluir en la implementación actual. También es la revisión que se extrae para las implementaciones automáticas.

Otros componentes

Para obtener información sobre otros componentes del CodeDeploy flujo de trabajo, consulte los temas siguientes: