

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.

# Trabajar con instancias de Amazon EC2 para CodeDeploy
<a name="instances-ec2"></a>

Una instancia de Amazon EC2 es un entorno informático virtual que se crea y configura mediante Amazon Elastic Compute Cloud. Amazon EC2 proporciona una capacidad informática escalable en la AWS nube. Puede usar Amazon EC2 para lanzar tantos o tan pocos servidores virtuales como necesite para sus CodeDeploy implementaciones.

Para obtener más información acerca de Amazon EC2, consulte la [https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/).

Las instrucciones de esta sección muestran cómo crear y configurar instancias de Amazon EC2 para usarlas en sus CodeDeploy implementaciones.

**Topics**
+ [Cree una instancia de Amazon EC2 para CodeDeploy](instances-ec2-create.md)
+ [Crear una instancia de Amazon EC2 (plantilla)CloudFormation](instances-ec2-create-cloudformation-template.md)
+ [Configuración de una instancia de Amazon EC2](instances-ec2-configure.md)

# Cree una instancia de Amazon EC2 para CodeDeploy (AWS CLI o una consola Amazon EC2)
<a name="instances-ec2-create"></a>

Estas instrucciones le muestran cómo lanzar una nueva instancia de Amazon EC2 configurada para su uso en CodeDeploy implementaciones.

Puede utilizar nuestra CloudFormation plantilla para lanzar una instancia de Amazon EC2 que ejecute Amazon Linux o Windows Server y que ya esté configurada para su uso en CodeDeploy las implementaciones. No proporcionamos una CloudFormation plantilla para las instancias de Amazon EC2 que ejecutan Ubuntu Server o Red Hat Enterprise Linux (RHEL). Si desea conocer otras alternativas al uso de la plantilla, consulte [Trabajar con instancias para CodeDeploy](instances.md).

Puede utilizar la consola Amazon EC2 o las API de Amazon EC2 para lanzar una instancia de Amazon EC2. AWS CLI

## Lanzamiento de una instancia de Amazon EC2 (consola)
<a name="instances-ec2-create-console"></a>

### Requisitos previos
<a name="instances-ec2-create-console-prerequisites"></a>

Si aún no lo ha hecho, siga las instrucciones [Empezar con CodeDeploy](getting-started-codedeploy.md) para configurar AWS CLI y crear un perfil de instancia de IAM.

### Lanzamiento de una instancia de Amazon EC2
<a name="instances-ec2-create-console-steps"></a>

1. Inicie sesión en la consola Amazon EC2 Consola de administración de AWS y ábrala en. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. En el panel de navegación, elija **Instances (Instancias)** y seleccione **Launch Instance (Lanzar instancia)**.

1. En la página **Step 1: Choose an Amazon Machine Image (AMI) (Paso 1: Elegir una imagen de máquina de Amazon [AMI])** de la pestaña **Quick Start (Inicio rápido)**, busque el sistema operativo y la versión que quiera usar y luego elija **Select (Seleccionar)**. Debe elegir un sistema operativo AMI Amazon EC2 compatible con. CodeDeploy Para obtener más información, consulte [Sistemas operativos compatibles con el agente CodeDeploy](codedeploy-agent.md#codedeploy-agent-supported-operating-systems).

1. En la página **Paso 2: Elegir un tipo de instancia**, elija cualquier tipo de instancia de Amazon EC2 disponible y seleccione **Siguiente: Configurar los detalles de la instancia**.

1. En la página **Paso 3: Configurar los detalles de la instancia**, en la lista **IAM role** (Rol de IAM), elija el rol de instancia que ha creado en [Paso 4: Crear un perfil de instancia de IAM para las instancias de Amazon EC2](getting-started-create-iam-instance-profile.md). Si ha utilizado el nombre de rol sugerido, elija **CodeDeployDemo-EC2-Instance-Profile**. Si ha creado su propio nombre de rol, selecciónelo.
**nota**  
Si una nube privada virtual (VPC) predeterminada no aparece en la lista **Red**, debe elegir o crear una VPC y una subred de Amazon. Elija **Crear nueva VPC** o **Crear nueva subred** o ambas opciones. Para obtener más información, consulte [VPC y subredes](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html).

1. Elija **Siguiente: Agregar almacenamiento**.

1. Deje la página **Paso 4: Agregar almacenamiento** sin cambiar y elija **Siguiente: Añadir etiquetas**.

1. En la página **Paso 5: Añadir etiquetas**, elija **Añadir etiqueta**. 

1.  En el cuadro **Clave**, escriba **Name**. En el cuadro **Valor**, escriba **CodeDeployDemo**. 
**importante**  
El contenido de los cuadros **Clave** y **Valor** distingue entre mayúsculas y minúsculas.

1. Elija **Siguiente: Configurar un grupo de seguridad**.

1. En la página **Paso 6: Configurar un grupo de seguridad**, deje la opción **Crear un grupo de seguridad nuevo** seleccionada.

   Se configura un rol de SSH predeterminado para instancias de Amazon EC2 que ejecutan Amazon Linux, Ubuntu Server o RHEL. Se configura un rol de RDP predeterminado para instancias de Amazon EC2 que ejecutan Windows Server.

1. Si desea abrir el puerto HTTP, elija el botón **Add Rule (Añadir regla)** y en la lista desplegable **Type (Tipo)**, elija **HTTP**. Acepte el valor **Source (Origen)** predeterminado de **Custom 0.0.0.0/0 (Personalizado 0.0.0.0/0)** y luego elija **Review and Launch (Revisar y lanzar)**.
**nota**  
**En un entorno de producción, recomendamos restringir el acceso a los puertos SSH, RDP y HTTP, en lugar de especificar Anywhere 0.0.0.0/0.** CodeDeploy no requiere acceso a los puertos sin restricciones ni acceso HTTP. Para obtener más información, consulte [Sugerencias para proteger la instancia de Amazon EC2](https://aws.amazon.com/articles/1233).

   Si aparece el cuadro de diálogo **Boot from General Purpose (SSD) (Arrancar desde uso general [SSD])**, siga las instrucciones y luego seleccione **Next (Siguiente)**.

1. Deje la página **Step 7: Review Instance Launch (Paso 7: Revisar el lanzamiento de la instancia)** sin cambiar y elija **Launch (Lanzar)**.

1. En el cuadro de diálogo **Select an existing key pair or create a new key pair (Seleccionar par de claves existentes o crear nuevo par de claves)**, elija **Choose an existing key pair (Elegir un par de claves existente)** o **Create a new key pair (Crear un nuevo par de claves)**. Si ya ha configurado un par de claves de la instancia de Amazon EC2, puede elegirlo aquí.

   Si aún no tiene un par de claves de instancia de Amazon EC2, elija **Create a new key pair (Crear un nuevo par de claves)** y asígnele un nombre fácil de reconocer. Elija **Descargar par de claves** para descargar el par de claves de la instancia de Amazon EC2 en su equipo.
**importante**  
Debe disponer de un par de claves si desea obtener acceso a su instancia de Amazon EC2 con SSH o RDP.

1. Elija **Iniciar instancias**.

1. Elija el ID de su instancia de Amazon EC2. No continúe hasta que la instancia se haya lanzado y haya superado todas las comprobaciones.

### Instale el agente CodeDeploy
<a name="instances-ec2-create-console-agent"></a>

El CodeDeploy agente debe estar instalado en la instancia de Amazon EC2 antes de usarlo en CodeDeploy las implementaciones. Para obtener más información, consulte [Instale el agente CodeDeploy](codedeploy-agent-operations-install.md).

**nota**  
Puede configurar la instalación y las actualizaciones automáticas del CodeDeploy agente al crear el grupo de implementación en la consola.

## Lanzamiento de una instancia de Amazon EC2 (CLI)
<a name="instances-ec2-create-cli"></a>

### Requisitos previos
<a name="instances-ec2-create-cli-prerequisites"></a>

Si aún no lo ha hecho, siga las instrucciones [Empezar con CodeDeploy](getting-started-codedeploy.md) para configurar AWS CLI y crear un perfil de instancia de IAM.

### Lanzamiento de una instancia de Amazon EC2
<a name="instances-ec2-create-cli-steps"></a>

1. **Solo para Windows Server** Si va a crear una instancia de Amazon EC2 que ejecuta Windows Server, llame a los comandos **create-security-group** y **authorize-security-group-ingress** para crear un grupo de seguridad que permita el acceso RDP (que no se permite de forma predeterminada) y, en su caso, el acceso HTTP. Por ejemplo, para crear un grupo de seguridad denominado *CodeDeployDemo-Windows-Security-Group*, ejecute los siguientes comandos, de uno en uno:

   ```
   aws ec2 create-security-group --group-name CodeDeployDemo-Windows-Security-Group --description "For launching Windows Server images for use with CodeDeploy"
   ```

   ```
   aws ec2 authorize-security-group-ingress --group-name CodeDeployDemo-Windows-Security-Group --to-port 3389 --ip-protocol tcp --cidr-ip 0.0.0.0/0 --from-port 3389
   ```

   ```
   aws ec2 authorize-security-group-ingress --group-name CodeDeployDemo-Windows-Security-Group --to-port 80 --ip-protocol tcp --cidr-ip 0.0.0.0/0 --from-port 80
   ```
**nota**  
Para fines de demostración, estos comandos crean un grupo de seguridad que permite acceso ilimitado a RDP a través del puerto 3389 y, en su caso, a HTTP a través del puerto 80. Es recomendable que restrinja el acceso a los puertos HTTP y RDP. CodeDeploy no requiere acceso ilimitado a los puertos y no requiere acceso HTTP. Para obtener más información, consulte [Sugerencias para proteger la instancia de Amazon EC2](https://aws.amazon.com/articles/1233).

1. Llame al comando **run-instances** para crear y lanzar la instancia de Amazon EC2.

   Antes de llamar a este comando, debe recopilar lo siguiente: 
   + El ID de una imagen de máquina de Amazon (AMI) (*ami-id*) que utilizas para la instancia. Para obtener el ID, consulte [Búsqueda de una AMI de Linux](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html).
   + El nombre del tipo de instancia de Amazon EC2 (*instance-type*) que cree, por ejemplo. `t1.micro` Para ver una lista, consulte [Tipos de instancias de Amazon EC2](https://aws.amazon.com/ec2/instance-types/).
   + El nombre de un perfil de instancia de IAM con permiso para acceder al bucket de Amazon S3 donde se almacenan los archivos de instalación del CodeDeploy agente de su región. 

     Para obtener información sobre la creación de un perfil de instancia de IAM, consulte [Paso 4: Crear un perfil de instancia de IAM para las instancias de Amazon EC2](getting-started-create-iam-instance-profile.md).
   + El nombre de un par de claves de instancia de Amazon EC2 (*key-name*) para permitir el acceso SSH a una instancia de Amazon EC2 que ejecute Amazon Linux, Ubuntu Server o el acceso RHEL o RDP a una instancia de Amazon EC2 que ejecute Windows Server.
**importante**  
Escriba solo el nombre del par de claves, no la extensión de archivo del par de claves. Por ejemplo, *my-keypair*, no *my-keypair.pem*.

     [Para buscar el nombre de un par de claves, abra la consola Amazon EC2 en https://console.aws.amazon.com /ec2.](https://console.aws.amazon.com/ec2) En el panel de navegación, en **Network & Security (Red y seguridad)**, elija **Key Pairs (Pares de claves)** y anote el nombre del par de claves de la lista. 

     Para generar un par de claves, consulte [Crear un par de claves con Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#having-ec2-create-your-key-pair). Compruebe que crea el par de claves en una de las regiones que se encuentran en la lista de [Regiones y puntos de enlace](https://docs.aws.amazon.com/general/latest/gr/rande.html#codedeploy_region) de la *Referencia general de AWS*. De lo contrario, no podrá utilizar el par de claves de instancia de Amazon EC2 con. CodeDeploy

   **Para Amazon Linux, RHEL y Ubuntu Server**

   Para llamar al comando **run-instances** para lanzar una instancia de Amazon EC2 que ejecuta Amazon Linux, Ubuntu Server o RHEL y adjuntar el perfil de instancia de IAM que creó en [Paso 4: Crear un perfil de instancia de IAM para las instancias de Amazon EC2](getting-started-create-iam-instance-profile.md). Por ejemplo:

   ```
   aws ec2 run-instances \
     --image-id ami-id \
     --key-name key-name \
     --count 1 \
     --instance-type instance-type \
     --iam-instance-profile Name=iam-instance-profile
   ```
**nota**  
Este comando crea un grupo de seguridad predeterminado para la instancia de Amazon EC2 que permite el acceso a varios puertos, incluido acceso ilimitado a SSH a través del puerto 22 y, en su caso, a HTTP a través del puerto 80. Como práctica recomendada, recomendamos restringir el acceso únicamente a los puertos SSH y HTTP. CodeDeploy no requiere acceso a los puertos sin restricciones ni acceso a los puertos HTTP. Para obtener más información, consulte [Sugerencias para proteger la instancia de Amazon EC2](https://aws.amazon.com/articles/1233).

   **Para Windows Server**

   Para llamar al comando **run-instances** y lanzar una instancia de Amazon EC2 ejecutando Windows Server, así como adjuntar el perfil de instancia de IAM que ha creado en [Paso 4: Crear un perfil de instancia de IAM para las instancias de Amazon EC2](getting-started-create-iam-instance-profile.md) y especificar el nombre del grupo de seguridad que ha creado en el paso 1. Por ejemplo:

   ```
   aws ec2 run-instances --image-id ami-id --key-name key-name --count 1 --instance-type instance-type --iam-instance-profile Name=iam-instance-profile --security-groups CodeDeploy-Windows-Security-Group
   ```

   Estos comandos lanzan una sola instancia de Amazon EC2 con la AMI, el par de claves y el tipo de instancia especificados, con el perfil de instancia de IAM indicado, y ejecutan el script especificado durante el lanzamiento. 

1. Anote el valor de `InstanceID` en la salida. Si olvida este valor, puede obtenerlo más tarde si llama al comando **describe-instances** con el par de claves de la instancia de Amazon EC2.

   ```
   aws ec2 describe-instances --filters "Name=key-name,Values=keyName" --query "Reservations[*].Instances[*].[InstanceId]" --output text
   ```

   Use el ID de instancia para llamar al **create-tags** comando, que etiqueta la instancia de Amazon EC2 para que CodeDeploy pueda encontrarla más adelante durante una implementación. En el siguiente ejemplo, la etiqueta se denomina **CodeDeployDemo**, pero puede especificar cualquier etiqueta de instancia de Amazon EC2 que desee.

   ```
   aws ec2 create-tags --resources instance-id --tags Key=Name,Value=CodeDeployDemo
   ```

   Puede aplicar varias etiquetas a una instancia al mismo tiempo. Por ejemplo:

   ```
   aws ec2 create-tags --resources instance-id --tags Key=Name,Value=testInstance Key=Region,Value=West Key=Environment,Value=Beta
   ```

   Para verificar que la instancia de Amazon EC2 se ha lanzado y ha superado todas las comprobaciones, utilice el ID de instancia para llamar al comando **describe-instance-status**. 

   ```
   aws ec2 describe-instance-status --instance-ids instance-id --query "InstanceStatuses[*].InstanceStatus.[Status]" --output text 
   ```

Si la instancia se ha lanzado y ha superado todas las comprobaciones, aparece `ok` en la salida:

### Instale el agente CodeDeploy
<a name="instances-ec2-create-console-agent"></a>

El CodeDeploy agente debe estar instalado en la instancia de Amazon EC2 antes de usarlo en CodeDeploy las implementaciones. Para obtener más información, consulte [Instale el agente CodeDeploy](codedeploy-agent-operations-install.md).

**nota**  
Puede configurar la instalación y las actualizaciones automáticas del CodeDeploy agente al crear el grupo de implementación en la consola.

# Crear una instancia de Amazon EC2 para CodeDeploy (plantilla)CloudFormation
<a name="instances-ec2-create-cloudformation-template"></a>

Puede utilizar nuestra CloudFormation plantilla para lanzar rápidamente una instancia de Amazon EC2 que ejecute Amazon Linux o Windows Server. Puede usar la AWS CLI CodeDeploy consola o la AWS APIs para lanzar la instancia con la plantilla. Además de lanzar la instancia, la plantilla hace lo siguiente:
+ Indica CloudFormation que dé permiso a la instancia para participar en CodeDeploy las implementaciones.
+ Etiqueta la instancia para CodeDeploy poder encontrarla durante una implementación.
+ Instala y ejecuta el CodeDeploy agente en la instancia.

No es necesario que utilice nuestro CloudFormation para configurar una instancia de Amazon EC2. Si desea conocer otras alternativas, consulte [Trabajar con instancias para CodeDeploy](instances.md).

No proporcionamos una CloudFormation plantilla para las instancias de Amazon EC2 que ejecutan Ubuntu Server o Red Hat Enterprise Linux (RHEL).

**Topics**
+ [Antes de empezar](#instances-ec2-create-cloudformation-template-before)
+ [Lance una instancia de Amazon EC2 con la CloudFormation plantilla (consola)](#instances-ec2-create-cloudformation-template-console)
+ [Lance una instancia de Amazon EC2 con la CloudFormation plantilla ()AWS CLI](#instances-ec2-create-cloudformation-template-cli)

## Antes de empezar
<a name="instances-ec2-create-cloudformation-template-before"></a>

Antes de poder usar la CloudFormation plantilla para lanzar instancias de Amazon EC2, asegúrese de completar los siguientes pasos.

1. Asegúrese de haber creado un usuario administrativo, tal y como se describe en [Paso 1: Configurar](getting-started-setting-up.md). Compruebe que el usuario tiene los siguientes permisos mínimos y añada los que no estén presentes:
   + cloudformation:\$1
   + codedeploy:\$1
   + ec2:\$1
   + Soy: AddRoleToInstanceProfile
   + objetivo: CreateInstanceProfile
   + objetivo: CreateRole
   + objetivo: DeleteInstanceProfile
   + objetivo: DeleteRole
   + objetivo: DeleteRolePolicy
   + objetivo: GetRole
   + objetivo: DeleteRolePolicy
   + objetivo: PutRolePolicy
   + objetivo: RemoveRoleFromInstanceProfile

1. Asegúrese de tener un par de claves de instancia para permitir el acceso SSH a la instancia de Amazon EC2 que ejecuta Amazon Linux o el acceso RDP a la instancia que ejecuta Windows Server.

   [Para buscar el nombre de un par de claves, abra la consola Amazon EC2 en https://console.aws.amazon.com /ec2.](https://console.aws.amazon.com/ec2) En el panel de navegación, en **Network & Security (Red y seguridad)**, elija **Key Pairs (Pares de claves)** y anote el nombre del par de claves de la lista. 

   Para generar un nuevo par de claves, consulte [Crear un par de claves con Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#having-ec2-create-your-key-pair). Asegúrese de que crea el par de claves en una de las regiones que se encuentran en la lista de [Regiones y puntos de conexión](https://docs.aws.amazon.com/general/latest/gr/rande.html#codedeploy_region) de la *Referencia general de AWS*. De lo contrario, no puede utilizar el par de claves de la instancia con CodeDeploy.

## Lance una instancia de Amazon EC2 con la CloudFormation plantilla (consola)
<a name="instances-ec2-create-cloudformation-template-console"></a>

1. Inicie sesión Consola de administración de AWS y abra la CloudFormation consola en [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).
**importante**  
Inicia sesión en la Consola de administración de AWS con la misma cuenta que utilizaste. [Empezar con CodeDeploy](getting-started-codedeploy.md) En la barra de navegación, en el selector de regiones, elige una de las regiones que aparecen en [Región y los puntos finales](https://docs.aws.amazon.com/general/latest/gr/rande.html#codedeploy_region) en *Referencia general de AWS*. CodeDeploy solo admite estas regiones.

1. Elija **Crear pila**.

1. En **Elegir una plantilla**, seleccione **Especificar una URL de plantilla de Amazon S3**. En el cuadro, escriba la ubicación de la CloudFormation plantilla para su región y, a continuación, seleccione **Siguiente**.  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/codedeploy/latest/userguide/instances-ec2-create-cloudformation-template.html)

1. En el cuadro **Stack name (Nombre de la pila)**, escriba un nombre para la pila (por ejemplo, **CodeDeployDemoStack**).

1. En **Parameters (Parámetros)**, escriba lo siguiente y seleccione **Next (Siguiente)**.
   + Para **InstanceCount**, escriba el número de instancias que desea lanzar. (Le recomendamos que deje el valor predeterminado, **1**).
   + Para **InstanceType**, escriba el tipo de instancia que desee lanzar (o deje **t1.micro** como valor predeterminado).
   + Para **KeyPairName**, escriba el nombre del key pair de la instancia. Escriba solo el nombre del par de claves, no la extensión de archivo del par de claves.
   + En **OperatingSystem**Box, escriba **Windows** para lanzar instancias que ejecuten Windows Server (o deje **Linux** como predeterminado).
   + Para **SSHLocation**, escriba el intervalo de direcciones IP que se utilizará para conectarse a la instancia mediante SSH o RDP (o deje el valor predeterminado **0.0.0.0/0**).
**importante**  
El valor predeterminado de se proporciona únicamente con fines de **0.0.0.0/0** demostración. CodeDeploy no requiere que las instancias de Amazon EC2 tengan acceso ilimitado a los puertos. Es recomendable que restrinja el acceso a los puertos SSH (y HTTP). Para obtener más información, consulte [Sugerencias para proteger la instancia de Amazon EC2](https://aws.amazon.com/articles/1233).
   + Para **TagKey**ello, escriba la etiqueta de instancia que la clave CodeDeploy utilizará para identificar las instancias durante la implementación (o deje el **nombre** predeterminado).
   + Para **TagValue**, escriba el valor de la etiqueta de instancia que CodeDeploy se utilizará para identificar las instancias durante la implementación (o deje el valor predeterminado **CodeDeployDemo**).

1. En la página **Options (Opciones)**, deje las casillas de opción vacías y elija **Next (Siguiente)**.
**importante**  
CloudFormation las etiquetas son diferentes de las CodeDeploy etiquetas. CloudFormation usa etiquetas para simplificar la administración de su infraestructura. CodeDeploy utiliza etiquetas para identificar las instancias de Amazon EC2. Ha especificado etiquetas de CodeDeploy en la página **Specify Parameters (Especificar parámetros)**.

1. **En la página de **revisión**, en **Capacidades**, seleccione la casilla **Acepto que CloudFormation podría crear recursos de IAM** y, a continuación, elija Crear.**

   **Una vez CloudFormation creada la pila y lanzado las instancias de Amazon EC2, en la CloudFormation consola, se mostrará **CREATE\$1COMPLETE** en la columna Estado.** Este proceso puede tardar varios minutos.

Para comprobar que el CodeDeploy agente se está ejecutando en las instancias de Amazon EC2, consulte y, a continuación[Gestión de las operaciones CodeDeploy de los agentes](codedeploy-agent-operations.md), continúe con. [Cree una aplicación con CodeDeploy](applications-create.md)

## Lance una instancia de Amazon EC2 con la CloudFormation plantilla ()AWS CLI
<a name="instances-ec2-create-cloudformation-template-cli"></a>

1. Utilice nuestra CloudFormation plantilla en una llamada al **create-stack** comando. Esta pila lanzará una nueva instancia de Amazon EC2 con el CodeDeploy agente instalado.

   Para lanzar una instancia de Amazon EC2 que ejecute Amazon Linux:

   ```
   aws cloudformation create-stack \
     --stack-name CodeDeployDemoStack \
     --template-url templateURL \
     --parameters ParameterKey=InstanceCount,ParameterValue=1 ParameterKey=InstanceType,ParameterValue=t1.micro \
       ParameterKey=KeyPairName,ParameterValue=keyName ParameterKey=OperatingSystem,ParameterValue=Linux \
       ParameterKey=SSHLocation,ParameterValue=0.0.0.0/0 ParameterKey=TagKey,ParameterValue=Name \
       ParameterKey=TagValue,ParameterValue=CodeDeployDemo \
     --capabilities CAPABILITY_IAM
   ```

   Para lanzar una instancia de Amazon EC2 que ejecute Windows Server: 

   ```
   aws cloudformation create-stack --stack-name CodeDeployDemoStack --template-url template-url --parameters ParameterKey=InstanceCount,ParameterValue=1 ParameterKey=InstanceType,ParameterValue=t1.micro ParameterKey=KeyPairName,ParameterValue=keyName ParameterKey=OperatingSystem,ParameterValue=Windows ParameterKey=SSHLocation,ParameterValue=0.0.0.0/0 ParameterKey=TagKey,ParameterValue=Name ParameterKey=TagValue,ParameterValue=CodeDeployDemo --capabilities CAPABILITY_IAM
   ```

   *keyName*es el nombre del key pair de la instancia. Escriba solo el nombre del par de claves, no la extensión de archivo del par de claves.

   *template-url*es la ubicación de la CloudFormation plantilla para su región:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/codedeploy/latest/userguide/instances-ec2-create-cloudformation-template.html)

   Este comando crea una CloudFormation pila denominada**CodeDeployDemoStack**, utilizando la CloudFormation plantilla del bucket de Amazon S3 especificado. La instancia de Amazon EC2 se basa en el tipo de instancia t1.micro, pero puede utilizar cualquier tipo. Está etiquetada con el valor **CodeDeployDemo**, pero se puede etiquetar con cualquier valor. Se le ha aplicado el par de claves de instancia especificado.

1. Llama al **describe-stacks** comando para comprobar que la CloudFormation pila nombrada **CodeDeployDemoStack** se creó correctamente:

   ```
   aws cloudformation describe-stacks --stack-name CodeDeployDemoStack --query "Stacks[0].StackStatus" --output text
   ```

   No continúe hasta que se devuelva el valor `CREATE_COMPLETE`.

Para comprobar que el CodeDeploy agente se está ejecutando en la instancia Amazon EC2, consulte y, a continuación[Gestión de las operaciones CodeDeploy de los agentes](codedeploy-agent-operations.md), continúe con. [Cree una aplicación con CodeDeploy](applications-create.md)

# Configurar una instancia de Amazon EC2 con la que trabajar CodeDeploy
<a name="instances-ec2-configure"></a>

Estas instrucciones muestran cómo configurar una instancia de Amazon EC2 que ejecute Amazon Linux, Ubuntu Server, Red Hat Enterprise Linux (RHEL) o Windows Server para utilizarla en las implementaciones. CodeDeploy 

**nota**  
Si no tiene una instancia de Amazon EC2, puede utilizar la CloudFormation plantilla para lanzar una que ejecute Amazon Linux o Windows Server. No proporcionamos una plantilla para Ubuntu Server o RHEL.

## Paso 1: Verificar que se haya asociado un perfil de instancia de IAM a la instancia de Amazon EC2
<a name="instances-ec2-configure-1-verify-instance-profile-attached"></a>

1. Inicie sesión en la consola Amazon EC2 Consola de administración de AWS y ábrala en. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. En el panel de navegación, bajo **Instances**, elija **Instances**.

1. Busque su instancia de Amazon EC2 en la lista y selecciónela.

1. En el panel de detalles de la pestaña **Description**, tome nota del valor del campo **Rol de IAM** y, a continuación, vaya a la siguiente sección.

   Si el campo está vacío, puede adjuntar a la instancia un perfil de instancia de IAM. Para obtener más información, consulte [Asociar un rol de IAM a una instancia](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#attach-iam-role).

## Paso 2: Verificar que el perfil de instancia de IAM asociado tiene los permisos de acceso correctos
<a name="instances-ec2-configure-2-verify-instance-profile-permissions"></a>

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Seleccione **Roles** en el panel de navegación.

1. Busque y elija el nombre de rol de IAM que anotó en el paso 4 de la sección anterior.
**nota**  
Si desea utilizar el rol de servicio generado por la CloudFormation plantilla en lugar del que creó siguiendo las instrucciones que se indican en[Paso 2: Crear un rol de servicio para CodeDeploy](getting-started-create-service-role.md), tenga en cuenta lo siguiente:  
En algunas versiones de nuestra CloudFormation plantilla, el nombre mostrado del perfil de instancia de IAM generado y adjunto a las instancias de Amazon EC2 no es el mismo que el nombre mostrado en la consola de IAM. Por ejemplo, el perfil de instancia de IAM podría tener un nombre de visualización de `CodeDeploySampleStack-expnyi6-InstanceRoleInstanceProfile-IK8J8A9123EX`, mientras que el perfil de la instancia de IAM en la consola de IAM podría tener un nombre de visualización de `CodeDeploySampleStack-expnyi6-InstanceRole-C5P33V1L64EX`.  
Para ayudarle a identificar el perfil de instancia en la consola de IAM, verá que el prefijo de `CodeDeploySampleStack-expnyi6-InstanceRole` es el mismo para ambos. Para obtener información acerca de por qué estos nombres de visualización podrían ser diferentes, consulte [Perfiles de instancia](https://docs.aws.amazon.com/IAM/latest/UserGuide/instance-profiles.html).

1. Seleccione la pestaña **Relaciones de confianza**. Si no hay ninguna entrada en **Entidades de confianza** que diga **The identity provider(s) ec2.amazonaws.com**, no puede utilizar esta instancia de Amazon EC2. Deténgase y cree una instancia de Amazon EC2 con la información de [Trabajar con instancias para CodeDeploy](instances.md).

   Si hay una entrada que dice **Los proveedores de identidad ec2.amazonaws.com y está** almacenando sus aplicaciones únicamente en GitHub repositorios, pase a. [Paso 3: Etiquetar la instancia de Amazon EC2](#instances-ec2-configure-3-tag-instance)

   Si hay una entrada que dice **The identity provider(s) ec2.amazonaws.com** y almacenará sus aplicaciones en buckets de Amazon S3, elija la pestaña **Permisos**.

1. Si hay una política en el área **Políticas de permisos**, amplíe la política y, a continuación, elija **Editar política**.

1. Seleccione la pestaña **JSON**. Si está almacenando sus aplicaciones en buckets de Amazon S3, asegúrese de que `"s3:Get*"` y `"s3:List*"` estén en la lista de acciones especificadas. 

   Puede tener un aspecto similar al siguiente:

   ```
   {"Statement":[{"Resource":"*","Action":[
     ... Some actions may already be listed here ...
     "s3:Get*","s3:List*"
     ... Some more actions may already be listed here ...
     ],"Effect":"Allow"}]}
   ```

   O puede tener un aspecto similar al siguiente:

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "s3:Get*",
           "s3:List*"
         ],
         "Resource": "*"
       }
     ]
   }
   ```

------

   Si ni `"s3:Get*"` ni `"s3:List*"` figuran en la lista de acciones especificadas, elija **Edit (Editar)** para añadirlas y, a continuación, elija **Save (Guardar)**. (Si ni `"s3:Get*"` ni `"s3:List*"` es la última acción de la lista, asegúrese de añadir una coma después de la acción, por lo tanto se valida el documento de la política).
**nota**  
Le recomendamos que restrinja esta política únicamente a los buckets de Amazon S3 a los que las instancias de Amazon EC2 deban tener acceso. Asegúrese de dar acceso a los buckets de Amazon S3 que contienen el CodeDeploy agente. De lo contrario, podría producirse un error cuando el CodeDeploy agente esté instalado o actualizado en las instancias. Para conceder al perfil de instancia de IAM acceso únicamente a algunos buckets del kit de CodeDeploy recursos de Amazon S3, utilice la siguiente política, pero elimine las líneas de los buckets a los que desee impedir el acceso:  

   ```
   {
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "s3:Get*",
           "s3:List*"
         ],
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-bucket/*",
           "arn:aws:s3:::aws-codedeploy-us-east-2/*",
           "arn:aws:s3:::aws-codedeploy-us-east-1/*",
           "arn:aws:s3:::aws-codedeploy-us-west-1/*",
           "arn:aws:s3:::aws-codedeploy-us-west-2/*",
           "arn:aws:s3:::aws-codedeploy-ca-central-1/*",
           "arn:aws:s3:::aws-codedeploy-eu-west-1/*",
           "arn:aws:s3:::aws-codedeploy-eu-west-2/*",
           "arn:aws:s3:::aws-codedeploy-eu-west-3/*",
           "arn:aws:s3:::aws-codedeploy-eu-central-1/*",
           "arn:aws:s3:::aws-codedeploy-eu-central-2/*",
           "arn:aws:s3:::aws-codedeploy-eu-north-1/*",
           "arn:aws:s3:::aws-codedeploy-eu-south-1/*",
           "arn:aws:s3:::aws-codedeploy-eu-south-2/*",
           "arn:aws:s3:::aws-codedeploy-il-central-1/*",
           "arn:aws:s3:::aws-codedeploy-ap-east-1/*",
           "arn:aws:s3:::aws-codedeploy-ap-northeast-1/*",
           "arn:aws:s3:::aws-codedeploy-ap-northeast-2/*",
           "arn:aws:s3:::aws-codedeploy-ap-northeast-3/*",
           "arn:aws:s3:::aws-codedeploy-ap-southeast-1/*",        
           "arn:aws:s3:::aws-codedeploy-ap-southeast-2/*",
           "arn:aws:s3:::aws-codedeploy-ap-southeast-3/*",
           "arn:aws:s3:::aws-codedeploy-ap-southeast-4/*",
           "arn:aws:s3:::aws-codedeploy-ap-south-1/*",
           "arn:aws:s3:::aws-codedeploy-ap-south-2/*",
           "arn:aws:s3:::aws-codedeploy-me-central-1/*",
           "arn:aws:s3:::aws-codedeploy-me-south-1/*",
           "arn:aws:s3:::aws-codedeploy-sa-east-1/*"
         ]
       }
     ]
   }
   ```

## Paso 3: Etiquetar la instancia de Amazon EC2
<a name="instances-ec2-configure-3-tag-instance"></a>

Para obtener instrucciones sobre cómo etiquetar la instancia de Amazon EC2 para que CodeDeploy pueda encontrarla durante una implementación, consulte [Trabajar con etiquetas en la consola](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#Using_Tags_Console) y, a continuación, vuelva a esta página.

**nota**  
Puede etiquetar la instancia de Amazon EC2 con la clave y el valor que desee. Pero asegúrese de especificar esta clave y valor cuando realice una implementación en ella.

## Paso 4: Instalar el AWS CodeDeploy agente en la instancia de Amazon EC2
<a name="instances-ec2-configure-4-install-agent"></a>

Para obtener instrucciones sobre cómo instalar el CodeDeploy agente en la instancia Amazon EC2 y comprobar que se está ejecutando, consulte y, a continuación[Gestión de las operaciones CodeDeploy de los agentes](codedeploy-agent-operations.md), continúe con. [Cree una aplicación con CodeDeploy](applications-create.md)