View a markdown version of this page

Utilice los segmentos de distribución para dirigirse a varios tipos de reserva de capacidad - Amazon EC2 Auto Scaling

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.

Utilice los segmentos de distribución para dirigirse a varios tipos de reserva de capacidad

Usa los segmentos de distribución para configurar tu grupo de Auto Scaling de manera que consuma varios tipos de reservas de On-Demand capacidad (reservas de capacidad, Capacity Blocks para aprendizaje automático y reservas de capacidad interrumpible) con pedidos prioritarios. Para segmentar estos tipos de reservas, dirija su grupo de Auto Scaling a un grupo de recursos de reserva de capacidad que contenga una combinación de diferentes reservas de capacidad.

Cuando configuras los segmentos de distribución, Auto Scaling lanza instancias en todos los tipos de reserva en el orden de prioridad que especifiques, con una alternativa opcional a la On-Demand capacidad.

Cómo distribuye Auto Scaling las instancias entre las opciones del mercado

Auto Scaling distribuye las instancias lanzadas entre diferentes opciones del mercado en función de la configuración de su política de instancias mixtas.

On-Demand y distribución puntual

Puede distribuir las instancias entre On-Demand y la capacidad puntual mediante los OnDemandPercentageAboveBaseCapacity campos OnDemandBaseCapacity y de su política de instancias mixtas. En el siguiente ejemplo, se lanzan las 2 primeras instancias como On-Demand, a continuación, el 25 por ciento de On-Demand las instancias restantes como Spot:

{ "InstancesDistribution": { "OnDemandBaseCapacity": 2, "OnDemandPercentageAboveBaseCapacity": 25 } }

Distribución con segmentos de distribución

Un segmento de distribución es una configuración de su grupo de Auto Scaling que contiene una lista de tipos de capacidad para priorizar en orden. Los segmentos de distribución se establecen en el DistributionSegments campo de su política de instancias mixtas.

Actualmente, Auto Scaling solo admite un segmento de distribución por grupo de Auto Scaling. Toda la capacidad del grupo de Auto Scaling se distribuye entre los tipos de capacidad objetivo (TargetCapacityTypes) de ese segmento.

Los valores válidos para TargetCapacityTypes son:

  • on-demand-capacity-reservation— Reservas On-Demand de capacidad

  • capacity-block— Capacity Blocks para ML

  • interruptible-capacity-reservation— Reservas de capacidad interrumpibles

  • on-demand— capacidad On-Demand

El orden de la lista determina el modo en que Auto Scaling distribuye las instancias lanzadas. Auto Scaling intenta consumir capacidad en el orden en que aparecen los tipos. Cuando un tipo de capacidad determinado no está disponible, Auto Scaling omite ese tipo y pasa al siguiente.

En el siguiente ejemplo, se lanzan las instancias Reservation-backed primero como On-Demand capacidad, luego como Capacity Block respaldadas, después como capacidad interrumpible y Reservation-backed, por último, como On-Demand si la capacidad reservada fuera insuficiente:

{ "InstancesDistribution": { "DistributionSegments": [ { "TargetCapacityTypes": [ "on-demand-capacity-reservation", "capacity-block", "interruptible-capacity-reservation", "on-demand" ] } ] } }

Si las incluyes on-demand en la lista, Auto Scaling recurre a su On-Demand capacidad cuando la capacidad reservada no está disponible. Si lo omiteson-demand, las instancias no se lanzan cuando la capacidad reservada no está disponible. Si la on-demand incluyes, debe ser la última entrada de la lista.

nota

La capacidad puntual no se admite como tipo de capacidad objetivo en este momento.

Requisitos previos

Antes de poder configurar los segmentos de distribución en su grupo de Auto Scaling, debe crear las reservas de capacidad que desea consumir y el grupo de recursos de reserva de capacidad que las contiene.

Para crear una reserva de capacidad, consulte una de las siguientes opciones en la guía del usuario de Amazon EC2:

Para crear un grupo de recursos de reserva de capacidad que contenga una combinación de diferentes reservas de capacidad, consulte los grupos de recursos de reserva de capacidad en la guía del usuario de Amazon EC2.

Configure su grupo de Auto Scaling para usar segmentos de distribución

Para configurar tu grupo de Auto Scaling para usar segmentos de distribución, agrégalos a tu política de instancias mixtas y establece el ARN del grupo de recursos de reserva de capacidad como el objetivo de tu especificación de reserva de capacidad.

Auto Scaling intenta lanzar las instancias en el orden de prioridad de los tipos de capacidad y, dentro de cada tipo de capacidad, en el orden de los tipos de instancia que figuran en la plantilla Overrides de lanzamiento.

Console
Para configurar los segmentos de distribución en un grupo nuevo (consola)
  1. Siga los pasos descritos Creación de un grupo de Auto Scaling mediante el asistente de lanzamiento de Amazon EC2 hasta el paso 2.

  2. En la página Elegir opciones de lanzamiento de instancias, en Requisitos de tipo de instancia, elija Sobrescribir la plantilla de lanzamiento y, a continuación, elija Sobrescribir la plantilla de lanzamiento para los segmentos de distribución.

  3. En Opciones de distribución de instancias, elige Segmentos de distribución.

  4. En Seleccione el tipo de reserva de capacidad objetivo, seleccione los tipos de reserva de capacidad que desea incluir en este segmento de distribución. Asegúrese de que su grupo de recursos de reserva de capacidad contenga los tipos de reserva que seleccione.

  5. En Ordenar los tipos de reserva de capacidad objetivo, arrastre los tipos al orden de prioridad que desee. Auto Scaling lanza las instancias en Capacity Reservations en este orden. Si seleccionó On-Demand instancias, debe ser la última.

  6. En Configuración de capacidad adicional, para el destino de reserva de capacidad, elija Especificar grupo de recursos de reserva de capacidad (destino por ARN) y, a continuación, elija el ARN de su grupo de recursos de reserva de capacidad.

  7. Continúe con los pasos restantes del asistente.

AWS CLI

Utilice el comando create-auto-scaling-group para crear un nuevo grupo de Auto Scaling con segmentos de distribución.

En el siguiente ejemplo, se utiliza primero un orden de prioridad de reservas de capacidad y, a continuación, de reservas de On-Demand capacidad interrumpibles y, a continuaciónCapacity Blocks, de reservas de capacidad interrumpibles. On-Demand

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --min-size 0 --max-size 10 --desired-capacity 5 \ --vpc-zone-identifier "subnet-abc1234a" \ --mixed-instances-policy '{ "LaunchTemplate": { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template" }, "Overrides": [ {"InstanceType": "m5.24xlarge"}, {"InstanceType": "p5.48xlarge"} ] }, "InstancesDistribution": { "OnDemandAllocationStrategy": "prioritized", "DistributionSegments": [ { "TargetCapacityTypes": [ "on-demand-capacity-reservation", "capacity-block", "interruptible-capacity-reservation", "on-demand" ] } ] } }' \ --capacity-reservation-specification '{ "CapacityReservationTarget": { "CapacityReservationResourceGroupArns": [ "arn:aws:resource-groups:us-east-1:123456789012:group/my-crg" ] } }'

Migre hacia y desde los segmentos de distribución

Puede migrar un grupo de Auto Scaling existente para usar segmentos de distribución y volver a migrar a una configuración estándar cuando sea necesario. En todos los escenarios de migración, las instancias existentes siguen ejecutándose. Los nuevos lanzamientos siguen la configuración actualizada.

Migre un grupo de instancias mixto para usar segmentos de distribución

Para migrar un grupo de instancias mixtas existente para usar segmentos de distribución, usa uno de los siguientes métodos. Auto Scaling borra automáticamente OnDemandBaseCapacity y OnDemandPercentageAboveBaseCapacity cuando añades segmentos de distribución.

Console
Para migrar un grupo existente a segmentos de distribución (consola)
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/ y seleccione Auto Scaling Groups en el panel de navegación.

  2. En la barra de navegación de la parte superior, elija Región de AWS dónde se encuentra su grupo de Auto Scaling.

  3. Elige el nombre de tu grupo de Auto Scaling para abrir su página de detalles.

  4. En la sección de requisitos de tipo de instancia, selecciona Editar.

  5. En los requisitos de tipo de instancia, elija Sobrescribir la plantilla de lanzamiento y, a continuación, elija Sobrescribir la plantilla de lanzamiento para los segmentos de distribución.

  6. En Opciones de distribución de instancias, elige Segmentos de distribución.

  7. En Seleccione el tipo de reserva de capacidad objetivo, seleccione los tipos de reserva de capacidad que desea incluir en este segmento de distribución. Asegúrese de que su grupo de recursos de reserva de capacidad contenga los tipos de reserva que seleccione.

  8. En Ordenar los tipos de reserva de capacidad objetivo, arrastre los tipos al orden de prioridad que desee. Si seleccionaste On-Demand instancias, debe ser la última.

  9. Elija Actualizar.

Para establecer el grupo de recursos de reserva de capacidad como el objetivo de un grupo existente, consulteActualiza un grupo de Auto Scaling existente.

AWS CLI

Usa el comando update-auto-scaling-group para agregar segmentos de distribución a tu política de instancias mixtas y establecer el ARN del grupo de recursos de reserva de capacidad como objetivo.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --mixed-instances-policy '{ "InstancesDistribution": { "DistributionSegments": [ { "TargetCapacityTypes": [ "on-demand-capacity-reservation", "capacity-block", "interruptible-capacity-reservation", "on-demand" ] } ] } }' \ --capacity-reservation-specification '{ "CapacityReservationPreference": "default", "CapacityReservationTarget": { "CapacityReservationResourceGroupArns": [ "arn:aws:resource-groups:us-east-1:123456789012:group/my-crg" ] } }'

Aléjate de los segmentos de distribución

Para volver a migrar a un grupo de instancias mixtas estándar, usa uno de los siguientes métodos.

Console
Para eliminar segmentos de distribución de un grupo (consola)
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/ y seleccione Auto Scaling Groups en el panel de navegación.

  2. En la barra de navegación de la parte superior, elija Región de AWS dónde se encuentra su grupo de Auto Scaling.

  3. Elige el nombre de tu grupo de Auto Scaling para abrir su página de detalles.

  4. En la sección de requisitos de tipo de instancia, selecciona Editar.

  5. En Requisitos de tipo de instancia, elige Restablecer para lanzar la plantilla. De este modo, se eliminan las anulaciones de la plantilla de lanzamiento, lo que borra la política de instancias mixtas y los segmentos de distribución junto con ella.

  6. Elija Actualizar.

AWS CLI

Utilice el comando https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html update-auto-scaling-group para configurar o. OnDemandBaseCapacity OnDemandPercentageAboveBaseCapacity Auto Scaling borra automáticamente los segmentos de distribución al configurar los campos antiguos.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --mixed-instances-policy '{ "InstancesDistribution": { "OnDemandBaseCapacity": 2, "OnDemandPercentageAboveBaseCapacity": 25 } }' \ --capacity-reservation-specification '{ "CapacityReservationPreference": "capacity-reservations-first" }'

Como alternativa, puedes borrar los segmentos de distribución de forma explícita configurándolos DistributionSegments en una lista vacía.

Si quieres pasar a usar una plantilla de lanzamiento en tu grupo de Auto Scaling sin una política de instancias mixtas, usa el update-auto-scaling-group comando con una plantilla de lanzamiento de nivel superior. Auto Scaling borra la política de instancias mixtas cuando proporcionas una plantilla de lanzamiento de nivel superior.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-launch-template \ --capacity-reservation-specification '{ "CapacityReservationPreference": "capacity-reservations-first" }'
nota

También puedes migrar hacia y desde los segmentos de distribución mediante una actualización de instancias con el --desired-configuration parámetro.

Scale-in comportamiento con los segmentos de distribución

Cuando tu grupo de Auto Scaling se amplía, Auto Scaling termina las instancias en el orden opuesto al tuyo. TargetCapacityTypes On-Demand las instancias se terminan primero, seguidas de las instancias del tipo de capacidad de menor prioridad, y así sucesivamente hasta el tipo de capacidad de mayor prioridad.

Por ejemplo, si TargetCapacityTypes se establece en["on-demand-capacity-reservation", "capacity-block", "interruptible-capacity-reservation", "on-demand"], Auto Scaling termina las instancias en el siguiente orden durante el escalado:

  1. On-Demand

  2. capacidad interrumpible Reservation-backed

  3. Respaldada por Capacity Block

  4. On-Demand Capacidad Reservation-backed

Si actualizas tus segmentos de distribución para eliminar un tipo de reserva, las instancias existentes de ese tipo eliminado se cancelarán antes que cualquier instancia cuyo tipo siga en la lista.

Consideraciones

  • Preferencia de reserva de capacidad: solo default se admite al configurar segmentos de distribución. Para obtener más información, consulte Preferencia de reserva de capacidad.

  • On-Demand estrategia de asignación: solo prioritized se admite cuando se configuran los segmentos de distribución.

  • Grupos activos: los segmentos de distribución no admiten grupos activos.

  • Capacidad puntual: la capacidad puntual no se admite como tipo de capacidad objetivo en los segmentos de distribución.