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.
Paso 1: Crear y configurar el grupo de escalado automático
En este paso, creará un grupo de escalado automático que contenga una única instancia de Amazon EC2 de Amazon Linux, RHEL o Windows Server. En un paso posterior, indicará a Amazon EC2 Auto Scaling que añada otra instancia Amazon EC2, y CodeDeploy implementará la revisión en ella.
Temas
Para crear y configurar el grupo de escalado automático (CLI)
-
Llame al comando create-launch-template para crear una plantilla de lanzamiento de Amazon EC2.
Antes de invocar este comando, necesitará el ID de una AMI adecuada para este tutorial, representado por el marcador de posición
image-id. También necesitará el nombre de un par de claves de instancia de Amazon EC2 para permitir el acceso a la instancia de Amazon EC2, representado por el marcador de posiciónkey-name.Para obtener el ID de una AMI adecuada para este tutorial:
-
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/
. -
En el panel de navegación, en Instances, elija Instances y seleccione Launch Instance.
-
En la pestaña Inicio rápido de la página Elija una imagen de máquina de Amazon, anote el ID de la AMI junto a AMI de Amazon Linux 2, Red Hat Enterprise Linux 7.1, Ubuntu Server 14.04 LTS o Microsoft Windows Server 2012 R2.
nota
Si dispone de una versión personalizada de una AMI que sea compatible con CodeDeploy, elíjala aquí en lugar de buscarla en la pestaña Inicio rápido. Para obtener información sobre el uso de una AMI personalizada con CodeDeploy y Amazon EC2 Auto Scaling, consulte Uso de una AMI personalizada con CodeDeploy Amazon EC2 Auto Scaling.
Como par de claves de la instancia de Amazon EC2, indique el nombre del par de claves de su instancia de Amazon EC2.
Llame al comando create-launch-template.
En máquinas Linux, macOS o Unix locales:
aws ec2 create-launch-template \ --launch-template-name CodeDeployDemo-AS-Launch-Template \ --launch-template-data file://config.jsonEl contenido del archivo
config.json:{ "InstanceType":"t1.micro", "ImageId":"image-id", "IamInstanceProfile":{ "Name":"CodeDeployDemo-EC2-Instance-Profile" }, "KeyName":"key-name" }En los equipos locales con Windows:
aws ec2 create-launch-template --launch-template-name CodeDeployDemo-AS-Launch-Template --launch-template-data file://config.jsonEl contenido del archivo
config.json:{ "InstanceType":"t1.micro", "ImageId":"image-id", "IamInstanceProfile":{ "Name":"CodeDeployDemo-EC2-Instance-Profile" }, "KeyName":"key-name" }Estos comandos, junto con el archivo
config.json, crean una plantilla de lanzamiento de Amazon EC2 denominada CodeDeployDemo-as-Launch-Template para su grupo de escalado automático que se creará en un paso siguiente en función del tipo de instancia de Amazon EC2 t1.micro. En función de los datos introducidos paraImageId,IamInstanceProfileyKeyName, la plantilla de lanzamiento también especifica el ID de la AMI, el nombre del perfil de instancia asociado al rol de IAM que se va a transferir a las instancias en el momento del lanzamiento y el par de claves de Amazon EC2 que se debe utilizar al conectarse a las instancias. -
-
Llame al comando create-auto-scaling-group para crear un grupo de escalado automático. Necesitará el nombre de una de las zonas de disponibilidad de una de las regiones enumeradas en Regiones y puntos de conexión en la Referencia general de AWS, representada por el marcador de posición
availability-zone.nota
Para ver una lista de las zonas de disponibilidad de una región, ejecute este comando:
aws ec2 describe-availability-zones --regionregion-namePor ejemplo, para ver una lista con las zonas de disponibilidad de la región Oeste de EE. UU. (Oregón), llame al comando siguiente:
aws ec2 describe-availability-zones --region us-west-2Para obtener una lista de los identificadores de nombres de región, consulte Nombres de bucket del kit de recursos por región.
En máquinas Linux, macOS o Unix locales:
aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name CodeDeployDemo-AS-Group \ --launch-template CodeDeployDemo-AS-Launch-Template,Version='$Latest' \ --min-size 1 \ --max-size 1 \ --desired-capacity 1 \ --availability-zonesavailability-zone\ --tags Key=Name,Value=CodeDeployDemo,PropagateAtLaunch=trueEn los equipos locales con Windows:
aws autoscaling create-auto-scaling-group --auto-scaling-group-name CodeDeployDemo-AS-Group --launch-template LaunchTemplateName=CodeDeployDemo-AS-Launch-Template,Version="$Latest" --min-size 1 --max-size 1 --desired-capacity 1 --availability-zonesavailability-zone--tags Key=Name,Value=CodeDeployDemo,PropagateAtLaunch=trueEstos comandos crean un grupo de escalado automático denominado
CodeDeployDemo-AS-Groupen función del nombre de la plantilla de lanzamiento de Amazon EC2CodeDeployDemo-AS-Launch-Template. Este grupo de escalado automático tiene una única instancia de Amazon EC2 y se crea en la zona de disponibilidad especificada. Cada instancia de este grupo de escalado automático tendrá la etiquetaName=CodeDeployDemo. La etiqueta se usará al instalar el agente de CodeDeploy más adelante. -
Llame al comando describe-auto-scaling-groups con
CodeDeployDemo-AS-Group:aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names CodeDeployDemo-AS-Group --query "AutoScalingGroups[0].Instances[*].[HealthStatus, LifecycleState]" --output textNo continúe hasta que los valores devueltos indiquen
HealthyyInService. -
Las instancias del grupo de escalado automático deben tener instalado el agente de CodeDeploy para su uso en las implementaciones de CodeDeploy. Instale el agente de CodeDeploy mediante la llamada al comando create-association desde AWS Systems Manager con las etiquetas que se agregaron al crear el grupo de escalado automático.
aws ssm create-association \ --name AWS-ConfigureAWSPackage \ --targets Key=tag:Name,Values=CodeDeployDemo \ --parameters action=Install, name=AWSCodeDeployAgent \ --schedule-expression "cron(0 2 ? * SUN *)"Este comando crea una asociación en Systems Manager State Manager que instalará el agente de CodeDeploy en todas las instancias del grupo de escalado automático y, después, intentará actualizarlo todos los domingos por la mañana a las 2:00. Para obtener más información sobre el agente de CodeDeploy, consulte Trabajo con el agente de CodeDeploy. Para obtener más información acerca de Systems Manager, consulte ¿Qué es AWS Systems Manager?.
Para crear y configurar el grupo de escalado automático (consola)
-
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/
. -
En la barra de navegación global, asegúrese de que esté seleccionada una de las regiones enumeradas en Región y puntos de conexión en Referencia general de AWS. Los recursos de Amazon EC2 Auto Scaling están asociados a la región especificada y CodeDeploy solo se admite en determinadas regiones.
-
En el panel de navegación, en Instancias, seleccione Plantillas de lanzamiento.
-
Elija Crear plantilla de lanzamiento.
-
En Nombre y descripción de la plantilla de lanzamiento, para Nombre de plantilla de lanzamiento, introduzca
CodeDeployDemo-AS-Launch-Template. Deje los valores predeterminados para el resto de los campos. -
En el cuadro de diálogo Imagen de máquina de Amazon (AMI), haga clic en el menú desplegable situado debajo de AMI y elija una AMI que funcione con este tutorial:
-
En la pestaña Inicio rápido del menú desplegable AMI, elija uno de los siguientes: AMI de Amazon Linux 2, Red Hat Enterprise Linux 7.1, Ubuntu Server 14.04 LTS o Microsoft Windows Server 2012 R2.
nota
Si dispone de una versión personalizada de una AMI que sea compatible con CodeDeploy, elíjala aquí en lugar de buscarla en la pestaña Inicio rápido. Para obtener información sobre el uso de una AMI personalizada con CodeDeploy y Amazon EC2 Auto Scaling, consulte Uso de una AMI personalizada con CodeDeploy Amazon EC2 Auto Scaling.
-
-
En Tipo de instancia, seleccione el menú desplegable y elija t1.micro. Puede utilizar la barra de búsqueda para encontrarla más rápidamente.
-
En el cuadro de diálogo Par de claves (inicio de sesión), seleccione Elegir un par de claves existente. En la lista desplegable Seleccionar un par de claves, elija el par de claves de la instancia de Amazon EC2 que ha creado o utilizado en los pasos anteriores.
-
En el cuadro de diálogo Configuración de red, elija Nube pública virtual (VPC).
En el menú desplegable Grupos de seguridad, elija el grupo de seguridad que creó en la sección de requisitos previos del tutorial (
CodeDeployDemo-AS-SG). -
Amplíe el cuadro de diálogo de Detalles avanzados. En el menú desplegable de Perfil de instancia de IAM, seleccione el rol de IAM que creó anteriormente (
CodeDeployDemo-EC2-Instance-Profile) en Perfil de instancia de IAM.Deje el resto de las opciones predeterminadas.
-
Elija Crear plantilla de inicialización.
-
En el cuadro de diálogo Próximos pasos, elija Crear grupo de escalado automático.
-
En la página Elegir una plantilla de lanzamiento o configuración, para Nombre de grupo de escalado automático, ingrese
CodeDeployDemo-AS-Group. -
En el cuadro de diálogo Plantilla de lanzamiento, debe ingresar su plantilla de lanzamiento (
CodeDeployDemo-AS-Launch-Template); de lo contrario, selecciónela en el menú desplegable. Deje los valores predeterminados y elija Siguiente. -
En la página Elegir opciones de lanzamiento de las instancias, en Red, en la opción VPC, elija la VPC predeterminada. A continuación, en Zonas de disponibilidad y subredes, elija una subred predeterminada. Debe crear una VPC si no puede elegir la predeterminada. Para obtener más información, consulte Introducción a Amazon VPC.
-
En la sección Instance type requirements (Requisitos del tipo de instancia), utilice la configuración predeterminada para simplificar este paso. (No anule la plantilla de lanzamiento). En este tutorial, solo lanzará instancias bajo demanda con el tipo de instancia especificado en la plantilla de lanzamiento.
-
Elija Next (Siguiente) para ir a la página Configure advanced options (Configuración de opciones avanzadas).
-
Mantenga los valores predeterminados y elija Siguiente.
-
En la página Configurar el tamaño del grupo y las políticas de escalado, mantenga los valores predeterminados de Tamaño de grupo de 1. Elija Siguiente.
-
Omita el paso para configurar notificaciones y elija Siguiente.
-
En la página Añadir etiquetas, añada una etiqueta para utilizarla cuando instale el agente de CodeDeploy más adelante. Seleccione Agregar etiqueta.
-
En Clave, introduzca
Name. -
En Valor, escriba
CodeDeployDemo.
Elija Siguiente.
-
-
Revise la información del grupo de escalado automático en la página Revisión y luego elija Crear grupo de escalado automático.
-
En la barra de navegación, con Grupos de escalado automático seleccionado, elija
CodeDeployDemo-AS-Groupy luego seleccione la pestaña Administración de instancias. No continúe hasta que aparezca el valor InService en la columna Lifecycle y el valor Healthy en la columna Health Status. -
Instale el agente de CodeDeploy mediante los pasos descritos en Instalación del agente de CodeDeploy y utilizando las etiquetas de instancia de
Name=CodeDeployDemo.