Utilizar Reservas de capacidad - Amazon Elastic Compute Cloud

Utilizar Reservas de capacidad

Para comenzar a utilizar Reservas de capacidad cree la reserva de capacidad en la zona de disponibilidad requerida. A continuación, puede iniciar instancias en la capacidad reservada, ver la utilización de su capacidad en tiempo real y aumentar o disminuir su capacidad según sea necesario.

De forma predeterminada, Reservas de capacidad coincide de forma automática con las nuevas instancias e instancias en ejecución que tienen atributos coincidentes (tipo de instancia, plataforma y zona de disponibilidad). Esto significa que cualquier instancia con atributos coincidentes se ejecuta automáticamente en la Reserva de capacidad. Sin embargo, también se puede dirigir a una Reserva de capacidad para cargas de trabajo específicas. Esto le permite controlar de manera explícita qué instancias pueden ejecutarse en esa capacidad reservada.

Puede especificar cómo finaliza la reserva. Puede elegir entre cancelar Reserva de capacidad o hacer que finalice de forma automática a una hora especificada. Si especifica una hora de finalización, la Reserva de capacidad se cancela en el plazo de una hora desde el tiempo especificado. Por ejemplo, si especifica 31/5/2019, 13:30:55, se garantiza que la Reserva de capacidad finalice entre las 13:30:55 y las 14:30:55 el 31/5/2019. Una vez una reserva finalice, no podrá destinar instancias a la Reserva de capacidad. Las instancias en ejecución en la capacidad reserva siguen ejecutándose de forma ininterrumpida. Si las instancias que se dirigen a una Reserva de capacidad se detienen, no podrá reiniciarlas hasta que quite la preferencia de destino de la Reserva de capacidad o las configure para que se dirijan a una Reserva de capacidad diferente.

Crear una Reserva de capacidad

Si su solicitud de creación de una reserva de capacidad tiene éxito, la capacidad estará disponible de forma inmediata. La capacidad seguirá estando reservada para su uso siempre que la Reserva de capacidad esté activa. Además, podrá iniciar instancias en ella en cualquier momento. Si la Reserva de capacidad está abierta, las instancias nuevas y existentes que tengan atributos coincidentes se ejecutarán automáticamente en la capacidad de la Reserva de capacidad. Si la Reserva de capacidad tiene el estado targeted, las instancias deben dirigirse específicamente a ella para ejecutarse en la capacidad reservada.

Su solicitud para crear una Reserva de capacidad puede fallar si se cumple una de las siguientes:

  • Amazon EC2 no tiene suficiente capacidad para llevar a cabo la solicitud. Puede volver a intentarlo más tarde, probar con una zona de disponibilidad distinta o realizar una solicitud inferior. Si su aplicación es flexible en cuanto a los tamaños y tipos de instancia, intente usar atributos de instancia diferentes.

  • La cantidad solicitada supera el límite de instancia a petición para la familia de instancias seleccionada. Incremente su límite de instancia a petición para la familia de instancias e inténtelo de nuevo. Para obtener más información, consulte Cuotas de las instancias bajo demanda.

Para crear una Reserva de capacidad con la consola
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. Elija Reservas de capacidad y, a continuación, elija Create Reserva de capacidad (Crear Reserva de capacidad).

  3. En la página Create a Reserva de capacidad (Crear una Reserva de capacidad), configure los siguientes ajustes en la sección Instance details (Detalles de la instancia): El tipo de instancia, la plataforma y la zona de disponibilidad de las instancias que lance deben coincidir con el tipo de instancia, plataforma y zona de disponibilidad que especifique aquí o la Reserva de capacidad no se aplica. Por ejemplo, si una Reserva de capacidad abierta no coincide, un inicialización de instancia que tenga como destino esa Reserva de capacidad producirá un error de forma explícita.

    1. Instance Type (Tipo de instancia) — el tipo de instancia que iniciar en la capacidad reservada.

    2. Launch EBS-optimized instances (iniciar instancias optimizadas para EBS) — especifique si reservar la capacidad para instancias optimizadas para EBS. Esta opción se selecciona de forma predeterminada para algunos tipos de instancias. Para obtener más información, consulte Instancias optimizadas para Amazon EBS.

    3. Plataforma — el sistema operativo para sus instancias. Para obtener más información, consulte Plataformas admitidas. Para obtener más información acerca de las plataformas Linux compatibles, consulte Plataformas compatibles en la Guía del usuario de Amazon EC2 para instancias de Linux.

    4. Availability Zone (Zona de disponibilidad) — la zona de disponibilidad en la que reservar la capacidad.

    5. Tenancy (Tenencia)—especifique si desea ejecutar una instancia de hardware compartido (opción predeterminada) o una instancia dedicada.

    6. (Opcional) ARN de grupo de ubicación: el ARN del grupo con ubicación en clúster en el que se debe crear la reserva de capacidad.

      Para obtener más información, consulte Las reservas de capacidad en grupos con ubicación en clúster.

    7. Quantity (Cantidad) — el número de instancias para el que reservar capacidad. Si especifica una cantidad que supera el límite de instancia a petición restante para el tipo de instancia seleccionada, se deniega la solicitud.

  4. Configure los siguientes ajustes en la sección Reservation details (Detalles de la reserva):

    1. Reservation Ends (Finalizaciones de la reserva) — elija una de las siguientes opciones:

      • Manually (Manualmente) — permite reservar la capacidad hasta que la cancele explícitamente.

      • Specific time (Tiempo específico) — cancela a reserva de capacidad automáticamente en la hora y fecha especificadas.

    2. Instance eligibility (Elegibilidad de la instancia) — elija una de las siguientes opciones.

      • open (abierto) (valor predeterminado) — la Reserva de capacidad coincide con cualquier instancia que tiene atributos coincidentes (tipo de instancia, plataforma y zona de disponibilidad). Si inicia una instancia con atributos coincidentes, se coloca en la capacidad reservada automáticamente.

      • targeted (dirigido) — la Reserva de capacidad solo acepta instancias que tienen atributos coincidentes (tipo de instancia, plataforma y zona de disponibilidad), y que se destinan explícitamente a la reserva.

  5. Elija Request reservation (Solicitar reserva).

Para crear una reserva de capacidad mediante la AWS CLI

Utilice el comando create-capacity-reservation (crear reserva de capacidad). Para obtener más información, consulte Plataformas admitidas. Para obtener más información acerca de las plataformas Linux compatibles, consulte Plataformas compatibles en la Guía del usuario de Amazon EC2 para instancias de Linux.

Por ejemplo, el comando siguiente crea una Reserva de capacidad que reserva capacidad para tres instancias m5.2xlarge que ejecutan Windows con las AMI de SQL Server en la zona de disponibilidad us-east-1a.

aws ec2 create-capacity-reservation --instance-type m5.2xlarge --instance-platform Windows with SQL Server --availability-zone us-east-1a --instance-count 3

iniciar instancias en una Reserva de capacidad existente

Al iniciar una instancia, puede especificar si desea iniciar la instancia en cualquier Reserva de capacidad open, en una Reserva de capacidad determinada o en un grupo de Reservas de capacidad. Solo puede iniciar una instancia en una Reserva de capacidad que tenga atributos coincidentes (tipo de instancia, plataforma y zona de disponibilidad) y capacidad suficiente. También puede configurar la instancia para evitar la ejecución en una Reserva de capacidad, incluso si tiene una Reserva de capacidad open que tiene atributos coincidentes y capacidad disponible.

la inicialización de una instancia en una Reserva de capacidad reduce su capacidad disponible por número de instancias iniciadas. Por ejemplo, si inicia tres instancias, la capacidad disponible de la Reserva de capacidad se reduce en tres.

Para iniciar instancias en una Reserva de capacidad existente con la consola
  1. Siga el procedimiento para iniciar una instancia, pero no la lance hasta que haya completado los siguientes pasos para especificar la configuración del grupo con ubicación y la reserva de capacidad.

  2. Expanda Detalles avanzados y haga lo siguiente:

    1. En Grupo de ubicación, seleccione el grupo con ubicación en clúster en el que se iniciará la instancia.

    2. Para Capacity Reservation (Reserva de capacidad), elija una de las siguientes opciones en función de la configuración de la reserva de capacidad:

      • Ninguna: impide que las instancias se lancen en un reserva de capacidad. Las instancias se ejecutan en capacidad bajo demanda.

      • Abierta: inicia la instancia en cualquier reserva de capacidad que tenga los atributos coincidentes y capacidad suficiente para la cantidad de instancias seleccionadas. Si no hay Reserva de capacidad coincidentes con suficiente capacidad, la instancia se inicia en capacidad bajo demanda.

      • Destino por ID: inicia las instancias en la reserva de capacidad seleccionada. Si la Reserva de capacidad seleccionada no tiene suficiente capacidad para la cantidad de instancias seleccionadas, la inicialización de la instancia produce un error.

      • Destino por grupo: inicia las instancias en cualquier reserva de capacidad con atributos coincidentes y capacidad disponible en el grupo de reserva de capacidad seleccionado. Si el grupo seleccionado no tiene una Reserva de capacidad con atributos coincidentes y capacidad disponible, las instancias se inician en capacidad bajo demanda.

  3. En el panel Summary (Resumen), revise la configuración de la instancia y, a continuación, elija Launch instance (iniciar instancia). Para obtener más información, consulte Lance una instancia con el nuevo asistente de inicialización de instancias.

Para iniciar una instancia en una reserva de capacidad existente mediante la AWS CLI

Utilice el comando run-instances y especifique el parámetro --capacity-reservation-specification.

En el siguiente ejemplo se inicia una instancia t2.micro en cualquier Reserva de capacidad abierto que cuente con atributos coincidentes y capacidad disponible:

aws ec2 run-instances --image-id ami-abc12345 --count 1 --instance-type t2.micro --key-name MyKeyPair --subnet-id subnet-1234567890abcdef1 --capacity-reservation-specification CapacityReservationPreference=open

En el siguiente ejemplo se inicia una instancia t2.micro en una Reserva de capacidad targeted:

aws ec2 run-instances --image-id ami-abc12345 --count 1 --instance-type t2.micro --key-name MyKeyPair --subnet-id subnet-1234567890abcdef1 --capacity-reservation-specification CapacityReservationTarget={CapacityReservationId=cr-a1234567}

En el siguiente ejemplo se inicia una instancia t2.micro en un grupo de Reserva de capacidad:

aws ec2 run-instances --image-id ami-abc12345 --count 1 --instance-type t2.micro --key-name MyKeyPair --subnet-id subnet-1234567890abcdef1 --capacity-reservation-specification CapacityReservationTarget={CapacityReservationResourceGroupArn=arn:aws:resource-groups:us-west-1:123456789012:group/my-cr-group}

Modificar una Reserva de capacidad

Puede cambiar los atributos de una Reserva de capacidad activa después de haberla creado. No puede modificar una Reserva de capacidad después de que haya caducado o después de haberla cancelado explícitamente.

Cuando modifique una Reserva de capacidad, solo puede aumentar o disminuir la cantidad y cambiar la forma en la que se publica. No puede cambiar el tipo de instancia, la optimización para EBS, la plataforma, la zona de disponibilidad ni la elegibilidad de las instancias de una Reserva de capacidad. Si necesita modificar cualquiera de estos atributos, le recomendamos cancelar la reserva y, a continuación, crear una nueva con los atributos obligatorios.

Si especifica una nueva cantidad que supera el límite de instancia a petición restante para el tipo de instancia seleccionada, se producirá un error en la actualización.

Para modificar una Reserva de capacidad con la consola
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. Elija Reservas de capacidad, seleccione la Reserva de capacidad que modificar y, a continuación, elija Edit (Editar).

  3. Modifique las opciones de Quantity (Cantidad) o Reservation ends (Finalización de la reserva) según corresponda y elija Save changes (Guardar cambios).

Para modificar una reserva de capacidad mediante la AWS CLI

Utilice el comando modify-capacity-reservations:

Por ejemplo, el comando siguiente modifica una Reserva de capacidad para reservar capacidad para ocho instancias.

aws ec2 modify-capacity-reservation --capacity-reservation-id cr-1234567890abcdef0 --instance-count 8

Modificar la configuración de la Reserva de capacidad de una instancia

Puede modificar los ajustes de Reserva de capacidad en una instancia detenida en cualquier momento:

  • Empiece en cualquier Reserva de capacidad que cuente con atributos coincidentes (tipo de instancia, plataforma y zona de disponibilidad) y capacidad disponible.

  • Inicie la instancia en un Reserva de capacidad específico.

  • Empiece en cualquier Reserva de capacidad que cuente con atributos coincidentes y capacidad disponible en un grupo de Reserva de capacidad

  • Evite que la instancia inicie en un Reserva de capacidad.

Para modificar la configuración de la Reserva de capacidad de una instancia con la consola
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. Elija Instances (instancia[s]) y, a continuación, seleccione la instancia que desee modificar. Detenga la instancia si aún no está detenida.

  3. Elija Actions (Acciones), Modify Reserva de capacidad Settings (Modificar ajustes de Reserva de capacidad).

  4. En Reserva de capacidad, elija una de las siguientes opciones:

    • Open (Abrir) — inicia la instancia a cualquier Reserva de capacidad que tenga los atributos correspondientes y capacidad suficiente para la cantidad de instancias seleccionadas. Si no hay Reserva de capacidad coincidentes con suficiente capacidad, la instancia se inicia en capacidad bajo demanda.

    • None (Ninguno) — Hace que las instancias no se lancen en un Reserva de capacidad. Las instancias se ejecutan en capacidad bajo demanda.

    • Specify Capacity Reservation (Especificar reserva de capacidad): inicia las instancias en la Reserva de capacidad seleccionada. Si la Reserva de capacidad seleccionada no tiene suficiente capacidad para la cantidad de instancias seleccionadas, la inicialización de la instancia produce un error.

    • Specify Capacity Reservation group (Especificar grupo de reserva de capacidad): inicia las instancias en cualquier Reserva de capacidad con atributos coincidentes y capacidad disponible en el grupo de Reserva de capacidad seleccionado. Si el grupo seleccionado no tiene una Reserva de capacidad con atributos coincidentes y capacidad disponible, las instancias se inician en capacidad bajo demanda.

Para modificar la configuración de la reserva de capacidad de una instancia mediante la AWS CLI

Utilice el comando modify-instance-capacity-reservation-attributes.

Por ejemplo, el comando siguiente cambia la configuración de Reserva de capacidad de una instancia a open o none.

aws ec2 modify-instance-capacity-reservation-attributes --instance-id i-1234567890abcdef0 --capacity-reservation-specification CapacityReservationPreference=none|open

Por ejemplo, el siguiente comando modifica una instancia para dirigirse a una Reserva de capacidad determinada.

aws ec2 modify-instance-capacity-reservation-attributes --instance-id i-1234567890abcdef0 --capacity-reservation-specification CapacityReservationTarget={CapacityReservationId=cr-1234567890abcdef0}

Por ejemplo, el siguiente comando modifica una instancia para dirigirse a un grupo de Reserva de capacidad determinado.

aws ec2 modify-instance-capacity-reservation-attributes --instance-id i-1234567890abcdef0 --capacity-reservation-specification CapacityReservationTarget={CapacityReservationResourceGroupArn=arn:aws:resource-groups:us-west-1:123456789012:group/my-cr-group}

Ver una Reserva de capacidad

Reservas de capacidad tiene los siguientes estados posibles:

  • active — la capacidad está disponible y se puede utilizar.

  • expired — la Reserva de capacidad caducó automáticamente en la hora y fecha especificadas en su solicitud de reserva. La capacidad reservada ya no está disponible para su uso.

  • cancelled—El Reserva de capacidad se ha cancelado. La capacidad reservada ya no está disponible para su uso.

  • pending — la solicitud de Reserva de capacidad es correcta, pero el aprovisionamiento de la capacidad sigue estando pendiente.

  • failed — se ha producido un error en la solicitud de Reserva de capacidad. Se puede producir un error en la solicitud debido a parámetros de solicitud no válidos, restricciones de capacidad o restricciones del límite de instancias. Puede ver una solicitud fallida durante 60 minutos.

nota

Debido al modelo de coherencia final que siguen las API de Amazon EC2, después de crear una reserva de capacidad, la consola y la respuesta describe-capacity-reservations pueden tardar hasta 5 minutos en indicar que la reserva de capacidad se encuentra en estado active. Durante este tiempo, la consola y la respuesta describe-capacity-reservations pueden indicar que la reserva de capacidad se encuentra en estado pending. Sin embargo, es posible que la reserva de capacidad ya esté disponible para su uso y pueda intentar iniciar instancias en ella.

Para ver sus Reservas de capacidad con la consola
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. Elija Reservas de capacidad y seleccione una Reserva de capacidad que ver.

  3. Elija View launched instances for this reservation (Ver instancias iniciadas para esta reserva).

Para ver sus reservas de capacidad mediante la AWS CLI

Utilice el comando describe-capacity-reservations:

Por ejemplo, el comando siguiente describe todas las Reservas de capacidad.

aws ec2 describe-capacity-reservations

Resultado de ejemplo.

{ "CapacityReservations": [ { "CapacityReservationId": "cr-1234abcd56EXAMPLE ", "EndDateType": "unlimited", "AvailabilityZone": "eu-west-1a", "InstanceMatchCriteria": "open", "Tags": [], "EphemeralStorage": false, "CreateDate": "2019-08-16T09:03:18.000Z", "AvailableInstanceCount": 1, "InstancePlatform": "Linux/UNIX", "TotalInstanceCount": 1, "State": "active", "Tenancy": "default", "EbsOptimized": true, "InstanceType": "a1.medium", "PlacementGroupArn": "arn:aws:ec2:us-east-1:123456789012:placement-group/MyPG" }, { "CapacityReservationId": "cr-abcdEXAMPLE9876ef ", "EndDateType": "unlimited", "AvailabilityZone": "eu-west-1a", "InstanceMatchCriteria": "open", "Tags": [], "EphemeralStorage": false, "CreateDate": "2019-08-07T11:34:19.000Z", "AvailableInstanceCount": 3, "InstancePlatform": "Linux/UNIX", "TotalInstanceCount": 3, "State": "cancelled", "Tenancy": "default", "EbsOptimized": true, "InstanceType": "m5.large" } ] }

Cancelar una Reserva de capacidad

Puede cancelar una Reserva de capacidad en cualquier momento si ya no necesita la capacidad reservada. Cuando cancele una Reserva de capacidad, la capacidad se liberará de inmediato y ya no estará reservada para su uso.

Puede cancelar Reservas de capacidad vacías y Reservas de capacidad que tengan instancias en ejecución. Si cancela una Reserva de capacidad que dispone de instancias de ejecución, las instancias siguen ejecutándose de forma normal fuera de la reserva de capacidad con las tarifas de instancia en diferido estándar o con una tarifa con descuento si dispone de un Savings Plan o una instancia reservada regional.

Una vez que cancele una Reserva de capacidad, las instancias a las que se dirigen no pueden volverse a iniciar. Modifique estas instancias de manera que se destinen a un inicialización de Reserva de capacidad, diferente en cualquier Reserva de capacidad con estado open (abierto) con atributos coincidentes y capacidad suficiente, o evite la inicialización en una Reserva de capacidad. Para obtener más información, consulte Modificar la configuración de la Reserva de capacidad de una instancia.

Para cancelar una Reserva de capacidad con la consola
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. Elija Reservas de capacidad y seleccione la Reserva de capacidad que cancelar.

  3. Elija Cancel reservation (Cancelar reserva) y Cancel reservation (Cancelar reserva).

Para cancelar una reserva de capacidad mediante la AWS CLI

Utilice el comando cancel-capacity-reservation:

Por ejemplo, el siguiente comando cancela una Reserva de capacidad con un ID de cr-1234567890abcdef0.

aws ec2 cancel-capacity-reservation --capacity-reservation-id cr-1234567890abcdef0