

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.

# Creación de un grupo de instancias mixtas seleccionando manualmente los tipos de instancias
<a name="create-mixed-instances-group-manual-instance-type-selection"></a>

En este tema, se muestra cómo lanzar varios tipos de instancia en un solo grupo de escalado automático eligiendo manualmente los tipos de instancia. 

Si prefiere utilizar los atributos de instancia como criterios para seleccionar tipos de instancia, consulte [Creación de grupos de instancias mixtas mediante la selección del tipo de instancia basada en atributos](create-mixed-instances-group-attribute-based-instance-type-selection.md).

**Topics**
+ [Requisitos previos](#manual-instance-type-selection-prerequisites)
+ [Creación de un grupo de instancias mixtas (consola)](#manual-instance-type-selection-console)
+ [Creación de un grupo de instancias mixtas (AWS CLI)](#manual-instance-type-selection-aws-cli)
+ [Configuraciones de ejemplo](#manual-instance-type-selection-example-configurations)

## Requisitos previos
<a name="manual-instance-type-selection-prerequisites"></a>
+ Cree una plantilla de lanzamiento. Para obtener más información, consulte [Creación de una plantilla de lanzamiento para un grupo de Auto Scaling](create-launch-template.md).
+ Verifique que la plantilla de lanzamiento no solicite ya instancias de spot. 

## Creación de un grupo de instancias mixtas (consola)
<a name="manual-instance-type-selection-console"></a>

Para crear un grupo de instancias mixtas, elija manualmente qué tipos de instancias puede lanzar su grupo. Para ayudarlo a realizar los pasos de forma eficiente, se omiten algunas secciones opcionales.

Para revisar las prácticas recomendadas para un grupo de instancias mixtas, consulte [Información general de la configuración de creación de un grupo de instancias mixtas](mixed-instances-groups-set-up-overview.md).

**Creación de un grupo de instancias mixtas**

1. Abra la consola Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)y seleccione **Auto Scaling Groups** en el panel de navegación.

1. En la barra de navegación de la parte superior de la pantalla, elija la misma Región de AWS que utilizó cuando creó la plantilla de lanzamiento.

1. Elija **Create an Auto Scaling group (Crear un grupo de escalado automático)**. 

1. En la página **Choose launch template or configuration (Elegir una plantilla de lanzamiento o configuración)**, ingrese un **nombre para el grupo de escalado automático**.

1. Para elegir la plantilla de lanzamiento, haga lo siguiente:

   1. En **launch template (Plantilla de lanzamiento)**, elija una plantilla de lanzamiento existente.

   1. Para **Launch template version (Versión de plantilla de lanzamiento)**, decida si el grupo de escalado automático utiliza el valor predeterminado, la última versión o una versión específica de la plantilla de lanzamiento para escalado horizontal. 

   1. Compruebe que la plantilla de lanzamiento admita todas las opciones que tenga previsto utilizar y, a continuación, elija **Next** (Siguiente).

1. En la página **Elegir las opciones de lanzamiento de instancias**, haga lo siguiente:

   1. En **Instance type requirements** (Requisitos de tipo de instancias), elija **Override launch template** (Anular la plantilla de lanzamiento) y, a continuación, elija **Manually add instance types** (Agregar los tipos de instancia de forma manual). 

   1. Elija los tipos de instancia. Puede utilizar nuestras recomendaciones como punto de partida. La opción **Family and generation flexible** (Familia y generación flexible) está seleccionada de forma predeterminada.
      + Para cambiar el orden de los tipos de instancia, utilice las flechas. Si elige una estrategia de asignación que admita la priorización, el orden de los tipos de instancia establece su prioridad de lanzamiento.
      + Para eliminar un tipo de instancia, elija **X**.
      + (Opcional) En los cuadros de la columna **Ponderación**, asigne a cada tipo de instancia una ponderación relativa. Para ello, ingrese el número de unidades que una instancia de ese tipo cuenta para alcanzar la capacidad deseada del grupo. Esto podría resultar útil si, por ejemplo, los tipos de instancia ofrecen diferentes funcionalidades de vCPU, memoria, almacenamiento o ancho de banda de la red. Para obtener más información, consulte [Configuración de un grupo de escalado automático para utilizar ponderación de instancias](ec2-auto-scaling-mixed-instances-groups-instance-weighting.md). 

        Tenga en cuenta que, si elige usar las recomendaciones de **Tamaño flexible**, todos los tipos de instancia que formen parte de esta sección tendrán automáticamente un valor de ponderación. Si no quiere especificar ningún peso, desactiva los cuadros de la columna **Weight** (Peso) para todos los tipos de instancia.

   1. En **Instance purchase options** (Opciones de compra) para la **distribución de instancias**, especifique los porcentajes del grupo que se lanzará como instancias bajo demanda e instancias de spot, respectivamente. Si la suya es una aplicación sin estado, tolerante a errores y capaz de gestionar la interrupción de una instancia, puede especificar un mayor porcentaje de instancias de spot.

   1. (Opcional) Cuando especifique un porcentaje para las instancias de spot, seleccione **Incluir capacidad base bajo demanda** y luego especifique la cantidad mínima de la capacidad inicial del grupo de escalado automático que deben satisfacer las instancias bajo demanda. Lo que esté más allá de la capacidad base utiliza la configuración de **Instances distribution** (Distribución de las instancias) para determinar cuántas instancias bajo demanda y de spot deben lanzarse. 

   1. En **Allocation strategies** (Estrategias de asignación), para **On-Demand allocation strategy** (Estrategia de asignación bajo demanda), elija una estrategia de asignación. Al elegir manualmente los tipos de instancia, se selecciona **Prioritized** (Priorizada) de forma predeterminada.

   1. En **Spot allocation strategy** (Estrategia de asignación de spot), elija una estrategia de asignación. **Price capacity optimized** (Capacidad de precios optimizada) se selecciona de forma predeterminada.

      Si elige **Capacidad optimizada**, puede opcionalmente marcar la casilla **Priorizar los tipos de instancia** para que Amazon EC2 Auto Scaling pueda elegir qué tipo de instancia lanzar primero en función del orden en que aparecen los tipos de instancia. 

   1. En **Reequilibrio de la capacidad**, elija si desea habilitar o desactivar el reequilibrio de la capacidad. Use el reequilibrio de la capacidad para responder automáticamente cuando sus instancias de spot se aproximen a su finalización por una interrupción de spot. Para obtener más información, consulte [Reequilibrio de la capacidad en Auto Scaling para reemplazar las instancias de spot en riesgo](ec2-auto-scaling-capacity-rebalancing.md). 

   1. En **Network** (Red), para la opción **VPC**, elija una VPC. El grupo de escalado automático debe crearse en la misma VPC que el grupo de seguridad especificado en la plantilla de lanzamiento.

   1. En **Availability Zones and subnets** (Zonas de disponibilidad y subredes), elija una o más subredes de la VPC especificada. Utilice subredes en varias zonas de disponibilidad para lograr una alta disponibilidad. Para obtener más información, consulte [Consideraciones a la hora de elegir subredes de VPC](asg-in-vpc.md#as-vpc-considerations).

   1. Elija **Siguiente**, **Siguiente**.

1. Para el paso **Configure group size and scaling policies** (Configurar el tamaño del grupo y las políticas de escalado), haga lo siguiente:

   1. En **Tamaño de grupo**, para **Capacidad deseada**, introduzca el número inicial de instancias que desea lanzar. 

      De forma predeterminada, la capacidad deseada se expresa como la cantidad de instancias. Si ha asignado ponderaciones a sus tipos de instancia, debe convertir este valor en la misma unidad de medida que utilizó para asignar las ponderaciones, por ejemplo, el número de vCPUs. 

   1. En la sección **Escalado**, en **Límites de escalado**, si el nuevo valor de **Capacidad deseada** es superior a **Capacidad deseada mínima** y a **Capacidad deseada máxima**, **Capacidad deseada máxima** se incrementará automáticamente al nuevo valor de capacidad deseada. Puede cambiar estos límites según sea necesario. Para obtener más información, consulte [Establecimiento de límites de escalado para el grupo de escalado automático](asg-capacity-limits.md).

1. Elija **Skip to review (Omitir para revisar)**.

1. En la página **Review (Revisar)**, elija **Create Auto Scaling group (Crear grupo de escalado automático)**.

## Creación de un grupo de instancias mixtas (AWS CLI)
<a name="manual-instance-type-selection-aws-cli"></a>

**Creación de un grupo de instancias mixtas mediante la línea de comandos**  
Utilice uno de los siguientes comandos:
+ [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html) (AWS CLI)
+ [Nuevo- ASAuto ScalingGroup](https://docs.aws.amazon.com/powershell/latest/reference/items/New-ASAutoScalingGroup.html) (AWS Tools for Windows PowerShell)

## Configuraciones de ejemplo
<a name="manual-instance-type-selection-example-configurations"></a>

En las siguientes configuraciones de ejemplo se muestra cómo crear grupos de instancias mixtas mediante las diferentes estrategias de asignación de spot.

**nota**  
En estos ejemplos se muestra cómo utilizar un archivo de configuración con formato JSON o YAML. Si usa la AWS CLI versión 1, debe especificar un archivo de configuración con formato JSON. Si usa la AWS CLI versión 2, puede especificar un archivo de configuración formateado en YAML o JSON.

**Topics**
+ [Ejemplo 1: Lanzamiento de Instancias de spot con la estrategia de asignación `capacity-optimized`](#capacity-optimized-aws-cli)
+ [Ejemplo 2: Lanzamiento de Instancias de spot con la estrategia de asignación `capacity-optimized-prioritized`](#capacity-optimized-prioritized-aws-cli)
+ [Ejemplo 3: Lanzamiento de instancias de spot mediante la estrategia de asignación `lowest-price` diversificada en dos grupos](#lowest-price-aws-cli)
+ [Ejemplo 4: inicialización de instancias de spot con la estrategia de asignación `price-capacity-optimized`](#price-capacity-optimized-aws-cli)

### Ejemplo 1: Lanzamiento de Instancias de spot con la estrategia de asignación `capacity-optimized`
<a name="capacity-optimized-aws-cli"></a>

El siguiente [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando crea un grupo de Auto Scaling que especifica lo siguiente:
+ El porcentaje del grupo que se va a lanzar como instancias bajo demanda (`0`) y un número base de instancias bajo demanda con el que se va a comenzar (`1`).
+ Los tipos de instancia que se van a lanzar por orden de prioridad (`c5.large`, `c5a.large`, `m5.large`, `m5a.large`, `c4.large`, `m4.large`, `c3.large`, `m3.large`).
+ Las subredes en las que se lanzarán las instancias (`subnet-5ea0c127`, `subnet-6194ea3b`, `subnet-c934b782`). Cada una corresponde a una zona de disponibilidad diferente.
+ La plantilla de lanzamiento (`my-launch-template`) y la versión de la plantilla de lanzamiento (`$Default`).

Cuando Amazon EC2 Auto Scaling intenta cubrir su capacidad en diferido, lanza primero el tipo de instancia `c5.large`. Las instancias de spot proceden del grupo de spot óptimo en cada zona de disponibilidad en función de la capacidad de la instancia de spot.

#### JSON
<a name="capacity-optimized-aws-cli-json"></a>

```
aws autoscaling create-auto-scaling-group --cli-input-json {{file://~/config.json}}
```

El archivo `config.json` contiene la salida siguiente.

```
{
    "AutoScalingGroupName": "{{my-asg}}",
    "MixedInstancesPolicy": {
        "LaunchTemplate": {
            "LaunchTemplateSpecification": {
                "LaunchTemplateName": "{{my-launch-template}}",
                "Version": "{{$Default}}"
            },
            "Overrides": [
                {
                    "InstanceType": "{{c5.large}}"
                },
                {
                    "InstanceType": "{{c5a.large}}"
                },
                {
                    "InstanceType": "{{m5.large}}"
                },
                {
                    "InstanceType": "{{m5a.large}}"
                },
                {
                    "InstanceType": "{{c4.large}}"
                },
                {
                    "InstanceType": "{{m4.large}}"
                },
                {
                    "InstanceType": "{{c3.large}}"
                },
                {
                    "InstanceType": "{{m3.large}}"
                }
            ]
        },
        "InstancesDistribution": {
            "OnDemandBaseCapacity": {{1}},
            "OnDemandPercentageAboveBaseCapacity": {{0}},
            "SpotAllocationStrategy": "capacity-optimized"
        }
    },
    "MinSize": {{1}},
    "MaxSize": {{5}},
    "DesiredCapacity": {{3}},
    "VPCZoneIdentifier": "{{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}"
}
```

#### YAML
<a name="capacity-optimized-aws-cli-yaml"></a>

Como alternativa, puede usar el siguiente [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando para crear el grupo Auto Scaling. Esto hace referencia a un archivo YAML como único parámetro de su grupo de escalado automático.

```
aws autoscaling create-auto-scaling-group --cli-input-yaml {{file://~/config.yaml}}
```

El archivo `config.yaml` contiene la salida siguiente.

```
---
AutoScalingGroupName: {{my-asg}}
MixedInstancesPolicy:
  LaunchTemplate:
    LaunchTemplateSpecification:
      LaunchTemplateName: {{my-launch-template}}
      Version: {{$Default}}
    Overrides:
    - InstanceType: {{c5.large}}
    - InstanceType: {{c5a.large}}
    - InstanceType: {{m5.large}}
    - InstanceType: {{m5a.large}}
    - InstanceType: {{c4.large}}
    - InstanceType: {{m4.large}}
    - InstanceType: {{c3.large}}
    - InstanceType: {{m3.large}}
  InstancesDistribution:
    OnDemandBaseCapacity: {{1}}
    OnDemandPercentageAboveBaseCapacity: {{0}}
    SpotAllocationStrategy: capacity-optimized
MinSize: {{1}}
MaxSize: {{5}}
DesiredCapacity: {{3}}
VPCZoneIdentifier: {{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}
```

### Ejemplo 2: Lanzamiento de Instancias de spot con la estrategia de asignación `capacity-optimized-prioritized`
<a name="capacity-optimized-prioritized-aws-cli"></a>

El siguiente [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando crea un grupo de Auto Scaling que especifica lo siguiente:
+ El porcentaje del grupo que se va a lanzar como instancias bajo demanda (`0`) y un número base de instancias bajo demanda con el que se va a comenzar (`1`).
+ Los tipos de instancia que se van a lanzar por orden de prioridad (`c5.large`, `c5a.large`, `m5.large`, `m5a.large`, `c4.large`, `m4.large`, `c3.large`, `m3.large`).
+ Las subredes en las que se lanzarán las instancias (`subnet-5ea0c127`, `subnet-6194ea3b`, `subnet-c934b782`). Cada una corresponde a una zona de disponibilidad diferente.
+ La plantilla de lanzamiento (`my-launch-template`) y la versión de la plantilla de lanzamiento (`$Latest`).

Cuando Amazon EC2 Auto Scaling intenta cubrir su capacidad en diferido, lanza primero el tipo de instancia `c5.large`. Cuando Amazon EC2 Auto Scaling intenta satisfacer la capacidad de spot, respeta las prioridades del tipo de instancia sobre la base del mejor esfuerzo. Sin embargo, primero optimiza la capacidad.

#### JSON
<a name="capacity-optimized-prioritized-aws-cli-json"></a>

```
aws autoscaling create-auto-scaling-group --cli-input-json {{file://~/config.json}}
```

El archivo `config.json` contiene la salida siguiente. 

```
{
    "AutoScalingGroupName": "{{my-asg}}",
    "MixedInstancesPolicy": {
        "LaunchTemplate": {
            "LaunchTemplateSpecification": {
                "LaunchTemplateName": "{{my-launch-template}}",
                "Version": "{{$Latest}}"
            },
            "Overrides": [
                {
                    "InstanceType": "{{c5.large}}"
                },
                {
                    "InstanceType": "{{c5a.large}}"
                },
                {
                    "InstanceType": "{{m5.large}}"
                },
                {
                    "InstanceType": "{{m5a.large}}"
                },
                {
                    "InstanceType": "{{c4.large}}"
                },
                {
                    "InstanceType": "{{m4.large}}"
                },
                {
                    "InstanceType": "{{c3.large}}"
                },
                {
                    "InstanceType": "{{m3.large}}"
                }
            ]
        },
        "InstancesDistribution": {
            "OnDemandBaseCapacity": {{1}},
            "OnDemandPercentageAboveBaseCapacity": {{0}},
            "SpotAllocationStrategy": "capacity-optimized-prioritized"
        }
    },
    "MinSize": {{1}},
    "MaxSize": {{5}},
    "DesiredCapacity": {{3}},
    "VPCZoneIdentifier": "{{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}"
}
```

#### YAML
<a name="capacity-optimized-prioritized-aws-cli-yaml"></a>

Como alternativa, puede usar el siguiente [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando para crear el grupo Auto Scaling. Esto hace referencia a un archivo YAML como único parámetro de su grupo de escalado automático. 

```
aws autoscaling create-auto-scaling-group --cli-input-yaml {{file://~/config.yaml}}
```

El archivo `config.yaml` contiene la salida siguiente. 

```
---
AutoScalingGroupName: {{my-asg}}
MixedInstancesPolicy:
  LaunchTemplate:
    LaunchTemplateSpecification:
      LaunchTemplateName: {{my-launch-template}}
      Version: {{$Default}}
    Overrides:
    - InstanceType: {{c5.large}}
    - InstanceType: {{c5a.large}}
    - InstanceType: {{m5.large}}
    - InstanceType: {{m5a.large}}
    - InstanceType: {{c4.large}}
    - InstanceType: {{m4.large}}
    - InstanceType: {{c3.large}}
    - InstanceType: {{m3.large}}
  InstancesDistribution:
    OnDemandBaseCapacity: {{1}}
    OnDemandPercentageAboveBaseCapacity: {{0}}
    SpotAllocationStrategy: capacity-optimized-prioritized
MinSize: {{1}}
MaxSize: {{5}}
DesiredCapacity: {{3}}
VPCZoneIdentifier: {{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}
```

### Ejemplo 3: Lanzamiento de instancias de spot mediante la estrategia de asignación `lowest-price` diversificada en dos grupos
<a name="lowest-price-aws-cli"></a>

El siguiente [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando crea un grupo de Auto Scaling que especifica lo siguiente:
+ El porcentaje del grupo que lanzar como instancias bajo demanda (`50`). (Esto no especifica un número base de instancias bajo demanda para empezar).
+ Los tipos de instancia que se van a lanzar por orden de prioridad (`c5.large`, `c5a.large`, `m5.large`, `m5a.large`, `c4.large`, `m4.large`, `c3.large`, `m3.large`). 
+ Las subredes en las que se lanzarán las instancias (`subnet-5ea0c127`, `subnet-6194ea3b`, `subnet-c934b782`). Cada una corresponde a una zona de disponibilidad diferente.
+ La plantilla de lanzamiento (`my-launch-template`) y la versión de la plantilla de lanzamiento (`$Latest`).

Cuando Amazon EC2 Auto Scaling intenta cubrir su capacidad en diferido, lanza primero el tipo de instancia `c5.large`. Para su capacidad de spot, Amazon EC2 Auto Scaling intenta lanzar las instancias de spot de manera uniforme en los dos grupos de precio más bajo de cada zona de disponibilidad. 

#### JSON
<a name="lowest-price-aws-cli-json"></a>

```
aws autoscaling create-auto-scaling-group --cli-input-json {{file://~/config.json}}
```

El archivo `config.json` contiene la salida siguiente. 

```
{
    "AutoScalingGroupName": "{{my-asg}}",
    "MixedInstancesPolicy": {
        "LaunchTemplate": {
            "LaunchTemplateSpecification": {
                "LaunchTemplateName": "{{my-launch-template}}",
                "Version": "{{$Latest}}"
            },
            "Overrides": [
                {
                    "InstanceType": "{{c5.large}}"
                },
                {
                    "InstanceType": "{{c5a.large}}"
                },
                {
                    "InstanceType": "{{m5.large}}"
                },
                {
                    "InstanceType": "{{m5a.large}}"
                },
                {
                    "InstanceType": "{{c4.large}}"
                },
                {
                    "InstanceType": "{{m4.large}}"
                },
                {
                    "InstanceType": "{{c3.large}}"
                },
                {
                    "InstanceType": "{{m3.large}}"
                }
            ]
        },
        "InstancesDistribution": {
            "OnDemandPercentageAboveBaseCapacity": {{50}},
            "SpotAllocationStrategy": "lowest-price",
            "SpotInstancePools": {{2}}
        }
    },
    "MinSize": {{1}},
    "MaxSize": {{5}},
    "DesiredCapacity": {{3}},
    "VPCZoneIdentifier": "{{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}"
}
```

#### YAML
<a name="lowest-price-aws-cli-yaml"></a>

Como alternativa, puede usar el siguiente [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando para crear el grupo Auto Scaling. Esto hace referencia a un archivo YAML como único parámetro de su grupo de escalado automático. 

```
aws autoscaling create-auto-scaling-group --cli-input-yaml {{file://~/config.yaml}}
```

El archivo `config.yaml` contiene la salida siguiente. 

```
---
AutoScalingGroupName: {{my-asg}}
MixedInstancesPolicy:
  LaunchTemplate:
    LaunchTemplateSpecification:
      LaunchTemplateName: {{my-launch-template}}
      Version: {{$Default}}
    Overrides:
    - InstanceType: {{c5.large}}
    - InstanceType: {{c5a.large}}
    - InstanceType: {{m5.large}}
    - InstanceType: {{m5a.large}}
    - InstanceType: {{c4.large}}
    - InstanceType: {{m4.large}}
    - InstanceType: {{c3.large}}
    - InstanceType: {{m3.large}}
  InstancesDistribution:
    OnDemandPercentageAboveBaseCapacity: {{50}}
    SpotAllocationStrategy: lowest-price
    SpotInstancePools: {{2}}
MinSize: {{1}}
MaxSize: {{5}}
DesiredCapacity: {{3}}
VPCZoneIdentifier: {{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}
```

### Ejemplo 4: inicialización de instancias de spot con la estrategia de asignación `price-capacity-optimized`
<a name="price-capacity-optimized-aws-cli"></a>

El siguiente [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando crea un grupo de Auto Scaling que especifica lo siguiente:
+ El porcentaje del grupo que lanzar como instancias bajo demanda (`30`). (Esto no especifica un número base de instancias bajo demanda para empezar).
+ Los tipos de instancia que se van a lanzar por orden de prioridad (`c5.large`, `c5a.large`, `m5.large`, `m5a.large`, `c4.large`, `m4.large`, `c3.large`, `m3.large`). 
+ Las subredes en las que se lanzarán las instancias (`subnet-5ea0c127`, `subnet-6194ea3b`, `subnet-c934b782`). Cada una corresponde a una zona de disponibilidad diferente.
+ La plantilla de lanzamiento (`my-launch-template`) y la versión de la plantilla de lanzamiento (`$Latest`).

Cuando Amazon EC2 Auto Scaling intenta cubrir su capacidad en diferido, lanza primero el tipo de instancia `c5.large`. Para su capacidad de spot, Amazon EC2 Auto Scaling intenta lanzar las instancias de spot desde grupos de instancias de spot con el precio más bajo posible, pero también con una capacidad óptima para la cantidad de instancias que lanza.

#### JSON
<a name="price-capacity-optimized-aws-cli-json"></a>

```
aws autoscaling create-auto-scaling-group --cli-input-json {{file://~/config.json}}
```

El archivo `config.json` contiene la salida siguiente. 

```
{
    "AutoScalingGroupName": "{{my-asg}}",
    "MixedInstancesPolicy": {
        "LaunchTemplate": {
            "LaunchTemplateSpecification": {
                "LaunchTemplateName": "{{my-launch-template}}",
                "Version": "{{$Latest}}"
            },
            "Overrides": [
                {
                    "InstanceType": "{{c5.large}}"
                },
                {
                    "InstanceType": "{{c5a.large}}"
                },
                {
                    "InstanceType": "{{m5.large}}"
                },
                {
                    "InstanceType": "{{m5a.large}}"
                },
                {
                    "InstanceType": "{{c4.large}}"
                },
                {
                    "InstanceType": "{{m4.large}}"
                },
                {
                    "InstanceType": "{{c3.large}}"
                },
                {
                    "InstanceType": "{{m3.large}}"
                }
            ]
        },
        "InstancesDistribution": {
            "OnDemandPercentageAboveBaseCapacity": {{30}},
            "SpotAllocationStrategy": "price-capacity-optimized"
        }
    },
    "MinSize": {{1}},
    "MaxSize": {{5}},
    "DesiredCapacity": {{3}},
    "VPCZoneIdentifier": "{{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}"
}
```

#### YAML
<a name="price-capacity-optimized-aws-cli-yaml"></a>

Como alternativa, puede usar el siguiente [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)comando para crear el grupo Auto Scaling. Esto hace referencia a un archivo YAML como único parámetro de su grupo de escalado automático. 

```
aws autoscaling create-auto-scaling-group --cli-input-yaml {{file://~/config.yaml}}
```

El archivo `config.yaml` contiene la salida siguiente. 

```
---
AutoScalingGroupName: {{my-asg}}
MixedInstancesPolicy:
  LaunchTemplate:
    LaunchTemplateSpecification:
      LaunchTemplateName: {{my-launch-template}}
      Version: {{$Default}}
    Overrides:
    - InstanceType: {{c5.large}}
    - InstanceType: {{c5a.large}}
    - InstanceType: {{m5.large}}
    - InstanceType: {{m5a.large}}
    - InstanceType: {{c4.large}}
    - InstanceType: {{m4.large}}
    - InstanceType: {{c3.large}}
    - InstanceType: {{m3.large}}
  InstancesDistribution:
    OnDemandPercentageAboveBaseCapacity: {{30}}
    SpotAllocationStrategy: price-capacity-optimized
MinSize: {{1}}
MaxSize: {{5}}
DesiredCapacity: {{3}}
VPCZoneIdentifier: {{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}
```