

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 configuraciones de implementación en CodeDeploy
<a name="deployment-configurations"></a>

Una configuración de implementación es un conjunto de reglas y condiciones de éxito o fracaso que CodeDeploy utiliza durante una implementación. Estas reglas y condiciones son diferentes en función de si realiza la implementación en una plataforma de informática EC2/en las instalaciones, una plataforma de informática AWS Lambda o una plataforma de informática Amazon ECS. 

## Configuraciones de implementación en una plataforma de informática EC2/en las instalaciones
<a name="deployment-configuration-server"></a>



Cuando se realiza la implementación en una plataforma de computación EC2/en las instalaciones, la configuración de implementación especifica, a través de un valor mínimo de hosts en buen estado, el número o porcentaje de instancias que deben estar disponibles en cualquier momento durante una implementación.

Puede utilizar una de las tres configuraciones de despliegue predefinidas que proporciona AWS o crear una configuración de despliegue personalizada. Para obtener más información sobre la creación de configuraciones de implementación personalizadas, consulte [Cree una configuración de despliegue con CodeDeploy](deployment-configurations-create.md). Si no especifica una configuración de despliegue, CodeDeploy utiliza la CodeDeployDefault. OneAtATime configuración de despliegue.

Para obtener más información sobre cómo CodeDeploy monitorea y evalúa el estado de la instancia durante una implementación, consulte[CodeDeploy estado de la instancia](instances-health.md). Para ver una lista de las configuraciones de despliegue que ya están registradas en su AWS cuenta, consulte[Vea los detalles de la configuración de la implementación con CodeDeploy](deployment-configurations-view-details.md). 

### Configuraciones de implementación predefinidas para una plataforma de informática EC2/en las instalaciones
<a name="deployment-configurations-predefined"></a>

La siguiente tabla muestra las configuraciones de implementación predefinidas.

**nota**  
No hay configuraciones de implementación predefinidas que admitan la característica [zonal configuration](deployment-configurations-create.md#zonal-config) (que es la función que le permite especificar la cantidad de hosts en buen estado por zona de disponibilidad). Si desea utilizar esta característica, debe [crear su propia configuración de implementación](deployment-configurations-create.md).


****  

| Configuración de implementación | Description (Descripción) | 
| --- | --- | 
| CodeDeployDefault.AllAtOnce | **Implementaciones in situ**:Intenta implementar una revisión de aplicación en tantas instancias a la vez como sea posible. El estado de la implementación global se muestra como Realizado correctamente cuando la revisión de la aplicación se haya implementado en una o más instancias. El estado de la implementación global se muestra como Error cuando la revisión de la aplicación no se ha implementado en ninguna instancia. Utilizando un ejemplo de nueve instancias, CodeDeployDefault. AllAtOnce intenta realizar la implementación en las nueve instancias a la vez. La implementación global tiene éxito si se realiza de forma correcta incluso la implementación en una sola instancia. Devuelve un error solo si se produce un error en las implementaciones de las nueve instancias. **Implementaciones azul/verde**: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/codedeploy/latest/userguide/deployment-configurations.html) | 
| CodeDeployDefault.HalfAtATime |  **Implementaciones in situ**: Implementa hasta en la mitad de las instancias a la vez (redondeando a la baja). La implementación global tiene éxito si la revisión de la aplicación se implementa en al menos la mitad de las instancias (redondeando al alza). De lo contrario, la implementación produce un error. En el ejemplo de nueve instancias, se implementa hasta en cuatro instancias a la vez. La implementación global tiene éxito si la implementación es correcta en cinco o más instancias. De lo contrario, la implementación produce un error.   Si está implementando en instancias de varios grupos de Auto Scaling, CodeDeploy implementará hasta la mitad de las instancias a la vez, *independientemente del grupo de Auto Scaling en el que se encuentren*. Por ejemplo, supongamos que tiene dos grupos de escalado automático, `ASG1` y `ASG2`, cada uno con 10 instancias. En este escenario, CodeDeploy podría implementarse en 10 instancias en tan solo un momento `ASG1` y considerarlo un éxito, ya que se ha implementado en al menos la mitad de las instancias.  **Implementaciones azul/verde**:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/codedeploy/latest/userguide/deployment-configurations.html)  | 
| CodeDeployDefault.OneAtATime |  **Implementaciones in situ**: Implementa la revisión de la aplicación en solo una instancia cada vez. En el caso de grupos de implementaciones que contengan más de una instancia: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/codedeploy/latest/userguide/deployment-configurations.html) En el caso de grupos de implementaciones que contengan una única instancia, la implementación global solo tiene éxito si la implementación en la única instancia es correcta. **Implementaciones azul/verde**: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/codedeploy/latest/userguide/deployment-configurations.html)  | 

## Configuraciones de implementación en una plataforma de informática de Amazon ECS
<a name="deployment-configuration-ecs"></a>

Cuando la implementación se realiza en una plataforma de informática de Amazon ECS, la configuración de implementación especifica cómo se desvía el tráfico al conjunto de tareas actualizado de Amazon ECS. Puede cambiar el tráfico mediante una configuración **canaria**, **lineal** o de **all-at-once**despliegue. Para obtener más información, consulte [Configuración de implementación](primary-components.md#primary-components-deployment-configuration).

También puede crear su propia configuración de implementación "canary" o "linear". Para obtener más información, consulte [Cree una configuración de despliegue con CodeDeploy](deployment-configurations-create.md).

### Configuraciones de implementación predefinidas para una plataforma de informática de Amazon ECS
<a name="deployment-configurations-predefined-ecs"></a>

La siguiente tabla muestra las configuraciones predefinidas disponibles para implementaciones de Amazon ECS.

**nota**  
Cuando se utiliza un Equilibrador de carga de red, solo se admite la configuración de implementación predefinida `CodeDeployDefault.ECSAllAtOnce`.


****  

| Configuración de implementación | Description (Descripción) | 
| --- | --- | 
|  CodeDeployDefault. ECSLinear10PercentEvery1 minuto  |  Desvía el 10 por ciento del tráfico cada minuto hasta que se desvía todo el tráfico.  | 
|  CodeDeployDefault. ECSLinear10PercentEvery3 minutos   |  Desvía el 10 por ciento del tráfico cada tres minutos hasta que se desvía todo el tráfico.  | 
|  CodeDeployDefault. ECSCanary10Porcentaje de 5 minutos  |  Desvía el 10 por ciento del tráfico en el primer incremento. El 90 por ciento restante se implementa cinco minutos más tarde.  | 
| CodeDeployDefault. ECSCanary10Porcentaje de 15 minutos |  Desvía el 10 por ciento del tráfico en el primer incremento. El 90 por ciento restante se despliega 15 minutos después.  | 
|  CodeDeployDefault.ECSAllAtOnce  |  Desvía todo el tráfico al contenedor de Amazon ECS actualizado a la vez.  | 

## Configuraciones de implementación para implementaciones CloudFormation azul/verde (Amazon ECS)
<a name="deployment-configuration-cfn-bg"></a>

 Cuando se implementa en una plataforma informática de Amazon ECS mediante implementaciones CloudFormation azul/verde, la configuración de la implementación especifica cómo se traslada el tráfico al contenedor de Amazon ECS actualizado. Puede transferir el tráfico mediante una configuración **canaria**, **lineal** o **all-at-once**de implementación. Para obtener más información, consulte [Configuración de implementación](primary-components.md#primary-components-deployment-configuration).

Con las implementaciones CloudFormation azules o verdes, no puede crear su propia configuración de implementación lineal o lineal personalizada. Para step-by-step obtener instrucciones sobre cómo CloudFormation administrar las blue/green implementaciones de Amazon ECS, consulte [Automatizar las blue/green implementaciones de ECS CodeDeploy mediante el uso CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/blue-green.html) en la Guía del *CloudFormation usuario*. 

**nota**  
La administración de blue/green las implementaciones de Amazon ECS con no CloudFormation está disponible en las regiones de Europa (Milán), África (Ciudad del Cabo) y Asia Pacífico (Osaka).

## Configuraciones de implementación en una plataforma AWS Lambda informática
<a name="deployment-configuration-lambda"></a>

Cuando se implementa en una plataforma de procesamiento AWS Lambda, la configuración de implementación especifica la forma en que el tráfico se traslada a las nuevas versiones de la función Lambda de la aplicación. Puede transferir el tráfico mediante una configuración **canaria**, **lineal** o de **all-at-once**despliegue. Para obtener más información, consulte [Configuración de implementación](primary-components.md#primary-components-deployment-configuration).

También puede crear su propia configuración de implementación "canary" o "linear". Para obtener más información, consulte [Cree una configuración de despliegue con CodeDeploy](deployment-configurations-create.md).

### Configuraciones de implementación predefinidas para una plataforma de AWS Lambda cómputo
<a name="deployment-configurations-predefined-lambda"></a>

La siguiente tabla muestra las configuraciones predefinidas disponibles para implementaciones de AWS Lambda .


****  

| Configuración de implementación | Description (Descripción) | 
| --- | --- | 
|  CodeDeployDefault. LambdaCanary10 por ciento, 5 minutos  |  Desvía el 10 por ciento del tráfico en el primer incremento. El 90 por ciento restante se implementa cinco minutos más tarde.  | 
|  CodeDeployDefault. LambdaCanary10 por ciento, 10 minutos  |  Desvía el 10 por ciento del tráfico en el primer incremento. El 90 por ciento restante se implementa 10 minutos más tarde.  | 
|  CodeDeployDefault. LambdaCanary10 por ciento 15 minutos  |  Desvía el 10 por ciento del tráfico en el primer incremento. El 90 por ciento restante se despliega 15 minutos después.  | 
|  CodeDeployDefault. LambdaCanary10 por ciento 30 minutos  |  Desvía el 10 por ciento del tráfico en el primer incremento. El 90 por ciento restante se implementa 30 minutos más tarde.  | 
|  CodeDeployDefault. LambdaLinear10, PercentEvery 1 minuto  | Desvía el 10 por ciento del tráfico cada minuto hasta que se desvía todo el tráfico. | 
|  CodeDeployDefault. LambdaLinear10 (PercentEvery2 minutos)  |  Desvía el 10 por ciento del tráfico cada dos minutos hasta que se desvía todo el tráfico.  | 
|  CodeDeployDefault. LambdaLinear10 PercentEvery 3 minutos  |  Desvía el 10 por ciento del tráfico cada tres minutos hasta que se desvía todo el tráfico.  | 
| CodeDeployDefault. LambdaLinear10 PercentEvery 10 minutos | Desvía el 10 por ciento del tráfico cada 10 minutos hasta que se desvía todo el tráfico. | 
|  CodeDeployDefault.LambdaAllAtOnce  |  Desvía todo el tráfico a las funciones Lambda actualizadas a la vez.  | 

## Temas
<a name="topiclist-deployment-configurations"></a>
+ [Create a Deployment Configuration](deployment-configurations-create.md)
+ [View Deployment Configuration Details](deployment-configurations-view-details.md)
+ [Delete a Deployment Configuration](deployment-configurations-delete.md)

# Cree una configuración de despliegue con CodeDeploy
<a name="deployment-configurations-create"></a>

Si no desea utilizar una de las configuraciones de despliegue predeterminadas incluidas CodeDeploy, puede crear la suya propia siguiendo las instrucciones siguientes.

Puede usar la CodeDeploy consola AWS CLI CodeDeploy APIs, la o una CloudFormation plantilla para crear configuraciones de implementación personalizadas. 

Para obtener información sobre el uso CloudFormation de una plantilla para crear una configuración de despliegue, consulte[CloudFormation plantillas de CodeDeploy referencia](reference-cloudformation-templates.md).

**Topics**
+ [Creación de una configuración de implementación (consola)](#deployment-configurations-create-console)
+ [Crear una configuración de despliegue con CodeDeploy (AWS CLI)](#deployment-configurations-create-cli)

## Creación de una configuración de implementación (consola)
<a name="deployment-configurations-create-console"></a>

Siga estas instrucciones para crear una configuración de implementación con la consola AWS .

**Para crear una configuración de despliegue CodeDeploy mediante la consola**

1. Inicie sesión en Consola de administración de AWS y abra la CodeDeploy consola en [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy).
**nota**  
Inicie sesión con el mismo usuario que configuró en [Empezar con CodeDeploy](getting-started-codedeploy.md).

1. En el panel de navegación, elija **Configuraciones de implementación**.

   Aparece una lista de las configuraciones de implementación integradas.

1. Elija **Create deployment configuration (Crear configuración de implementación)**.

1. En **Nombre de la configuración de implementación**, introduzca un nombre para la configuración. Por ejemplo, **my-deployment-config**.

1. En **Plataforma de computación**, elija una de las siguientes opciones:
   + **EC2/En las instalaciones**
   + **AWS Lambda**
   + **Amazon ECS**

1. Realice una de las siguientes acciones:
   + Si ha elegido **EC2/En las instalaciones**:

     1. En **Hosts mínimos en buen estado**, especifique el número o porcentaje de instancias que deben permanecer disponibles en cualquier momento durante una implementación. Para obtener más información sobre el modo en que CodeDeploy monitoriza y evalúa el estado de las instancias durante la implementación, consulte [CodeDeploy estado de la instancia](instances-health.md).

     1. (Opcional) En Configuración **zonal**, seleccione **Habilitar la configuración zonal** para CodeDeploy implementar la aplicación en una [zona de disponibilidad](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-availability-zones) a la vez, dentro de una región. AWS Si se implementa en una zona de disponibilidad a la vez, puede exponer su implementación a un público cada vez mayor, a medida que aumenta la confianza en el rendimiento y la viabilidad de la implementación. Si no habilita una configuración zonal, CodeDeploy implementa la aplicación en una selección aleatoria de hosts de una región.

        Si habilita la característica de configuración de zona, tenga en cuenta lo siguiente:
        + La característica de configuración de zona solo es compatible con las implementaciones locales en las instancias de Amazon EC2. (No se admiten implementaciones azul/verde e instancias en las instalaciones). Para obtener más información acerca de las implementaciones locales, consulte [Tipo de implementación](primary-components.md#primary-components-deployment-type).
        + La característica de configuración de zona no es compatible con las [configuraciones de implementación predefinidas](deployment-configurations.md#deployment-configurations-predefined). Para usar una configuración de zona, debe crear una configuración de implementación personalizada, tal y como se describe aquí.
        + Si CodeDeploy necesita revertir una implementación, CodeDeploy realizará las operaciones de reversión en hosts aleatorios. (no CodeDeploy revertirá una zona a la vez, como era de esperar). Se ha elegido este comportamiento de reversión por motivos de rendimiento. Para obtener más información acerca de las reversiones, consulte [Vuelva a implementar y revertir una implementación con CodeDeploy](deployments-rollback-and-redeploy.md).

     1. Si ha seleccionado la casilla **Habilitar configuración de zona**, especifique opcionalmente las siguientes opciones:
        + (Opcional) En **Duración del monitor**, especifique el período de tiempo, en segundos, que CodeDeploy debe esperar después de completar el despliegue en una zona de disponibilidad. CodeDeploy esperará este tiempo antes de iniciar un despliegue en la siguiente zona de disponibilidad. Plantéese la posibilidad de añadir una duración de monitor para que la implementación tenga tiempo de demostrar su eficacia (o “incorporación”) en una zona de disponibilidad antes de lanzarse en la siguiente zona. Si no especifica la duración del monitor, CodeDeploy comenzará la implementación en la siguiente zona de disponibilidad de forma inmediata. Para obtener más información sobre cómo funciona la configuración de **Duración de monitor**, consulte [Acerca del número mínimo de instancias en buen estado por zona de disponibilidad](instances-health.md#minimum-healthy-hosts-az).
        + (Opcional) Seleccione **Añadir una duración de monitor para la primera zona** para establecer una duración de monitor que solo se aplique a la primera zona de disponibilidad. Puede configurar esta opción si quiere permitir más tiempo de incorporación para la primera zona de disponibilidad. Si no especifica un valor en la **duración del monitor de la primera zona**, CodeDeploy utiliza el valor de **duración del monitor** para la primera zona de disponibilidad.
        + (Opcional) En **Hosts mínimos en buen estado por zona**, especifique el número o porcentaje de instancias que deben permanecer disponibles por cada zona de disponibilidad durante una implementación. Elija **FLEET\$1PERCENT** para especificar un porcentaje o **HOST\$1COUNT** para especificar un número. Este campo funciona junto con el campo **Hosts mínimos en buen estado**. Para obtener más información, consulte [Acerca del número mínimo de instancias en buen estado por zona de disponibilidad](instances-health.md#minimum-healthy-hosts-az).

          Si no especificas un valor en el número **mínimo de hosts en buen estado por zona**, CodeDeploy utiliza un valor predeterminado de `0` porcentaje.
   + Si ha elegido **AWS Lambda** o **Amazon ECS**:

     1. Para **Tipo**, elija **Linear** o **Canary**.

     1. En los campos **Paso** e **Intervalo**, realice una de las siguientes acciones:
        + Si elige **Canary**, para **Paso**, indique un porcentaje de tráfico que se debe desviar, comprendido entre 1 y 99. Este es el porcentaje de tráfico que se desvía en el primer incremento. El tráfico restante se desvía después del intervalo seleccionado en el segundo incremento.

          En **Intervalo**, introduzca el número de minutos entre el primer y el segundo desvío de tráfico.
        + Si elige **Linear**, para **Paso**, indique un porcentaje de tráfico que se debe desviar, comprendido entre 1 y 99. Este es el porcentaje de tráfico que se desvía al comienzo de cada intervalo.

          En **Intervalo**, introduzca el número de minutos entre cada desvío incremental.

1. Elija **Create deployment configuration (Crear configuración de implementación)**.

   Ahora tiene una configuración de implementación que puede asociar a un grupo de implementación.

## Crear una configuración de despliegue con CodeDeploy (AWS CLI)
<a name="deployment-configurations-create-cli"></a>

Para usar el AWS CLI para crear una configuración de despliegue, ejecute el [create-deployment-config](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-config.html)comando.



En el ejemplo siguiente se crea una configuración de implementación de EC2/en las instalaciones denominada `ThreeQuartersHealthy` que requiere que un 75 % de las instancias de destino se encuentren en buen estado durante la implementación:

```
aws deploy create-deployment-config --deployment-config-name ThreeQuartersHealthy --minimum-healthy-hosts type=FLEET_PERCENT,value=75
```



En el ejemplo siguiente se crea una configuración de implementación de EC2/en las instalaciones denominada `300Total50PerAZ` que requiere que 300 instancias de destino se encuentren en buen estado en total por implementación y que 50 se encuentren en buen estado por zona de disponibilidad. También establece una duración de monitor de 1 hora.

```
aws deploy create-deployment-config --deployment-config-name 300Total50PerAZ --minimum-healthy-hosts type=HOST_COUNT,value=300 --zonal-config '{"monitorDurationInSeconds":3600,"minimumHealthyHostsPerZone":{"type":"HOST_COUNT","value":50}}'
```





En el siguiente ejemplo, se crea una configuración de despliegue de AWS Lambda denominada. `Canary25Percent45Minutes` Utiliza el cambio de tráfico de la versión Canary para desviar el 25 por ciento del tráfico en el primer incremento. El 75 por ciento restante se desviará 45 minutos más tarde:

```
aws deploy create-deployment-config --deployment-config-name Canary25Percent45Minutes --traffic-routing-config "type="TimeBasedCanary",timeBasedCanary={canaryPercentage=25,canaryInterval=45}" --compute-platform Lambda
```



En el ejemplo siguiente se crea una configuración de implementación Amazon ECS denominada `Canary25Percent45Minutes`. Utiliza el cambio de tráfico de la versión Canary para desviar el 25 por ciento del tráfico en el primer incremento. El 75 por ciento restante se desviará 45 minutos más tarde:

```
aws deploy create-deployment-config --deployment-config-name Canary25Percent45Minutes --traffic-routing-config "type="TimeBasedCanary",timeBasedCanary={canaryPercentage=25,canaryInterval=45}" --compute-platform ECS
```

# Vea los detalles de la configuración de la implementación con CodeDeploy
<a name="deployment-configurations-view-details"></a>

Puede usar la CodeDeploy consola AWS CLI, la o la CodeDeploy APIs para ver los detalles sobre las configuraciones de implementación asociadas a su AWS cuenta. Para obtener descripciones de las configuraciones de CodeDeploy despliegue predefinidas, consulte[Configuraciones de implementación predefinidas para una plataforma de informática EC2/en las instalaciones](deployment-configurations.md#deployment-configurations-predefined).

**Topics**
+ [Consulta de los detalles de las configuraciones de implementación (consola)](#deployment-configurations-view-details-console)
+ [Consulta de la configuración de implementación (CLI)](#deployment-configurations-view-details-cli)

## Consulta de los detalles de las configuraciones de implementación (consola)
<a name="deployment-configurations-view-details-console"></a>

Para usar la CodeDeploy consola para ver una lista de nombres de configuraciones de implementación:

1. Inicie sesión en Consola de administración de AWS y abra la CodeDeploy consola en [https://console.aws.amazon.com/codedeploy.](https://console.aws.amazon.com/codedeploy)
**nota**  
Inicie sesión con el mismo usuario que configuró en [Empezar con CodeDeploy](getting-started-codedeploy.md).

1. En el panel de navegación, expanda **Implementar** y después elija **Configuraciones de implementación**.

    Aquí puede ver los nombres de las configuraciones de implementación y los criterios de cada configuración de implementación. 
**nota**  
Si no se muestra ninguna entrada, asegúrese de seleccionar la región correcta. En la barra de navegación, en el selector de regiones, elija una de las regiones que aparecen en [Región y puntos finales](https://docs.aws.amazon.com/general/latest/gr/rande.html#codedeploy_region) en. *Referencia general de AWS* CodeDeploy solo se admite en estas regiones.

## Consulta de la configuración de implementación (CLI)
<a name="deployment-configurations-view-details-cli"></a>

Para usar el AWS CLI para ver los detalles de la configuración de la implementación, llame al `get-deployment-config` comando o al `list-deployment-configs` comando.

Para ver los detalles de una única configuración de implementación, llame al comando [get-deployment-config](https://docs.aws.amazon.com/cli/latest/reference/deploy/get-deployment-config.html), especificando el nombre único de la configuración de implementación.

Para ver los detalles de varias configuraciones de implementación, llame al comando [list-deployments](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-deployments.html).

# Elimine una configuración de despliegue con CodeDeploy
<a name="deployment-configurations-delete"></a>

Puede usar AWS CLI o CodeDeploy APIs para eliminar las configuraciones de despliegue personalizadas asociadas a su AWS cuenta. No puede eliminar las configuraciones de implementación integradas, como `CodeDeployDefault.AllAtOnce`, `CodeDeployDefault.HalfAtATime` y `CodeDeployDefault.OneAtATime`.

**aviso**  
No puede eliminar una configuración de implementación personalizadas que todavía está en uso. Si elimina una configuración de implementación personalizada no utilizada, ya no podrá asociarla con nuevas implementaciones y nuevos grupos de implementaciones. Esta acción no se puede deshacer.

Para usar el AWS CLI para eliminar una configuración de despliegue, llame al [delete-deployment-config](https://docs.aws.amazon.com/cli/latest/reference/deploy/delete-deployment-config.html)comando y especifique el nombre de la configuración de despliegue. Para ver una lista de los nombres de las configuraciones de implementación, llame al comando [list-deployment-configs](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-deployment-configs.html).

En el siguiente ejemplo, se elimina una configuración de despliegue denominada ThreeQuartersHealthy.

```
aws deploy delete-deployment-config --deployment-config-name ThreeQuartersHealthy
```