

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.

# Étiqueter un nouveau parc d’instances Spot et les instances et volumes qu’il lance
<a name="tag-spot-fleet"></a>

**Important**  
Spot Fleet utilise une ancienne API sans investissement planifié. Nous vous recommandons d'utiliser EC2 Fleet ou un groupe Auto Scaling à la place. Pour de plus amples informations, veuillez consulter [Quelle est la meilleure méthode de flotte à utiliser ?](which-fleet-method-to-use.md).

Pour vous aider à classer et à gérer vos demandes de parc d’instances Spot, ainsi que les instances et les volumes qu’il lance, vous pouvez les étiqueter avec des métadonnées personnalisées. Vous pouvez affecter une étiquette à une demande de parc d’instances Spot lorsque vous la créez, ou après. De même, vous pouvez attribuer une étiquette aux instances et aux volumes lorsqu’ils sont lancés par le parc ou ultérieurement.

Lorsque vous balisez une demande de flotte, les instances et les volumes lancés par la flotte ne sont pas balisés automatiquement. Vous devez baliser explicitement les instances et les volumes lancés par la flotte. Vous pouvez choisir d’attribuer des balises uniquement à la demande de la flotte, ou uniquement aux instances lancées par la flotte, ou uniquement aux volumes associés aux instances lancées par la flotte, ou à l’ensemble de ces instances.

**Note**  
Vous ne pouvez étiqueter que les volumes associés à des instances à la demande. Vous ne pouvez pas baliser les volumes attachés à instances Spot.

Vous pouvez attribuer des balises à l’aide de la console Amazon EC2 ou d’un outil de ligne de commande.

Pour plus d’informations sur le fonctionnement des balises, consultez [Baliser vos ressources Amazon EC2](Using_Tags.md).

**Topics**
+ [Prérequis](#tag-spot-fleet-prereqs)
+ [Étiqueter un nouveau parc d’instances Spot et les instances et volumes qu’il lance](#tag-new-spot-fleet-and-resources)
+ [Étiqueter un parc d’instances Spot existant](#tag-existing-spot-fleet)
+ [Affichez les étiquettes de demande de parc d’instances Spot](#view-spot-fleet-tags)

## Prérequis
<a name="tag-spot-fleet-prereqs"></a>

Octroyez à l’utilisateur l’autorisation de baliser les ressources. Pour de plus amples informations, veuillez consulter [Exemple : Baliser des ressources](ExamplePolicies_EC2.md#iam-example-taggingresources).

**Pour accorder à un utilisateur l’autorisation de baliser les ressources**  
Créez une politique IAM qui inclut les éléments suivants :
+ L’action `ec2:CreateTags`. Celle-ci accorde à l’utilisateur l’autorisation de créer des balises.
+ L’action `ec2:RequestSpotFleet`. Celle-ci accorde à l’utilisateur l’autorisation de créer une demande de parc d’instances Spot.
+ Pour `Resource`, vous devez spécifier `"*"`. Cela permet aux utilisateurs de baliser tous les types de ressources.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "TagSpotFleetRequest",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateTags",
                "ec2:RequestSpotFleet"
            ],
            "Resource": "*"
        }
    ]
}
```

------

**Important**  
Actuellement, nous ne prenons pas en charge les autorisations de niveau ressource pour la ressource `spot-fleet-request`. Si vous spécifiez `spot-fleet-request` en tant que ressource, vous recevrez une exception de non-autorisation lorsque vous tenterez de baliser le parc. L’exemple suivant illustre comment *ne pas* définir la stratégie.   

```
{
    "Effect": "Allow",
    "Action": [
        "ec2:CreateTags",
        "ec2:RequestSpotFleet"
    ],
    "Resource": "arn:aws:ec2:{{us-east-1}}:{{111122223333}}:spot-fleet-request/*"
}
```

Pour activer l’accès, ajoutez des autorisations à vos utilisateurs, groupes ou rôles :
+ Utilisateurs et groupes dans AWS IAM Identity Center :

  Créez un jeu d’autorisations. Suivez les instructions de la rubrique [Création d’un jeu d’autorisations](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) du *Guide de l’utilisateur AWS IAM Identity Center *.
+ Utilisateurs gérés dans IAM par un fournisseur d’identité :

  Créez un rôle pour la fédération d’identité. Suivez les instructions de la rubrique [Création d’un rôle pour un fournisseur d’identité tiers (fédération)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) dans le *Guide de l’utilisateur IAM*.
+ Utilisateurs IAM :
  + Créez un rôle que votre utilisateur peut assumer. Suivez les instructions de la rubrique [Création d’un rôle pour un utilisateur IAM](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) dans le *Guide de l’utilisateur IAM*.
  + (Non recommandé) Attachez une politique directement à un utilisateur ou ajoutez un utilisateur à un groupe d’utilisateurs. Suivez les instructions de la rubrique [Ajout d’autorisations à un utilisateur (console)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) du *Guide de l’utilisateur IAM*.

## Étiqueter un nouveau parc d’instances Spot et les instances et volumes qu’il lance
<a name="tag-new-spot-fleet-and-resources"></a>

**Pour étiqueter une nouvelle demande de parc d’instances Spot ainsi que les instances et les volumes qu’elle lance à l’aide de la console**

1. Suivez la procédure [Création d’une demande de parc d’instances Spot à l’aide de paramètres définis](create-spot-fleet.md#create-spot-fleet-advanced).

1. La manière dont vous ajoutez une balise dépend de la configuration manuelle de la flotte ou de l’utilisation d’un modèle de lancement.
   + Si vous avez configuré la flotte manuellement, procédez comme suit :

     Pour ajouter une balise, développez **Additional configurations (Configurations supplémentaires)**, choisissez **Create tag**, (Créer une balise) puis entrez la clé et la valeur de la balise. Répétez l’opération pour chaque balise.

     Pour chaque étiquette, vous pouvez étiqueter la demande de parc d’instances Spot et les instances avec la même étiquette. Pour baliser les deux, assurez-vous que les **instances** et les **flottes** sont sélectionnées. Pour étiqueter uniquement la demande de parc d’instances Spot, supprimez **Instances**. Pour étiqueter uniquement les instances lancées par la flotte, supprimer **Fleet** (Flotte).
**Note**  
Lorsque vous configurez manuellement un parc, il n’est pas possible de baliser les volumes. Les balises de volume ne sont prises en charge que pour les volumes attachés à instances à la demande. Lorsque vous configurez manuellement un parc, vous ne pouvez pas spécifier d’instances à la demande.
   + Si vous avez utilisé un modèle de lancement, procédez comme suit :

     Pour ajouter une balise à la demande de parc d’instances, sous **Étiquettes**, choisissez **Créer une balise**, puis entrez la clé et la valeur de la balise. Répétez l’opération pour chaque étiquette.

     Pour étiqueter les ressources de votre flotte, vous devez spécifier des balises dans le [modèle de lancement](create-launch-template.md).

**Pour étiqueter une nouvelle demande Spot Fleet ainsi que les instances et volumes qu'elle lance à l'aide du AWS CLI**  
Pour étiqueter une demande de parc d’instances Spot lors de sa création et pour étiqueter les instances et les volumes lorsqu’ils sont lancés par la flotte, configurez la demande de parc d’instances Spot comme suit :

**Étiquettes de demande de parc d’instances Spot**
+ Spécifiez les étiquettes pour la demande de parc d’instances Spot dans `SpotFleetRequestConfig`.
+ Pour `ResourceType`, spécifiez `spot-fleet-request`. Si vous indiquez une autre valeur, la demande de flotte échouera.
+ Pour `Tags`, spécifiez la paire clé-valeur. Vous pouvez définir plusieurs paires clé-valeur.

**Balises d’instance :**
+ Spécifiez les balises des instances dans `LaunchSpecifications`.
+ Pour `ResourceType`, spécifiez `instance`. Si vous indiquez une autre valeur, la demande de flotte échouera.
+ Pour `Tags`, spécifiez la paire clé-valeur. Vous pouvez définir plusieurs paires clé-valeur.

  Vous pouvez également spécifier les étiquettes de l’instance dans le [modèle de lancement](create-launch-template.md) référencé dans la demande de parc d’instances Spot.

**Balises de volume :**
+ Spécifiez les étiquettes des volumes dans le [modèle de lancement](create-launch-template.md) référencé dans la demande de parc d’instances Spot. Le balisage de volume dans `LaunchSpecifications` n’est pas pris en charge.

Dans l’exemple suivant, la demande de parc d’instances Spot est étiquetée par deux étiquettes : Key=Environment et Value=Production, ainsi que Key=Cost-Center et Value=123. Les instances qui sont lancées par la flotte sont identifiées avec une étiquette (qui est la même que l’une des étiquettes de la demande de parc d’instances Spot ) : Key=Cost-Center et Value=123.

```
{
    "SpotFleetRequestConfig": {
        "AllocationStrategy": "priceCapacityOptimized",
        "ExcessCapacityTerminationPolicy": "default",
        "IamFleetRole": "arn:aws:iam::111122223333:role/aws-ec2-spot-fleet-tagging-role",
        "LaunchSpecifications": [
            {
                "ImageId": "ami-0123456789EXAMPLE",
                "InstanceType": "c4.large",
                "TagSpecifications": [
                    {
                        "ResourceType": "instance",
                        "Tags": [
                            {
                                "Key": "{{Cost-Center}}",
                                "Value": "{{123}}"
                            }
                        ]
                    }
                ]
            }
        ],
        "SpotPrice": "5",
        "TargetCapacity": 2,
        "TerminateInstancesWithExpiration": true,
        "Type": "maintain",
        "ReplaceUnhealthyInstances": true,
        "InstanceInterruptionBehavior": "terminate",
        "InstancePoolsToUseCount": 1,
        "TagSpecifications": [
            {
                "ResourceType": "spot-fleet-request",
                "Tags": [
                    {
                        "Key": "{{Environment}}",
                        "Value":"{{Production}}"
                    },
                    {
                        "Key": "{{Cost-Center}}",
                        "Value":"{{123}}"
                    }
                ]
            }
        ]
    }
}
```

**Pour étiqueter les instances lancées par un parc de spots à l'aide du AWS CLI**  
Pour étiqueter les instances lorsqu’elles sont lancées par la flotte, vous pouvez spécifier les étiquettes dans le [modèle de lancement](create-launch-template.md) référencé dans la demande de parc d’instances Spot ou dans la configuration de la demande de parc d’instances Spot comme suit :
+ Spécifiez les balises des instances dans `LaunchSpecifications`.
+ Pour `ResourceType`, spécifiez `instance`. Si vous indiquez une autre valeur, la demande de flotte échouera.
+ Pour `Tags`, spécifiez la paire clé-valeur. Vous pouvez définir plusieurs paires clé-valeur.

Dans l’exemple suivant, les instances lancées par la flotte sont marquées avec une balise : Key=Cost-Center et Value=123.

```
{
    "SpotFleetRequestConfig": {
        "AllocationStrategy": "priceCapacityOptimized",
        "ExcessCapacityTerminationPolicy": "default",
        "IamFleetRole": "arn:aws:iam::111122223333:role/aws-ec2-spot-fleet-tagging-role",
        "LaunchSpecifications": [
            {
                "ImageId": "ami-0123456789EXAMPLE",
                "InstanceType": "c4.large",
                "TagSpecifications": [
                    {
                        "ResourceType": "instance",
                        "Tags": [
                            {
                                "Key": "{{Cost-Center}}",
                                "Value": "{{123}}"
                            }
                        ]
                    }
                ]
            }
        ],
        "SpotPrice": "5",
        "TargetCapacity": 2,
        "TerminateInstancesWithExpiration": true,
        "Type": "maintain",
        "ReplaceUnhealthyInstances": true,
        "InstanceInterruptionBehavior": "terminate",
        "InstancePoolsToUseCount": 1
    }
}
```

**Pour étiqueter les volumes attachés aux instances à la demande lancées par un parc de spots à l'aide du AWS CLI**  
Pour étiqueter des volumes lorsqu’ils sont créés par la flotte, spécifiez les étiquettes dans le [modèle de lancement](create-launch-template.md) référencé dans la demande de parc d’instances Spot.

**Note**  
Les balises de volume ne sont prises en charge que pour les volumes attachés à instances à la demande. Vous ne pouvez pas baliser les volumes attachés à instances Spot.  
Le balisage de volume dans `LaunchSpecifications` n’est pas pris en charge.

## Étiqueter un parc d’instances Spot existant
<a name="tag-existing-spot-fleet"></a>

**Pour étiqueter une demande de parc d’instances Spot existante à l’aide de la console**

Après avoir créé une demande de parc d’instances Spot, vous pouvez ajouter des balises à la demande de flotte à l’aide de la console.

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation, sélectionnez **Demandes Spot**.

1. Sélectionnez votre demande de parc d’instances Spot.

1. Choisissez l’onglet **Tags (Balises)**, puis **Create Tag (Créer une balise)**.

**Pour étiqueter une demande Spot Fleet existante à l'aide du AWS CLI**  
Utilisez la commande [create-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-tags.html) pour baliser les ressources existantes. Dans l’exemple suivant, la demande de parc d’instances Spot existante est étiquetée avec Key=purpose et Value=test.

```
aws ec2 create-tags \
    --resources {{sfr-11112222-3333-4444-5555-66666EXAMPLE}} \
    --tags Key={{purpose}},Value={{test}}
```

## Affichez les étiquettes de demande de parc d’instances Spot
<a name="view-spot-fleet-tags"></a>

**Pour afficher les étiquettes d’une demande de parc d’instances Spot à l’aide de la console**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation, sélectionnez **Demandes Spot**.

1. Sélectionnez votre demande de parc d’instances Spot et sélectionnez l’onglet **Étiquette**.

**Pour décrire les étiquettes de demande de parc d’instances Spot**  
Utilisez la commande [describe-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-tags.html) pour afficher les balises de la ressource spécifiée. Dans l’exemple suivant, vous décrivez les étiquettes de la demande de parc d’instances Spot spécifiée.

```
aws ec2 describe-tags \
    --filters "Name=resource-id,Values={{sfr-11112222-3333-4444-5555-66666EXAMPLE}}"
```

```
{
    "Tags": [
        {
            "Key": "Environment",
            "ResourceId": "sfr-11112222-3333-4444-5555-66666EXAMPLE",
            "ResourceType": "spot-fleet-request",
            "Value": "Production"
        },
        {
            "Key": "Another key",
            "ResourceId": "sfr-11112222-3333-4444-5555-66666EXAMPLE",
            "ResourceType": "spot-fleet-request",
            "Value": "Another value"
        }
    ]
}
```

Vous pouvez également afficher les étiquettes d’une demande de parc d’instances Spot en décrivant la demande de parc d’instances Spot .

Utilisez la [describe-spot-fleet-requests](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-spot-fleet-requests.html)commande pour afficher la configuration de la demande Spot Fleet spécifiée, qui inclut toutes les balises spécifiées pour la demande de flotte.

```
aws ec2 describe-spot-fleet-requests \
    --spot-fleet-request-ids {{sfr-11112222-3333-4444-5555-66666EXAMPLE}}
```

```
{
    "SpotFleetRequestConfigs": [
        {
            "ActivityStatus": "fulfilled",
            "CreateTime": "2020-02-13T02:49:19.709Z",
            "SpotFleetRequestConfig": {
                "AllocationStrategy": "capacityOptimized",
                "OnDemandAllocationStrategy": "lowestPrice",
                "ExcessCapacityTerminationPolicy": "Default",
                "FulfilledCapacity": 2.0,
                "OnDemandFulfilledCapacity": 0.0,
                "IamFleetRole": "arn:aws:iam::111122223333:role/aws-ec2-spot-fleet-tagging-role",
                "LaunchSpecifications": [
                    {
                        "ImageId": "ami-0123456789EXAMPLE",
                        "InstanceType": "c4.large"
                    }
                ],
                "TargetCapacity": 2,
                "OnDemandTargetCapacity": 0,
                "Type": "maintain",
                "ReplaceUnhealthyInstances": false,
                "InstanceInterruptionBehavior": "terminate"
            },
            "SpotFleetRequestId": "sfr-11112222-3333-4444-5555-66666EXAMPLE",
            "SpotFleetRequestState": "active",
            "Tags": [
                {
                    "Key": "Environment",
                    "Value": "Production"
                },
                {
                    "Key": "Another key",
                    "Value": "Another value"
                }
            ]
        }
    ]
}
```