Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Cree una canalización e implemente actualizaciones de artefactos en instancias locales mediante EC2 CodePipeline - Recomendaciones de AWS

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.

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.

Cree una canalización e implemente actualizaciones de artefactos en instancias locales mediante EC2 CodePipeline

Creado por Akash Kumar (AWS) y Sandeep Reddy Jogammagari (AWS)

Resumen

Este patrón proporciona ejemplos de código y pasos para crear una canalización en la nube de Amazon Web Services (AWS) e implementar artefactos actualizados en instancias locales de Amazon Elastic Compute Cloud (Amazon EC2) en AWS CodePipeline. El patrón se basa en la práctica de integración continua. Esta práctica automatiza la compilación y las pruebas de código con un sistema de control de versiones basado en Git. En este patrón, se crea y se clona un repositorio de código mediante AWS CodeCommit. A continuación, crea un proyecto y configura el código fuente mediante AWS CodeBuild. Por último, debe crear la aplicación y configurar su entorno de destino para las EC2 instancias locales mediante AWS CodeDeploy.

Requisitos previos y limitaciones

Requisitos previos 

  • Una cuenta de AWS activa

  • Etiquetas definidas por el usuario para identificar las EC2 instancias durante la implementación

  • CodeDeploy agente, instalado en las instancias EC2

  • El software de tiempo de ejecución necesario, instalado en EC2 las instancias

  • Amazon Corretto 8 para el kit de desarrollo de Java

  • Servidor web Apache Tomcat, instalado

  • Amazon CloudWatch Events (opcional)

  • Un par de claves para iniciar sesión en el servidor web (opcional)

  • Un proyecto de aplicación Apache Maven para una aplicación web

Arquitectura

El siguiente diagrama muestra un ejemplo de aplicación web Java que se implementa en EC2 instancias locales mediante la arquitectura de este patrón.

Ejemplo de aplicación web Java implementada en instancias EC2

En el diagrama, se muestra el siguiente flujo de trabajo:

  1. El desarrollador confirma los cambios de código en un repositorio CodeCommit Git privado.

  2. CodePipeline CodeBuild se utiliza para iniciar la compilación y añadir nuevos artefactos que estén listos para su implementación en el bucket de Amazon Simple Storage Service (Amazon S3).

  3. CodePipeline utiliza el CodeDeploy agente para preinstalar todas las dependencias necesarias para los cambios en los artefactos de implementación.

  4. CodePipeline usa el CodeDeploy agente para implementar los artefactos del depósito de S3 en las instancias de destino. EC2 Si está habilitada, CloudWatch Events puede iniciar automáticamente la canalización cuando se produce un cambio en el código fuente.

Pila de tecnología

  • CodeBuild

  • CodeCommit

  • CodeDeploy

  • CodePipeline

  • CloudWatch Eventos (opcional)

Herramientas

  • AWS CodeBuild es un servicio de compilación totalmente gestionado que le ayuda a compilar código fuente, ejecutar pruebas unitarias y producir artefactos listos para su implementación. CodeBuild compila su código fuente, ejecuta pruebas unitarias y produce artefactos listos para su implementación.

  • AWS CodeCommit es un servicio de control de versiones que le ayuda a almacenar y gestionar repositorios de Git de forma privada, sin necesidad de gestionar su propio sistema de control de código fuente.

  • AWS CodeDeploy automatiza las implementaciones en Amazon Elastic Compute Cloud EC2 (Amazon) o en instancias locales, funciones de AWS Lambda o servicios de Amazon Elastic Container Service (Amazon ECS).

  • AWS le CodePipeline ayuda a modelar y configurar rápidamente las diferentes etapas de una versión de software y a automatizar los pasos necesarios para publicar cambios de software de forma continua.

Código

Este patrón incluye los siguientes archivos adjuntos:

  • buildspec.yml— Este archivo especifica las acciones necesarias CodeBuild para construir y crear un artefacto para su despliegue.

  • appspec.yml— Este archivo especifica las acciones necesarias para CodeDeploy crear una aplicación y configurar un entorno de destino para las instancias locales EC2 .

  • install_dependencies.sh – Este archivo instala las dependencias del servidor web Apache Tomcat.

  • start_server.sh – Este archivo inicia el servidor web Apache Tomcat.

  • stop_server.sh – Este archivo detiene el servidor web Apache Tomcat.

Epics

TareaDescripciónHabilidades requeridas

Cree el repositorio.

Cree un CodeCommit repositorio.

Administrador de sistemas de AWS

Clonar el repositorio.

Conéctese al CodeCommit repositorio clonando el repositorio.

Desarrollador de aplicaciones

Envíe el código fuente al repositorio remoto.

  1. Crear una confirmación para añadir los archivos buildspec.yml y appspec.yml a su repositorio local.

  2. Envía la confirmación de tu repositorio local al CodeCommit repositorio remoto.

Desarrollador de aplicaciones

Configurar el repositorio de código

TareaDescripciónHabilidades requeridas

Cree el repositorio.

Cree un CodeCommit repositorio.

Administrador de sistemas de AWS

Clonar el repositorio.

Conéctese al CodeCommit repositorio clonando el repositorio.

Desarrollador de aplicaciones

Envíe el código fuente al repositorio remoto.

  1. Crear una confirmación para añadir los archivos buildspec.yml y appspec.yml a su repositorio local.

  2. Envía la confirmación de tu repositorio local al CodeCommit repositorio remoto.

Desarrollador de aplicaciones
TareaDescripciónHabilidades requeridas

Cree un proyecto de compilación.

  1. Inicie sesión en la consola de administración de AWS, abra la CodeBuild consola de AWS y, a continuación, elija Create build project.

  2. En Nombre del proyecto, introduzca el nombre de su proyecto.

  3. Como proveedor de código fuente, elija AWS CodeCommit.

  4. En Repositorio, seleccione el repositorio en el que desee compilar la canalización de código.

  5. Para Imagen de entorno, elija Imagen administrada o Imagen personalizada.

  6. En Operating system (Sistema operativo), elija Amazon Linux 2.

    nota

    Amazon Linux 2 está a punto de finalizar el soporte. Para obtener más información, consulte Amazon Linux 2 FAQs.

  7. Para RunTime(s), elija Estándar.

  8. En Imagen, elija aws/codebuild/amazonlinux2-aarch64-standard:2.0.

  9. En Version de la imagen, elija Utilizar siempre la imagen más reciente para esta versión del tiempo de ejecución.

  10. En Rol de servicio, seleccione Nuevo rol de servicio o Rol de servicio existente.

  11. En Especificaciones de compilación, elija Usar un archivo de especificaciones de compilación o Insertar comandos de compilación.

  12. (Opcional) Seleccione Añadir artefacto para configurar los artefactos.

  13. (Opcional) Para subir los registros de salida de compilaciones a Amazon CloudWatch, selecciona CloudWatch logs.

  14. Elija Crear el proyecto de compilación.

Administrador de AWS, desarrollador de aplicaciones

Crea un CodeBuild proyecto para la aplicación

TareaDescripciónHabilidades requeridas

Cree un proyecto de compilación.

  1. Inicie sesión en la consola de administración de AWS, abra la CodeBuild consola de AWS y, a continuación, elija Create build project.

  2. En Nombre del proyecto, introduzca el nombre de su proyecto.

  3. Como proveedor de código fuente, elija AWS CodeCommit.

  4. En Repositorio, seleccione el repositorio en el que desee compilar la canalización de código.

  5. Para Imagen de entorno, elija Imagen administrada o Imagen personalizada.

  6. En Operating system (Sistema operativo), elija Amazon Linux 2.

    nota

    Amazon Linux 2 está a punto de finalizar el soporte. Para obtener más información, consulte Amazon Linux 2 FAQs.

  7. Para RunTime(s), elija Estándar.

  8. En Imagen, elija aws/codebuild/amazonlinux2-aarch64-standard:2.0.

  9. En Version de la imagen, elija Utilizar siempre la imagen más reciente para esta versión del tiempo de ejecución.

  10. En Rol de servicio, seleccione Nuevo rol de servicio o Rol de servicio existente.

  11. En Especificaciones de compilación, elija Usar un archivo de especificaciones de compilación o Insertar comandos de compilación.

  12. (Opcional) Seleccione Añadir artefacto para configurar los artefactos.

  13. (Opcional) Para subir los registros de salida de compilaciones a Amazon CloudWatch, selecciona CloudWatch logs.

  14. Elija Crear el proyecto de compilación.

Administrador de AWS, desarrollador de aplicaciones
TareaDescripciónHabilidades requeridas

Cree la aplicación.

  1. Inicie sesión en la consola de administración de AWS, abra la CodeDeploy consola de AWS y, a continuación, seleccione Crear aplicación.

  2. En Nombre de la aplicación, especifique un nombre para su aplicación.

  3. Para la plataforma informática, elija EC2/On-premises.

  4. Seleccione Crear aplicación y, a continuación, seleccione Crear grupo de implementación.

  5. En Nombre del grupo de implementación, introduzca un nombre.

  6. nota

    Cree un rol de servicio para. CodeDeploy : El rol de servicio debe tener permisos para conceder CodeDeploy acceso al entorno de destino.

  7. En Rol de servicio, seleccione la función de servicio que creó en el paso 6.

  8. Para el Tipo de implementación, seleccione Presencial o Azul/Verde en función de los requisitos de su empresa.

  9. Para la Configuración del entorno, seleccione las opciones que cumplan sus requisitos empresariales.

  10. (Opcional) Cree un grupo objetivo para su balanceador de carga por separado en la EC2 consola de Amazon y, a continuación, regrese a la página Crear grupo de implementación de la CodeDeploy consola de AWS para elegir el balanceador de carga y el grupo objetivo.

  11. Elija Crear grupo de implementación.

Administrador de sistemas de AWS, desarrollador de aplicaciones

Configure el despliegue de artefactos para instancias locales EC2

TareaDescripciónHabilidades requeridas

Cree la aplicación.

  1. Inicie sesión en la consola de administración de AWS, abra la CodeDeploy consola de AWS y, a continuación, seleccione Crear aplicación.

  2. En Nombre de la aplicación, especifique un nombre para su aplicación.

  3. Para la plataforma informática, elija EC2/On-premises.

  4. Seleccione Crear aplicación y, a continuación, seleccione Crear grupo de implementación.

  5. En Nombre del grupo de implementación, introduzca un nombre.

  6. nota

    Cree un rol de servicio para. CodeDeploy : El rol de servicio debe tener permisos para conceder CodeDeploy acceso al entorno de destino.

  7. En Rol de servicio, seleccione la función de servicio que creó en el paso 6.

  8. Para el Tipo de implementación, seleccione Presencial o Azul/Verde en función de los requisitos de su empresa.

  9. Para la Configuración del entorno, seleccione las opciones que cumplan sus requisitos empresariales.

  10. (Opcional) Cree un grupo objetivo para su balanceador de carga por separado en la EC2 consola de Amazon y, a continuación, regrese a la página Crear grupo de implementación de la CodeDeploy consola de AWS para elegir el balanceador de carga y el grupo objetivo.

  11. Elija Crear grupo de implementación.

Administrador de sistemas de AWS, desarrollador de aplicaciones
TareaDescripciónHabilidades requeridas

Cree la canalización.

  1. Inicie sesión en la consola de administración de AWS, abra la CodePipeline consola de AWS y, a continuación, elija Create pipeline.

  2. En Nombre de la canalización, especifique un nombre para la canalización.

  3. En Rol de servicio, seleccione Nuevo rol de servicio o Rol de servicio existente.

  4. Escriba un nombre para el rol en Nombre de rol.

  5. En la sección Configuración avanzada, en Tienda de artefactos, seleccione Ubicación predeterminada si desea que Amazon S3 cree un bucket y almacene los artefactos en el bucket. Para utilizar un bucket de S3 existente, elija Ubicación personalizada. Elija Next (Siguiente).

  6. Como proveedor de código fuente, elija AWS CodeCommit.

  7. En Nombre del repositorio, seleccione el repositorio que clonó anteriormente. En Nombre de rama, seleccione la rama de su código fuente.

  8. Para ver las opciones de detección de cambios, elige Amazon CloudWatch Events (recomendado) o AWS CodePipeline. Elija Next (Siguiente).

  9. Como proveedor de compilación, elija AWS CodeBuild.

  10. En Nombre del proyecto, elija el proyecto de compilación que creó en la sección Crear un CodeBuild proyecto para la aplicación de este patrón.

  11. Elija sus opciones de compilación y después elija Siguiente.

  12. Para Deploy provider, elija AWS CodeDeploy.

  13. Seleccione un nombre de aplicación y un grupo de implementación y, a continuación, seleccione Siguiente.

  14. Seleccione Create pipeline.

Administrador de sistemas de AWS, desarrollador de aplicaciones

Configurar la canalización

TareaDescripciónHabilidades requeridas

Cree la canalización.

  1. Inicie sesión en la consola de administración de AWS, abra la CodePipeline consola de AWS y, a continuación, elija Create pipeline.

  2. En Nombre de la canalización, especifique un nombre para la canalización.

  3. En Rol de servicio, seleccione Nuevo rol de servicio o Rol de servicio existente.

  4. Escriba un nombre para el rol en Nombre de rol.

  5. En la sección Configuración avanzada, en Tienda de artefactos, seleccione Ubicación predeterminada si desea que Amazon S3 cree un bucket y almacene los artefactos en el bucket. Para utilizar un bucket de S3 existente, elija Ubicación personalizada. Elija Next (Siguiente).

  6. Como proveedor de código fuente, elija AWS CodeCommit.

  7. En Nombre del repositorio, seleccione el repositorio que clonó anteriormente. En Nombre de rama, seleccione la rama de su código fuente.

  8. Para ver las opciones de detección de cambios, elige Amazon CloudWatch Events (recomendado) o AWS CodePipeline. Elija Next (Siguiente).

  9. Como proveedor de compilación, elija AWS CodeBuild.

  10. En Nombre del proyecto, elija el proyecto de compilación que creó en la sección Crear un CodeBuild proyecto para la aplicación de este patrón.

  11. Elija sus opciones de compilación y después elija Siguiente.

  12. Para Deploy provider, elija AWS CodeDeploy.

  13. Seleccione un nombre de aplicación y un grupo de implementación y, a continuación, seleccione Siguiente.

  14. Seleccione Create pipeline.

Administrador de sistemas de AWS, desarrollador de aplicaciones

Recursos relacionados

Conexiones

Para acceder al contenido adicional asociado a este documento, descomprima el archivo: attachment.zip

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.