Tutorial: Configuración de la flota de EC2 para lanzar instancias en bloques de capacidad
En este tutorial se explican los pasos que debe seguir para que su flota de EC2 lance instancias en bloques de capacidad.
En la mayoría de los casos, la capacidad de destino de la solicitud de la flota de EC2 debe ser menor o igual que la capacidad disponible de la reserva de bloques de capacidad a la que se dirige. No se atenderán las solicitudes de capacidad de destino que superen los límites de la reserva de bloques de capacidad. Si la solicitud de capacidad de destino supera los límites de su reserva de bloques de capacidad, se mostrará una Insufficient Capacity Exception
para la capacidad que supere los límites de su reserva de bloques de capacidad.
nota
En el caso de bloques de capacidad, la flota de EC2 no recurrirá a la inicialización de instancias bajo demanda en el resto de la capacidad de destino deseada.
Si flota de EC2 no puede cumplir con la capacidad de destino solicitada en una reserva de bloques de capacidad disponible, la flota de EC2 ocupará toda la capacidad posible y devolverá las instancias que haya podido iniciar. Puede repetir la llamada a la flota de EC2 de nuevo hasta que se hayan aprovisionado todas las instancias.
Tras configurar la solicitud de la flota de EC2, debe esperar hasta la fecha de inicio de la reserva de bloques de capacidad. Si hace solicitudes a la flota de EC2 para iniciar un bloque de capacidad que aún no se ha iniciado, se mostrará un Insufficient Capacity Error
.
Una vez que se active su reserva de bloques de capacidad, podrá hacer llamadas a la API de la flota de EC2 y aprovisionar las instancias en su bloque de capacidad en función de los parámetros que haya seleccionado. Las instancias que se ejecutan en el bloque de capacidad seguirán ejecutándose hasta que las detenga o termine de forma manual o hasta que Amazon EC2 termine las instancias cuando finalice la reserva de bloques de capacidad.
Para obtener más información acerca de los bloques de capacidad, consulte bloques de capacidad para ML.
Consideraciones
-
Solo se admiten las solicitudes de la flota de EC2 de tipo
instant
para lanzar instancias en bloques de capacidad. Para obtener más información, consulte Configuración de una flota de EC2 de tipo instant. -
No se admiten varios bloques de capacidad en la misma solicitud de la flota de EC2.
-
No se admite el uso de
OnDemandTargetCapacity
niSpotTargetCapacity
al mismo tiempo que el valor decapacity-block
esté establecido enDefaultTargetCapacity
. -
Si el valor de
DefaultTargetCapacityType
está establecido encapacity-block
, no puede proporcionarOnDemandOptions::CapacityReservationOptions
. Se producirá una excepción.
Configuración de su flota de EC2 para lanzar instancias en bloques de capacidad
-
Creación de una plantilla de inicialización.
En la plantilla de inicialización, haga lo siguiente:
-
En
InstanceMarketOptionsRequest
, establezcaMarketType
encapacity-block
. -
Para definir como destino la reserva de bloque de capacidad, en
CapacityReservationID
, especifique el ID de reserva del bloque de capacidad.
Anote el nombre y la versión de la plantilla de inicialización. Usará esta información en el siguiente paso.
Para obtener más información acerca de la creación de una plantilla de inicialización, consulte Creación de una plantilla de inicialización de Amazon EC2.
-
-
Configure la flota de EC2.
Cree un archivo,
config.json
, con la siguiente configuración para su flota de EC2. En el ejemplo siguiente, reemplace los identificadores de recursos por sus propios identificadores de recursos.Para obtener más información acerca de la configuración de la flota de EC2, consulte Crear una flota de EC2.
{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "
CBR-launch-template
", "Version": "1
" }, "Overrides": [ { "InstanceType": "p5.48xlarge
", "AvailabilityZone": "us-east-1a
" }, ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity":10
, "DefaultTargetCapacityType": "capacity-block" }, "Type": "instant" } -
Inicialización de la flota.
Utilice el siguiente comando create-fleet
. aws ec2 create-fleet --cli-input-json file://config.json
Para obtener más información, consulte Crear una flota de EC2.