Exemples de CLI configurations Spot Fleet - Amazon Elastic Compute Cloud

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exemples de CLI configurations Spot Fleet

Vous pouvez définir la configuration de votre parc Spot dans un JSON fichier, puis référencer ce fichier à l'aide du request-spot-fleet AWS CLI commande pour créer votre flotte, comme suit :

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

Les exemples suivants illustrent les configurations de lancement pour différents cas d'utilisation de Spot Fleet. Pour plus d'informations sur les paramètres de configuration, consultez request-spot-fleetle AWS CLI Référence de commande. Pour plus d'informations sur la création d'un parc de spots, consultezCréer une flotte Spot.

Note

Pour le parc d’instances Spot, vous ne pouvez pas spécifier d’ID d’interface réseau dans un modèle ou une spécification de lancement. Veillez à omettre le paramètre NetworkInterfaceID dans votre modèle ou spécification de lancement.

Exemple 1 : Lancement d’instances Spot en utilisant la zone de disponibilité ou le sous-réseau offrant le prix le moins élevé de la région

L’exemple suivant spécifie une seule spécification de lancement sans Zone de disponibilité ou sous-réseau. Le parc d’instances Spot lance les instances dans la zone de disponibilité ayant le prix le moins élevé qui a un sous-réseau par défaut. Le prix que vous payez ne dépasse pas le prix à la demande.

{ "TargetCapacity": 20, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "m3.medium", "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" } } ] }

Exemple 2 : Lancement d’instances Spot en utilisant la zone de disponibilité ou le sous-réseau offrant le prix le moins élevé dans une liste spécifiée

Les exemples suivants spécifient deux spécifications de lancement avec des zones de disponibilité ou des sous-réseaux différents, mais avec le même type d'instance etAMI.

Zones de disponibilité

Le parc d’instances Spot lance les instances dans le sous-réseau par défaut de la zone de disponibilité ayant le prix le moins élevé que vous avez spécifié.

{ "TargetCapacity": 20, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "m3.medium", "Placement": { "AvailabilityZone": "us-west-2a, us-west-2b" }, "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" } } ] }

Sous-réseaux

Vous pouvez spécifier des sous-réseaux par défaut ou des sous-réseaux autres que ceux par défaut, et les sous-réseaux autres que ceux par défaut peuvent provenir d'un sous-réseau par défaut ou d'un sous-réseau autre que celui par défaut. VPC VPC Le service d’instances Spot lance les instances sur n’importe quel réseau se trouvant dans la zone de disponibilité ayant le prix le moins élevé.

Vous ne pouvez pas spécifier plusieurs sous-réseaux d’une même zone de disponibilité dans une demande de parc d’instances Spot.

{ "TargetCapacity": 20, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "m3.medium", "SubnetId": "subnet-a61dafcf, subnet-65ea5f08", "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" } } ] }

Si les instances sont lancées par défautVPC, elles reçoivent une IPv4 adresse publique par défaut. Si les instances ne sont pas lancées par défautVPC, elles ne reçoivent pas d'IPv4adresse publique par défaut. Utilisez une interface réseau dans la spécification de lancement pour attribuer une IPv4 adresse publique aux instances lancées selon une méthode autre que celle par défautVPC. Lorsque vous spécifiez une interface réseau, vous devez inclure l’ID de sous-réseau et l’ID du groupe de sécurité à l’aide de l’interface réseau.

... { "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "InstanceType": "m3.medium", "NetworkInterfaces": [ { "DeviceIndex": 0, "SubnetId": "subnet-1a2b3c4d", "Groups": [ "sg-1a2b3c4d" ], "AssociatePublicIpAddress": true } ], "IamInstanceProfile": { "Arn": "arn:aws:iam::880185128111:instance-profile/my-iam-role" } } ...

Exemple 3 : Lancement d’instances Spot en utilisant le type d’instance offrant le prix le plus bas dans une liste spécifiée

Les exemples suivants spécifient deux configurations de lancement avec des types d'instance différents, mais identiques, AMI ainsi qu'une zone de disponibilité ou un sous-réseau. Le parc d’instances Spot lance les instances en utilisant le type d’instance spécifié offrant le prix le plus bas.

Zone de disponibilité

{ "TargetCapacity": 20, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "c5.4xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } }, { "ImageId": "ami-1a2b3c4d", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "r3.8xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } } ] }

Sous-réseau

{ "TargetCapacity": 20, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "c5.4xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "r3.8xlarge", "SubnetId": "subnet-1a2b3c4d" } ] }

Exemple 4 : Remplacement du prix pour la demande

Nous vous avons recommandé d’utiliser le prix maximum par défaut, qui correspond au prix à la demande. Si vous préférez, vous pouvez indiquer un prix maximum pour la demande du flotte, et les prix maximum des spécifications de lancement individuelles.

Les exemples suivants indiquent le prix maximum pour la demande du flotte, et les prix maximum pour deux des trois spécifications de lancement. Le prix maximum de la demande de flotte est utilisé pour toutes les spécifications de lancement qui ne spécifient aucun prix maximum. Le parc d’instances Spot lance les instances en utilisant le type d’instance offrant le prix le plus bas.

Zone de disponibilité

{ "SpotPrice": "1.00", "TargetCapacity": 30, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c3.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" }, "SpotPrice": "0.10" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "c3.4xlarge", "Placement": { "AvailabilityZone": "us-west-2b" }, "SpotPrice": "0.20" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "c3.8xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } } ] }

Sous-réseau

{ "SpotPrice": "1.00", "TargetCapacity": 30, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c3.2xlarge", "SubnetId": "subnet-1a2b3c4d", "SpotPrice": "0.10" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "c3.4xlarge", "SubnetId": "subnet-1a2b3c4d", "SpotPrice": "0.20" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "c3.8xlarge", "SubnetId": "subnet-1a2b3c4d" } ] }

Exemple 5 : lancement d’un parc d’instances Spot en utilisant la stratégie d’allocation diversifiée

L’exemple suivant utilise la stratégie d’allocation diversified. Les spécifications de lancement ont des types d'instances différents mais identiques, qu'il s'agisse AMI d'une zone de disponibilité ou d'un sous-réseau. Le parc d’instances Spot répartit les 30 instances entre les trois spécifications de lancement de sorte qu’il existe 10 instances de chaque type. Pour de plus amples informations, veuillez consulter Utilisez des stratégies d'allocation pour déterminer comment EC2 Fleet ou Spot Fleet exploite les capacités sur place et à la demande.

Zone de disponibilité

{ "SpotPrice": "0.70", "TargetCapacity": 30, "AllocationStrategy": "diversified", "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } } ] }

Sous-réseau

{ "SpotPrice": "0.70", "TargetCapacity": 30, "AllocationStrategy": "diversified", "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c4.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "SubnetId": "subnet-1a2b3c4d" } ] }

Une bonne pratique pour augmenter les chances qu'une demande ponctuelle puisse être satisfaite en EC2 fonction de la capacité en cas de panne dans l'une des zones de disponibilité consiste à diversifier les zones. Pour ce scénario, incluez chaque zone disponibilité à votre disposition dans les spécifications de lancement. Et, au lieu d’utiliser le même sous-réseau à chaque fois, utilisez trois sous-réseaux uniques (chacun correspondant à une zone différente).

Zone de disponibilité

{ "SpotPrice": "0.70", "TargetCapacity": 30, "AllocationStrategy": "diversified", "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2a" } }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "Placement": { "AvailabilityZone": "us-west-2c" } } ] }

Sous-réseau

{ "SpotPrice": "0.70", "TargetCapacity": 30, "AllocationStrategy": "diversified", "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c4.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.2xlarge", "SubnetId": "subnet-2a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "SubnetId": "subnet-3a2b3c4d" } ] }

Exemple 6 : lancement d’un parc d’instances Spot en utilisant la pondération d’instance

Les exemples suivants utilisent la pondération d’instance, ce qui signifie que le prix est déterminé par heure d’unité, et non par heure d’instance. Chaque configuration de lancement répertorie un type d’instance différent et une pondération différente. Le parc d’instances Spot sélectionne le type d’instance ayant le prix par heure d’unité le plus bas. Le parc d’instances Spot calcule le nombre d’instances Spot à lancer en divisant la capacité cible par la pondération d’instance. Si le résultat n’est pas un nombre entier, le parc d’instances Spot l’arrondit à l’entier suivant afin que la taille de votre flotte ne soit pas inférieure à sa capacité cible.

Si la demande r3.2xlarge est satisfaite, le parc d’instances Spot met en service 4 de ces instances. Divisez 20 par 6 pour un total de 3,33 instances, puis arrondissez à 4 instances.

Si la demande c3.xlarge est satisfaite, le parc d’instances Spot met en service 7 de ces instances. Divisez 20 par 3 pour un total de 6,66 instances, puis arrondissez à 7 instances.

Pour de plus amples informations, veuillez consulter Utilisez la pondération des instances pour gérer les coûts et les performances de votre EC2 flotte ou de votre flotte ponctuelle.

Zone de disponibilité

{ "SpotPrice": "0.70", "TargetCapacity": 20, "IamFleetRole": "arn:aws:iam::123456789012:role/aws-ec2-spot-fleet-tagging-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" }, "WeightedCapacity": 6 }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "c3.xlarge", "Placement": { "AvailabilityZone": "us-west-2b" }, "WeightedCapacity": 3 } ] }

Sous-réseau

{ "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-1a2b3c4d", "WeightedCapacity": 6 }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "c3.xlarge", "SubnetId": "subnet-1a2b3c4d", "WeightedCapacity": 3 } ] }

Exemple 7 : lancement d’un parc d’instances Spot avec une capacité à la demande

Pour garantir que vous avez toujours la capacité d’instance, vous pouvez inclure une demande de capacité à la demande dans votre demande de parc d’instances Spot . S’il y a la capacité nécessaire, la demande à la demande est toujours satisfaite. Le solde de la capacité cible est assuré en tant que Spot s’il existe une capacité et une disponibilité.

L’exemple suivant spécifie la capacité cible souhaitée de 10 instances, dont 5 correspondent à une capacité à la demande. La capacité Spot n’est pas spécifiée : elle est impliquée dans le solde de la capacité cible moins la capacité à la demande. Amazon EC2 lance 5 unités de capacité à la demande et 5 unités de capacité (10-5=5) sous forme de Spot si la EC2 capacité et la disponibilité d'Amazon sont disponibles.

{ "IamFleetRole": "arn:aws:iam::781603563322:role/aws-ec2-spot-fleet-tagging-role", "AllocationStrategy": "lowestPrice", "TargetCapacity": 10, "SpotPrice": null, "ValidFrom": "2018-04-04T15:58:13Z", "ValidUntil": "2019-04-04T15:58:13Z", "TerminateInstancesWithExpiration": true, "LaunchSpecifications": [], "Type": "maintain", "OnDemandTargetCapacity": 5, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0dbb04d4a6cca5ad1", "Version": "2" }, "Overrides": [ { "InstanceType": "t2.medium", "WeightedCapacity": 1, "SubnetId": "subnet-d0dc51fb" } ] } ] }

Exemple 8 : Configurer le rééquilibrage de capacité pour lancer les instances Spot de remplacement

L'exemple suivant configure le parc Spot pour lancer une instance Spot de remplacement lorsqu'Amazon EC2 émet une recommandation de rééquilibrage pour une instance Spot du parc. Pour configurer le remplacement automatique de Instances Spot, pour ReplacementStrategy, spécifiez launch-before-terminate. Pour configurer le délai entre le lancement des nouvelles instances Spot de remplacement et le moment où les anciennes instances Spot sont automatiquement supprimées, pour termination-delay, spécifiez une valeur en secondes. Pour de plus amples informations, veuillez consulter Options de configuration.

Note

Nous vous recommandons d’utiliser launch-before-terminate uniquement si vous pouvez prédire la durée de la procédure d’arrêt de votre instance. Cela garantit que les anciennes instances ne sont résiliées qu’une fois les procédures d’arrêt terminées. Toutes les instances en cours d’exécution vous sont facturées.

L’efficacité de la stratégie de rééquilibrage de capacité dépend du nombre de groupes de capacités Spot spécifiés dans la demande de parc d’instances Spot. Nous vous recommandons de configurer le parc avec un ensemble diversifié de types d’instance et de zones de disponibilité, et pour AllocationStrategy, spécifiez capacityOptimized. Pour plus d’informations sur ce que vous devez prendre en compte lors de la configuration d’un parc d’instances Spot pour le rééquilibrage de capacité, consultez la rubrique Utilisez le rééquilibrage des capacités dans le EC2 parc et le parc ponctuel pour remplacer les instances ponctuelles à risque.

{ "SpotFleetRequestConfig": { "AllocationStrategy": "capacityOptimized", "IamFleetRole": "arn:aws:iam::000000000000:role/aws-ec2-spot-fleet-tagging-role", "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "LaunchTemplate", "Version": "1" }, "Overrides": [ { "InstanceType": "c3.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } }, { "InstanceType": "c4.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } }, { "InstanceType": "c5.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } } ] } ], "TargetCapacity": 5, "SpotMaintenanceStrategies": { "CapacityRebalance": { "ReplacementStrategy": "launch-before-terminate", "TerminationDelay": "720" } } } }

Exemple 9 : lancer des instances Spot dans une flotte optimisée pour la capacité

L’exemple suivant montre comment configurer un parc d’instances Spot avec une stratégie d’allocation Spot qui optimise la capacité. Pour optimiser la capacité, vous devez définir AllocationStrategy sur capacityOptimized.

Dans l’exemple suivant, les trois spécifications de lancement spécifient trois groupes de capacités Spot. La capacité cible est de 50 instances Spot. Le parc d’instances Spot tente de lancer 50 instances Spot dans le groupe de capacités Spot avec une capacité optimale pour le nombre d’instances qui sont lancées.

{ "TargetCapacity": "50", "SpotFleetRequestConfig": { "AllocationStrategy": "capacityOptimized", }, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "AvailabilityZone": "us-west-2a" }, { "InstanceType": "m4.2xlarge", "AvailabilityZone": "us-west-2b" }, { "InstanceType": "c5.2xlarge", "AvailabilityZone": "us-west-2b" } ] } ] }

Exemple 10 : lancer des instances Spot dans une flotte optimisée pour la capacité avec des priorités

L’exemple suivant montre comment configurer un parc d’instances Spot avec une stratégie d’allocation Spot qui optimise la capacité tout en utilisant la priorité sur la base du meilleur effort.

Lors de l’utilisation de la stratégie d’allocation capacityOptimizedPrioritized, vous pouvez utiliser le paramètre Priority pour spécifier les priorités des groupes de capacités Spot, où plus le nombre est faible, plus la priorité est élevée. Vous pouvez également définir la même priorité pour plusieurs groupes de capacités Spot si vous les privilégiez également. Si vous ne définissez pas de priorité pour un groupe, le groupe sera considéré comme le dernier en termes de priorité.

Pour hiérarchiser les groupes de capacités Spot, vous devez définir AllocationStrategy sur capacityOptimizedPrioritized. Le parc d’instances Spot optimisera la capacité d’abord, mais respectera les priorités sur la base du meilleur effort (par exemple, si le respect des priorités n’affecte pas de manière significative la capacité du parc d’instances Spot à fournir une capacité optimale). C’est une bonne option pour les charges de travail pour lesquelles la possibilité de perturbation doit être minimisée, mais la priorité de certains types d’instances est également importante.

Dans l’exemple suivant, les trois spécifications de lancement spécifient trois groupes de capacités Spot. Chaque groupe est classé par ordre de priorité, où plus le nombre est faible, plus la priorité est élevée. La capacité cible est de 50 instances Spot. Le parc d’instances Spot tente de lancer 50 instances Spot dans le groupe de capacités Spot avec la priorité la plus élevée sur la base du meilleur effort, mais optimise d’abord la capacité.

{ "TargetCapacity": "50", "SpotFleetRequestConfig": { "AllocationStrategy": "capacityOptimizedPrioritized" }, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "Priority": 1, "AvailabilityZone": "us-west-2a" }, { "InstanceType": "m4.2xlarge", "Priority": 2, "AvailabilityZone": "us-west-2b" }, { "InstanceType": "c5.2xlarge", "Priority": 3, "AvailabilityZone": "us-west-2b" } ] } ] }

Exemple 11 : Lancer des instances ponctuelles dans une priceCapacityOptimized flotte

L’exemple suivant montre comment configurer un parc d’instances Spot avec une stratégie d’allocation Spot qui optimise la capacité et le prix le plus bas. Pour optimiser la capacité tout en tenant compte du prix, vous devez définir le Spot AllocationStrategy sur priceCapacityOptimized.

Dans l’exemple suivant, les trois spécifications de lancement spécifient trois groupes de capacités Spot. La capacité cible est de 50 instances Spot. Le parc d’instances Spot tente de lancer 50 instances Spot dans le groupe de capacités Spot avec une capacité optimale pour le nombre d’instances qui sont lancées, tout en choisissant également le groupe le moins cher.

{ "SpotFleetRequestConfig": { "AllocationStrategy": "priceCapacityOptimized", "OnDemandAllocationStrategy": "lowestPrice", "ExcessCapacityTerminationPolicy": "default", "IamFleetRole": "arn:aws:iam::111111111111:role/aws-ec2-spot-fleet-tagging-role", "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0123456789example", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "AvailabilityZone": "us-west-2a" }, { "InstanceType": "m4.2xlarge", "AvailabilityZone": "us-west-2b" }, { "InstanceType": "c5.2xlarge", "AvailabilityZone": "us-west-2b" } ] } ], "TargetCapacity": 50, "Type": "request" } }

Exemple 12 : configurer la sélection de type d’instance basée sur des attributs

L’exemple suivant montre comment configurer un parc d’instances Spot pour qu’il utilise la sélection de type d’instance basée sur des attributs pour identifier les types d’instance. Pour spécifier les attributs d’instance requis, vous devez les spécifier dans la structure InstanceRequirements.

Dans l’exemple suivant, deux attributs d’instance sont spécifiés :

  • VCpuCount— Un minimum de 2 vCPUs est spécifié. Comme aucun maximum n’est spécifié, il n’y a pas de limite maximale.

  • MemoryMiB : au moins 4 Mio de mémoire sont spécifiés. Comme aucun maximum n’est spécifié, il n’y a pas de limite maximale.

Tous les types d'instance dotés de 2 ou plus vCPUs et de 4 Mo de mémoire ou plus seront identifiés. Toutefois, la protection des prix et la stratégie d’allocation peuvent exclure certains types d’instances lorsque le parc d’instances Spot alloue la flotte.

Pour obtenir une liste et une description de tous les attributs possibles que vous pouvez spécifier, consultez InstanceRequirementsla EC2APIréférence Amazon.

{ "AllocationStrategy": "priceCapacityOptimized", "TargetCapacity": 20, "Type": "request", "LaunchTemplateConfigs": [{ "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [{ "InstanceRequirements": { "VCpuCount": { "Min": 2 }, "MemoryMiB": { "Min": 4 } } }] }] }