Tutorial: Utiliza la flota de spot con ponderación de instancias - Amazon Elastic Compute Cloud

Tutorial: Utiliza la flota de spot con ponderación de instancias

Este tutorial utiliza una empresa ficticia llamada Example Corp para ilustrar el proceso de solicitud de una flota de spot mediante la ponderación de instancias.

Objetivo

Example Corp es una compañía farmacéutica que desea aprovechar la potencia computacional de Amazon EC2 para realizar el cribado de compuestos químicos que podrían utilizarse para combatir el cáncer.

Planificación

Example Corp primero consulta las Prácticas recomendadas para instancias de spot. A continuación, Example Corp determina los siguientes requisitos para su flota de spot.

Tipos de instancias

Example Corp tiene una aplicación que requiere un uso intensivo de memoria y de recursos informáticos que responde mejor con 60 GB de memoria, como mínimo, y ocho CPU virtuales (vCPU). Desean maximizar estos recursos para la aplicación al precio más bajo posible. Example Corp decide que cualquiera de los siguientes tipos de instancias EC2 podría satisfacer sus necesidades:

Tipo de instancia Memoria (GiB) vCPU

r3.2xlarge

61

8

r3.4xlarge

122

16

r3.8xlarge

244

32

Capacidad de destino en unidades

Con ponderación de instancias, la capacidad de destino puede ser igual a un número de instancias (opción predeterminada) o a una combinación de factores como núcleos (vCPU), memoria (GiB) y almacenamiento (GB). Considerando la base para su aplicación (60 GB de RAM y ocho vCPU) como 1 unidad, Example Corp decide que 20 veces esta cantidad satisfaría sus necesidades. Así que la compañía establece la capacidad de destino de la solicitud de flota de spot en 20.

Ponderaciones de instancias

Después de determinar la capacidad de destino, Example Corp calcula las ponderaciones de instancias. Para calcularlas para cada tipo de instancia, determinan las unidades de cada tipo de instancia que son necesarias para alcanzar la capacidad de destino de la siguiente manera:

  • r3.2xlarge (61,0 GB, 8 vCPU) = 1 unidad de 20

  • r3.4xlarge (122,0 GB, 16 vCPU) = 2 unidades de 20

  • r3.8xlarge (244,0 GB, 32 vCPU) = 4 unidades de 20

Por consiguiente, Example Corp asigna ponderaciones de instancias de 1, 2 y 4 a las respectivas configuraciones de inicialización en la solicitud de flota de spot.

Precio por hora de unidad

Example Corp usa el precio bajo demanda por hora de instancia como punto de inicio de su precio. También podrían usar precios de spot recientes o una combinación de ambos. Para calcular el precio por hora de unidad, dividen el precio inicial por hora de instancia entre la ponderación. Por ejemplo:

Tipo de instancia Precio bajo demanda Ponderación de instancia Precio por hora de unidad

r3.2xLarge

0,7 USD

1

0,7 USD

r3.4xLarge

1,4 USD

2

0,7 USD

r3.8xLarge

2,8 USD

4

0,7 USD

Example Corp podría usar un precio global por hora de unidad de 0,7 USD y ser competitivos para los tres tipos de instancias. También podrían usar un precio global por hora de unidad de 0,7 USD y un precio específico por hora de unidad de 0,9 USD en la especificación de inicialización r3.8xlarge.

Verificar permisos

Antes de crear una solicitud de flota de spot, Example Corp verifica que tiene un rol de IAM con los permisos necesarios. Para obtener más información, consulte Permisos de flota de spot.

Crear la solicitud

Example Corp crea un archivo, config.json, con la siguiente configuración para su solicitud de flota de spot:

{ "SpotPrice": "0.70", "TargetCapacity": 20, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "SubnetId": "subnet-482e4972", "WeightedCapacity": 1 }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.4xlarge", "SubnetId": "subnet-482e4972", "WeightedCapacity": 2 }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.8xlarge", "SubnetId": "subnet-482e4972", "SpotPrice": "0.90", "WeightedCapacity": 4 } ] }

Example Corp crea la solicitud de flota de spot con el comando request-spot-fleet.

aws ec2 request-spot-fleet --spot-fleet-request-config file://config.json

Para obtener más información, consulte Tipos de solicitudes de flota de spot.

Cumplimiento

La estrategia de asignación determina de qué grupos de capacidad de spot proceden las instancias de spot.

Con la estrategia lowestPrice (que es la estrategia predeterminada), las instancias de spot proceden del grupo con el precio de spot más bajo por unidad en el momento de la prestación del servicio. Para proporcionar 20 unidades de capacidad, la flota de spot inicia 20 instancias r3.2xlarge (20 dividido por 1), 10 instancias r3.4xlarge (20 dividido por 2) o 5 instancias r3.8xlarge (20 dividido por 4).

Si Example Corp usara la estrategia diversified, las instancias de spot procederían de los tres grupos. La flota de spot iniciaría 6 instancias r3.2xlarge (que proporcionan 6 unidades), 3 instancias r3.4xlarge (que proporcionan 6 unidades) y 2 instancias r3.8xlarge (que proporcionan 8 unidades), con un total de 20 unidades.