

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.

# Configuración de la capacidad de su entorno de Elastic Beanstalk
<a name="environments-cfg-autoscaling-configuration-approaches"></a>

En este tema se describen los diferentes enfoques para configurar la capacidad de escalado automático en el entorno de Elastic Beanstalk. Puede utilizar la consola de Elastic Beanstalk, la AWS CLI CLI de EB o las opciones de espacio de nombres.

**importante**  
La configuración opcional de `EnableSpot` puede provocar que Elastic Beanstalk cree un entorno con una plantilla de lanzamiento o actualice un entorno existente de configuraciones de lanzamiento a plantillas de lanzamiento. Para ello, se requieren los permisos necesarios para administrar las plantillas de lanzamiento. Estos permisos están incluidos en nuestra política administrada. Si utiliza políticas personalizadas en lugar de nuestras políticas administradas, es posible que no se pueda crear el entorno o que fallen las actualizaciones cuando se actualice la configuración del entorno. Para obtener más información y conocer otras consideraciones, consulte [Migración del entorno de Elastic Beanstalk para lanzar plantillas](environments-cfg-autoscaling-launch-templates.md).

## Configuración usando la consola
<a name="environments-cfg-autoscaling-console"></a>

Puede configurar la administración de la capacidad de un grupo de escalado automático mediante la edición de **Capacidad** en la página **Configuración** del entorno en la [consola de Elastic Beanstalk](environments-console.md).

**Cómo configurar el grupo de escalado automático en la consola de Elastic Beanstalk**

1. Abra la consola de [Elastic Beanstalk](https://console.aws.amazon.com/elasticbeanstalk) y, **en** la lista Regiones, seleccione su. Región de AWS

1. En el panel de navegación, elija **Environments** (Entornos) y, a continuación, elija el nombre del entorno en la lista.

1. En el panel de navegación, elija **Configuration (Configuración)**.

1. En la categoría de configuración **Capacity (Capacidad)**, elija **Edit (Edición de)**.

1. En la sección **escalado automático group (Grupo de escalado automático)**, configure los siguientes ajustes.
   + **Environment type (Tipo de entorno)**: seleccione **Load balanced (Con balanceo de carga)**.
   + **Min instances (Número mínimo de instancias)**: el número mínimo de instancias EC2 que el grupo debe incluir en cualquier momento. El grupo comienza con el recuento mínimo y agrega instancias cuando se cumple la condición del desencadenador de aumento.
   + **Max instances (Número máximo de instancias)**: el número máximo de instancias EC2 que el grupo debe incluir en cualquier momento.
**nota**  
Si utiliza las actualizaciones continuas, asegúrese de que el número máximo de instancias es mayor que el ajuste [**Minimum instances in service (Instancias mínimas en servicio)**](using-features.rollingupdates.md#rollingupdates-configure) para las actualizaciones continuas.
   + **Composición de flota**: el valor predeterminado es **instancias en diferido**. Para habilitar las solicitudes de *instancias de spot*, seleccione **Combined purchase options and instances** (Opciones e instancias de compra combinadas).
**importante**  
La configuración opcional de `EnableSpot` puede provocar que Elastic Beanstalk cree un entorno con una plantilla de lanzamiento o actualice un entorno existente de configuraciones de lanzamiento a plantillas de lanzamiento. Para ello, se requieren los permisos necesarios para administrar las plantillas de lanzamiento. Estos permisos están incluidos en nuestra política administrada. Si utiliza políticas personalizadas en lugar de nuestras políticas administradas, es posible que no se pueda crear el entorno o que fallen las actualizaciones cuando se actualice la configuración del entorno. Para obtener más información y conocer otras consideraciones, consulte [Migración del entorno de Elastic Beanstalk para lanzar plantillas](environments-cfg-autoscaling-launch-templates.md).

     Las siguientes opciones están habilitadas si selecciona habilitar solicitudes de *instancia de Spot*:
     + **Estrategia de asignación de spot**: determina el método utilizado para administrar y aprovisionar las instancias de spot de su entorno, en función de la capacidad disponible, el precio y la selección de tipos de instancias. Seleccione entre *Capacidad optimizada* (predeterminada), *Precio optimizado por capacidad*, *Capacidad optimizada por prioridad* o *Precio más bajo*. Para obtener una descripción de cada estrategia de asignación y más información, consulte [Estrategia de asignación de instancias de spot](environments-cfg-autoscaling-spot-allocation-strategy.md).
     + **Precio de spot máximo**: a fin de obtener recomendaciones sobre las opciones de precio máximo de las instancias de spot, consulte [Historial de precios de instancias de spot](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-history.html) en la *Guía del usuario de Amazon EC2*.
     + **Base en diferido**: el número mínimo de instancias en diferido que el grupo de escalado automático aprovisiona antes de considerar la posibilidad de utilizar instancias de spot cuando escala de manera horizontal el entorno.
     + **En diferido por encima de la base**: porcentaje de instancias en diferido que forman parte de la capacidad adicional que el grupo de escalado automático aprovisiona después de las instancias base en diferido.
**nota**  
Las opciones **base bajo demanda** y **bajo demanda por encima de la base** se correlacionan con las opciones de *instancias* **mín.** y **máx.** enumeradas anteriormente. Para obtener más información sobre estas opciones y ejemplos, consulte [Compatibilidad de instancias de spot con el entorno de Elastic Beanstalk](environments-cfg-autoscaling-spot.md). 
     + **Reequilibrio de la capacidad**: esta opción solamente es relevante cuando hay, al menos, una instancia de spot en el grupo de escalado automático. Con esta característica habilitada, EC2 intenta reemplazar de manera automática las instancias de spot en el grupo de escalado automático antes de que se interrumpan y así minimizar las interrupciones de las instancias de spot en las aplicaciones. Para obtener más información, consulte [Reequilibrio de la capacidad](https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html) en la *Guía del usuario de Amazon EC2 escalado automático*.
   + **Arquitectura**: la arquitectura del procesador de las instancias de EC2. La arquitectura del procesador determina los tipos de instancias de EC2 que estarán disponibles en el siguiente campo.
   + **Tipos de instancia**: tipos de instancia de Amazon EC2 lanzada para ejecutar la aplicación. Para obtener más detalles, consulte [Tipos de instancias](using-features.managing.ec2.console.md#using-features.managing.ec2.instancetypes).
   + **AMI ID (ID de AMI)**: imagen de máquina que Elastic Beanstalk utiliza para lanzar instancias de Amazon EC2 en el entorno. Para obtener más detalles, consulte [ID DE AMI](using-features.managing.ec2.console.md#using-features.managing.ec2.customami).
   + **Availability Zones (Zonas de disponibilidad)**: elija el número de zonas de disponibilidad para distribuir las instancias en su entorno. De forma predeterminada, el grupo de escalado automático lanza instancias de manera uniforme en todas las zonas utilizables. Para concentrar sus instancias en menos zonas, elija el número de zonas que se debe usar. Para los entornos de producción, utilice al menos dos zonas para asegurarse de que su aplicación esté disponible si una zona de disponibilidad se queda fuera de servicio.
   + **Placement (Ubicación)** (opcional): elija las zonas de disponibilidad que va a utilizar. Utilice este ajuste si las instancias deben conectarse a recursos en zonas específicas o si ha comprado [instancias reservadas](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-on-demand-reserved-instances.html), que son específicas de cada zona. Si lanza su entorno en una VPC personalizada, no puede configurar esta opción. En una VPC personalizada, usted elige zonas de disponibilidad para las subredes que asigna a su entorno.
   + **Scaling cooldown (Periodo de recuperación de escalado)**: la cantidad de tiempo que debe esperar en segundos a que las instancias se lancen o terminen después del escalado, antes de seguir evaluando disparadores. Para obtener más información, consulte [Periodos de recuperación de escalado](https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html).

1. Para guardar los cambios, elija **Aplicar** en la parte inferior de la página.

## Configuración mediante opciones de espacio de nombres
<a name="environments-cfg-autoscaling-namespace"></a>

Elastic Beanstalk dispone de [opciones de configuración](command-options.md) para configuraciones de escalado automático en dos espacios de nombres: [`aws:autoscaling:asg`](command-options-general.md#command-options-general-autoscalingasg) y [`aws:ec2:instances`](command-options-general.md#command-options-general-ec2instances).

### El espacio de nombres aws:autoscaling:asg
<a name="environments-cfg-autoscaling-namespace.asg"></a>

El espacio de nombres [`aws:autoscaling:asg`](command-options-general.md#command-options-general-autoscalingasg) cuenta con dos opciones de disponibilidad y escala global.

En el siguiente [archivo de configuración](ebextensions.md) de ejemplo, el grupo de escalado automático se configura para que utilice entre dos y cuatro instancias, zonas de disponibilidad específicas y un periodo de recuperación de 12 minutos (720 segundos). Habilita el [reequilibrio de la capacidad](https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html) para las instancias de spot. Esta opción de `EnableCapacityRebalancing` tiene efecto solamente si `EnableSpot` se configura como `true` en el espacio de nombres [`aws:ec2:instances`](command-options-general.md#command-options-general-ec2instances), como se muestra en el ejemplo del archivo de configuración siguiente a este.

```
option_settings:
  aws:autoscaling:asg:
    Availability Zones: Any
    Cooldown: '720'
    Custom Availability Zones: 'us-west-2a,us-west-2b'
    MaxSize: '4'
    MinSize: '2'
    EnableCapacityRebalancing: true
```

### El espacio de nombres aws:ec2:instances
<a name="environments-cfg-autoscaling-namespace.instances"></a>

**nota**  
Cuando actualiza la configuración del entorno y elimina uno o más tipos de instancias de la opción `InstanceTypes`, Elastic Beanstalk finaliza cualquier Amazon EC2 instance que se esté ejecutando en cualquiera de los tipos de instancias eliminados. A continuación, el grupo de escalado automático de su entorno lanza nuevas instancias, según sea necesario, para completar la capacidad deseada mediante sus tipos de instancia especificados actuales.

El espacio de nombres [`aws:ec2:instances`](command-options-general.md#command-options-general-ec2instances) dispone de opciones relacionadas con las instancias del entorno, incluida la administración de instancias de spot. Complementa a [`aws:autoscaling:launchconfiguration`](command-options-general.md#command-options-general-autoscalinglaunchconfiguration) y [`aws:autoscaling:asg`](command-options-general.md#command-options-general-autoscalingasg).

El siguiente ejemplo de [archivo de configuración](ebextensions.md), configura el grupo de escalado automático para habilitar las solicitudes de instancias de spot en su entorno. Se pueden utilizar tres tipos de instancias posibles. Al menos una instancia en diferido se utiliza para capacidad de línea base y un 33% sostenido de instancias en diferido se utiliza para cualquier capacidad adicional. 

La configuración establece la [estrategia de asignación de spot](environments-cfg-autoscaling-spot-allocation-strategy.md) en `capacity-optimized-prioritized`. Esta estrategia de asignación en particular prioriza los lanzamientos de instancias desde el grupo en función del orden de los tipos de instancias especificados en la opción de `InstanceTypes`. Si no se especifica la `SpotAllocationStrategy`, toma el valor `capacity-optimized` como predeterminado.

```
option_settings:
  aws:ec2:instances:
    EnableSpot: true
    InstanceTypes: 't2.micro,t3.micro,t3.small'    
    SpotAllocationStrategy: capacity-optimized-prioritized
    SpotFleetOnDemandBase: '1'
    SpotFleetOnDemandAboveBasePercentage: '33'
```

Para seleccionar tipos de instancias de spot, utilice el [Asistente de instancias de spot](https://aws.amazon.com/ec2/spot/instance-advisor/).

**importante**  
La configuración opcional de `EnableSpot` puede provocar que Elastic Beanstalk cree un entorno con una plantilla de lanzamiento o actualice un entorno existente de configuraciones de lanzamiento a plantillas de lanzamiento. Para ello, se requieren los permisos necesarios para administrar las plantillas de lanzamiento. Estos permisos están incluidos en nuestra política administrada. Si utiliza políticas personalizadas en lugar de nuestras políticas administradas, es posible que no se pueda crear el entorno o que fallen las actualizaciones cuando se actualice la configuración del entorno. Para obtener más información y conocer otras consideraciones, consulte [Migración del entorno de Elastic Beanstalk para lanzar plantillas](environments-cfg-autoscaling-launch-templates.md).

## Configuración mediante el AWS CLI
<a name="environments-cfg-autoscaling-aws-cli"></a>

Esta sección proporciona ejemplos de cómo puede usar el comando AWS CLI [create-environment para configurar su entorno](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/create-environment.html) con las opciones de Auto Scaling y Capacidad que se describen en estas secciones. Observará que, en este ejemplo, también se configuran los ajustes del espacio de nombres [`aws:autoscaling:asg`](command-options-general.md#command-options-general-autoscalingasg) y [`aws:ec2:instances`](command-options-general.md#command-options-general-ec2instances), tal como se describe en la sección anterior de [opciones de configuración del espacio de nombres](#environments-cfg-autoscaling-namespace).

La AWS interfaz de línea de comandos proporciona comandos para crear y configurar entornos de Elastic Beanstalk. Con la opción `--option-settings`, puede transferir opciones de espacio de nombres compatibles con Elastic Beanstalk. Esto significa que las [opciones de configuración del espacio de nombres](#environments-cfg-autoscaling-namespace) descritas anteriormente se pueden pasar a los AWS CLI comandos aplicables para configurar el entorno de Elastic Beanstalk.

**nota**  
También puede usar el comando [update-environment](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/update-environment.html) con `--option-settings` para agregar o actualizar las opciones del espacio de nombres. Si necesita eliminar alguna opción del espacio de nombres de su entorno, utilice el comando **update-environment** con `--options-to-remove`.

En los siguientes ejemplos se crea un nuevo entorno. Consulte las [opciones de configuración del espacio de nombres](#environments-cfg-autoscaling-namespace) del tema anterior para obtener más información sobre las opciones que se transfieren.

La primera opción de la lista, `IamInstanceProfile` en el espacio de nombres [aws:autoscaling:launchconfiguration](command-options-general.md#command-options-general-autoscalinglaunchconfiguration), es el [perfil de instancia](concepts-roles-instance.md) de Elastic Beanstalk. Es necesario cuando se crea un nuevo entorno.

**Example — create-environment con opciones de escalado automático (opciones de espacio de nombres en línea)**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v4.3.0 running Python 3.12" \
--option-settings \
Namespace=aws:autoscaling:launchconfiguration,OptionName=IamInstanceProfile,Value=aws-elasticbeanstalk-ec2-role
Namespace=aws:autoscaling:asg,OptionName=Availability Zones,Value=Any \
Namespace=aws:autoscaling:asg,OptionName=Cooldown,Value=720 \
Namespace=aws:autoscaling:asg,OptionName=Custom Availability Zones,Value=us-west-2a,us-west-2b \
Namespace=aws:autoscaling:asg,OptionName=MaxSize,Value=4 \
Namespace=aws:autoscaling:asg,OptionName=MinSize,Value=2 \
Namespace=aws:autoscaling:asg,OptionName=EnableCapacityRebalancing,Value=true \
Namespace=aws:ec2:instances,OptionName=EnableSpot,Value=true \
Namespace=aws:ec2:instances,OptionName=InstanceTypes,Value=t2.micro,t3.micro,t3.small \
Namespace=aws:ec2:instances,OptionName=SpotAllocationStrategy,Value=capacity-optimized-prioritized \
Namespace=aws:ec2:instances,OptionName=SpotFleetOnDemandBase,Value=1 \
Namespace=aws:ec2:instances,OptionName=SpotFleetOnDemandAboveBasePercentage,Value=33
```





**importante**  
La configuración opcional de `EnableSpot` puede provocar que Elastic Beanstalk cree un entorno con una plantilla de lanzamiento o actualice un entorno existente de configuraciones de lanzamiento a plantillas de lanzamiento. Para ello, se requieren los permisos necesarios para administrar las plantillas de lanzamiento. Estos permisos están incluidos en nuestra política administrada. Si utiliza políticas personalizadas en lugar de nuestras políticas administradas, es posible que no se pueda crear el entorno o que fallen las actualizaciones cuando se actualice la configuración del entorno. Para obtener más información y conocer otras consideraciones, consulte [Migración del entorno de Elastic Beanstalk para lanzar plantillas](environments-cfg-autoscaling-launch-templates.md).





Como alternativa, utilice un archivo `options.json` para especificar las opciones del espacio de nombres en lugar de incluirlas en línea.

**Example — create-environment con opciones de escalado automático (opciones de espacio de nombres en el archivo `options.json`)**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v4.3.0 running Python 3.12"
--option-settings file://options.json
```

**Example**  

```
### example options.json ###
[
    {
        "Namespace": "aws:autoscaling:launchconfiguration",
        "OptionName": "IamInstanceProfile",
        "Value": "aws-elasticbeanstalk-ec2-role"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "Availability Zones",
        "Value": "Any"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "Cooldown",
        "Value": "720"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "Custom Availability Zones",
        "Value": "us-west-2a,us-west-2b"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "MaxSize",
        "Value": "4"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "MinSize",
        "Value": "2"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "EnableCapacityRebalancing",
        "Value": "true"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "EnableSpot",
        "Value": "true"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "InstanceTypes",
        "Value": "t2.micro,t3.micro,t3.small"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "SpotAllocationStrategy",
        "Value": "capacity-optimized-prioritized"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "SpotFleetOnDemandBase",
        "Value": "1"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "SpotFleetOnDemandAboveBasePercentage",
        "Value": "33"
    }
]
```

## Configuración a través de la CLI de EB
<a name="environments-cfg-autoscaling-ebcli"></a>

Si crea un entorno mediante el comando [**eb create**](eb3-create.md), puede especificar algunas opciones relacionadas con el grupo de escalado automático del entorno. Estas son algunas opciones que lo ayudan a controlar la capacidad del entorno.

`--single`  
Crea el entorno con una Amazon EC2 instance y sin equilibrador de carga. Si no utiliza esta opción, un equilibrador de carga se agrega al entorno que se ha creado.

`--enable-spot`  
Habilita las solicitudes de instancias de spot para el entorno.  
La configuración opcional de `enable-spot` puede provocar que Elastic Beanstalk cree un entorno con una plantilla de lanzamiento o actualice un entorno existente de configuraciones de lanzamiento a plantillas de lanzamiento. Para ello, se requieren los permisos necesarios para administrar las plantillas de lanzamiento. Estos permisos están incluidos en nuestra política administrada. Si utiliza políticas personalizadas en lugar de nuestras políticas administradas, es posible que no se pueda crear el entorno o que fallen las actualizaciones cuando se actualice la configuración del entorno. Para obtener más información y conocer otras consideraciones, consulte [Migración del entorno de Elastic Beanstalk para lanzar plantillas](environments-cfg-autoscaling-launch-templates.md).
Las siguientes opciones para el comando [**eb create**](eb3-create.md) solo pueden utilizarse con `--enable-spot`.    
`--instance-types`  
Enumera los tipos de Amazon EC2 instance que desea que se utilice en el entorno.  
`--spot-max-price`  
El precio máximo unidad por hora, en dólares estadounidenses, que está dispuesto a pagar por una instancia de Spot. A fin de obtener recomendaciones sobre las opciones de precio máximo de las instancias de spot, consulte el [Historial de precios de instancias de spot](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-history.html) en la *Guía del usuario de Amazon EC2*.  
`--on-demand-base-capacity`  
Número mínimo de instancias en diferido que el grupo de escalado automático aprovisiona antes de considerar la posibilidad de utilizar instancias de spot cuando se amplía el entorno.  
`--on-demand-above-base-capacity`  
El porcentaje de instancias en diferido como parte de la capacidad adicional que el grupo de escalado automático aprovisiona además del número de instancias especificado mediante la opción `--on-demand-base-capacity`.

En el siguiente ejemplo, se crea un entorno y se configura el grupo de escalado automático para habilitar las solicitudes de instancias de Spot en el nuevo entorno. Para este ejemplo, se pueden utilizar tres tipos de instancias posibles.

```
$ eb create --enable-spot --instance-types "t2.micro,t3.micro,t3.small"
```

**importante**  
Hay otra opción con nombre similar que se llama `--instance-type`(sin “s”) que la CLI de EB solo reconoce al procesar instancias en diferido. No utilice `--instance-type` (sin “s”) con la opción `--enable-spot`. Si lo hace, la CLI de EB lo ignora. En su lugar utilice `--instance-types` (con “s”) con la opción `--enable-spot`. 