Integración con otros servicios de AWS - 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.

Integración con otros servicios de AWS

CodeDeploy está integrado con los siguientes servicios de AWS:

Amazon CloudWatch

Amazon CloudWatch es un servicio de monitorización de recursos de la nube de AWS y las aplicaciones que ejecuta en AWS. Utilice Amazon CloudWatch para recopilar métricas y realizar su seguimiento, recopilar y monitorizar archivos de registro y establecer alarmas. CodeDeploy admite las siguientes herramientas de CloudWatch:

  • Alarmas de CloudWatch para monitorizar las implementaciones y detenerlas cuando las métricas de monitoreo especificadas superen o caigan por debajo de los umbrales que especifique en una regla de alarma de CloudWatch. Para utilizar la monitorización de alarmas, primero debe configurar una alarma en CloudWatch y, a continuación, añadirla a la aplicación o al grupo de implementación de CodeDeploy, en los que la implementación deba detenerse cuando la alarma se active.

    Más información:

  • Eventos de Amazon CloudWatch para detectar y reaccionar a cambios de estado de una instancia o una implementación en las operaciones de CodeDeploy. A continuación, en función de las reglas que cree, Eventos de CloudWatch invoca a una o varias acciones de destino cuando una implementación o una instancia entra en el estado especificado en una regla.

    Más información:

  • Registros de Amazon CloudWatch para monitorizar los tres tipos de registros creados por el agente de CodeDeploy sin necesidad de iniciar sesión en cada una de las instancias.

    Más información:

Amazon EC2 Auto Scaling

CodeDeploy admite Amazon EC2 Auto Scaling. Este servicio de AWS puede lanzar instancias de Amazon EC2 automáticamente en función de los criterios que especifique, por ejemplo:

  • Límites superados para la utilización de CPU especificada.

  • Lecturas o escrituras en disco.

  • Tráfico de red entrante o saliente durante un intervalo de tiempo especificado.

Puede escalar horizontalmente un grupo de instancias de Amazon EC2 cuando las necesite y, a continuación, utilizar CodeDeploy para implementar revisiones de aplicación automáticamente. Amazon EC2 Auto Scaling termina las instancias de Amazon EC2 cuando dejan de ser necesarias.

Más información:

Amazon Elastic Container Service

Puede utilizar CodeDeploy para implementar una aplicación en contenedor de Amazon ECS como un conjunto de tareas. CodeDeploy realiza una implementación azul/verde mediante la instalación de una versión actualizada de la aplicación como un nuevo conjunto de tareas de reemplazo. CodeDeploy desvía el tráfico de producción del conjunto de tareas 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 acerca de Amazon ECS, consulte 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 configuración controlada, lineal o todo a la vez. Para obtener más información acerca de las implementaciones de Amazon ECS, consulte Implementaciones en una plataforma de informática de Amazon ECS.

AWS CloudTrail

CodeDeploy está integrado con AWS CloudTrail. Este servicio captura las llamadas a la API realizadas por o en nombre de CodeDeploy en una cuenta de AWS y envía los archivos de registro al bucket de Amazon S3 que se especifique. CloudTrail captura las llamadas a la API de la consola de CodeDeploy, de los comandos de CodeDeploy a través de la AWS CLI o directamente desde las API de CodeDeploy. Con la información recopilada por CloudTrail, puede determinar la siguiente información:

  • La solicitud que se realizó a CodeDeploy.

  • La dirección IP de origen desde la que se realizó la solicitud.

  • Quién ha realizado la solicitud

  • Cuando se realizó.

Más información:

AWS Cloud9

AWS Cloud9 es un entorno de desarrollo integrado (IDE) online basado en la nube que puede utilizar para escribir, ejecutar, depurar e implementar código y solo necesita un navegador que esté instalado en una máquina con conexión a Internet. AWS Cloud9 cuenta con un editor de código, un depurador, un terminal y herramientas esenciales, como AWS CLI y Git.

  • Puede utilizar el IDE de AWS Cloud9 para ejecutar, depurar y crear código que esté en un repositorio de GitHub. Puede ver, modificar y guardar el código utilizando la ventana Environment (Entorno) de su IDE y las pestañas del editor. Cuando haya terminado, puede utilizar Git en la sesión de terminal de AWS Cloud9 para insertar cambios en el código en su repositorio de GitHub y, a continuación, utilizar AWS CodeDeploy para implementar sus actualizaciones. Para obtener más información acerca de cómo utilizar AWS Cloud9 con GitHub, consulte Ejemplo de GitHub para AWS Cloud9.

  • Puede utilizar el IDE de AWS Cloud9 para actualizar una función de AWS Lambda. A continuación, puede utilizar AWS CodeDeploy para crear una implementación que desplace tráfico a la nueva versión de su función AWS Lambda. Para obtener más información, consulte Trabajo con funciones de AWS Lambda en el entorno de desarrollo integrado (IDE) de AWS Cloud9.

Para obtener más información sobre AWS Cloud9, consulte Qué es AWS Cloud9 e Introducción a AWS Cloud9.

AWS CodePipeline

AWS CodePipeline es un servicio de entrega continua que permite modelar, visualizar y automatizar los pasos necesarios para lanzar software en un proceso de entrega continua. AWS CodePipeline le permite definir su propio proceso de lanzamiento para que el servicio compile, pruebe e implemente el código cada vez que cambie. Por ejemplo, puede tener tres grupos de implementaciones para una aplicación: Beta, Gamma y Prod. Puede configurar una canalización para que, cada vez que ocurra un cambio en el código fuente, las actualizaciones se implementen en cada uno de los grupos.

Puede configurar AWS CodePipeline de modo que se use CodeDeploy para implementar:

  • Código en instancias de Amazon EC2, instancias en las instalaciones o ambas.

  • Versiones de la función de AWS Lambda sin servidor.

Puede crear la aplicación de CodeDeploy, la implementación y el grupo de implementación a usar en una etapa de la acción de implementación, ya sea antes de crear la canalización o al usar el asistente Crear canalización.

Más información:

Modelo de aplicación sin servidor de AWS

AWS Serverless Application Model (AWS SAM) es un modelo para definir aplicaciones sin servidor. Amplía CloudFormation para ofrecer un modo simplificado de definir las funciones AWS Lambda, las API de Amazon API Gatewat y las tablas de Amazon DynamoDB necesarias para una aplicación sin servidor. Si ya utiliza AWS SAM, puede añadir preferencias de implementación para empezar a usar CodeDeploy para administrar la forma en que se desvía el tráfico durante la implementación de una aplicación de AWS Lambda.

Para obtener más información, consulte AWS Serverless Application Model.

Elastic Load Balancing

CodeDeploy admite Elastic Load Balancing, un servicio que distribuye el tráfico entrante de aplicaciones entre varias instancias de Amazon EC2.

Para las implementaciones de CodeDeploy, los equilibradores de carga impiden que el tráfico de Internet se enrute a instancias cuando estas no estén listas, se están implementando objetos en ellas o estas ya no se necesitan como parte de un entorno.

Más información: