

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.

# Utiliser des AWS Systems Manager paramètres au lieu de l'AMI IDs dans les modèles de lancement
<a name="using-systems-manager-parameters"></a>

Cette section explique comment créer un modèle de lancement qui spécifie un AWS Systems Manager paramètre faisant référence à un identifiant Amazon Machine Image (AMI). Vous pouvez utiliser un paramètre stocké dans le vôtre Compte AWS, un paramètre partagé par un autre Compte AWS ou un paramètre public pour une AMI publique gérée par AWS.

Avec les paramètres de Systems Manager, vous pouvez mettre à jour vos groupes Auto Scaling pour utiliser de nouvelles AMI IDs sans avoir à créer de nouveaux modèles de lancement ou de nouvelles versions de modèles de lancement chaque fois qu'un ID d'AMI change. Elles IDs peuvent changer régulièrement, par exemple lorsqu'une AMI est mise à jour avec les dernières mises à jour du système d'exploitation ou du logiciel.

Vous pouvez créer, mettre à jour ou supprimer vos propres paramètres de Systems Manager à l'aide du [Parameter Store, une fonctionnalité de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html). Vous devez créer un paramètre Systems Manager avant de pouvoir l'utiliser dans un modèle de lancement. Pour commencer, créez un paramètre avec le type de données `aws:ec2:image`, et saisissez pour sa valeur l'ID d'une AMI. L'ID d'AMI se présente sous la forme `ami-<identifier>`, par exemple, `ami-123example456`. L'ID d'AMI correct dépend du type d'instance et de la Région AWS dans laquelle vous lancez le groupe Auto Scaling. 

Pour plus d'informations sur la création d'un paramètre valide pour un ID d'AMI, consultez la section [Création des paramètres de Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html).

## Créez un modèle de lancement qui spécifie un paramètre pour l'AMI
<a name="using-systems-manager-parameters-create-launch-template"></a>

Pour créer un modèle de lancement qui spécifie un paramètre pour l'AMI, appliquez l'une des méthodes suivantes :

------
#### [ Console ]

**Pour créer un modèle de lancement à l'aide d'un AWS Systems Manager paramètre**

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, choisissez **Modèles de lancement**, puis **Créer un modèle de lancement**. 

1. Pour **Nom du modèle de lancement**, entrez un nom descriptif pour le modèle.

1. Sous **Images de l'application et du système d'exploitation (Amazon Machine Image)**, sélectionnez **Parcourir davantage AMIs**.

1. Cliquez sur le bouton fléché situé à droite de la barre de recherche, puis choisissez **Spécifier un paramètre de value/Systems gestionnaire personnalisé**.

1. Dans la boîte de dialogue **Spécifier une valeur personnalisée ou un paramètre Systems Manager**, procédez comme suit :

   1. Pour **ID d’AMI ou chaîne de paramètres Systems Manager**, saisissez le nom du paramètre Systems Manager en utilisant l’un des formats suivants :

      Pour référencer un paramètre public :
      + **resolve:ssm:*public-parameter***

      Pour référencer un paramètre stocké dans le même compte :
      + **resolve:ssm:*parameter-name***
      + **resolve:ssm:*parameter-name*:*version-number***
      + **resolve:ssm:*parameter-name*:*label***

      Pour référencer un paramètre partagé par un autre Compte AWS :
      + **resolve:ssm:*parameter-ARN***
      + **resolve:ssm:*parameter-ARN*:*version-number***
      + **resolve:ssm:*parameter-ARN*:*label***

   1. Choisissez **Enregistrer**.

1. Configurez tout autre paramètre de modèle de lancement selon vos besoins, puis choisissez **Créer un modèle de lancement**. Pour de plus amples informations, veuillez consulter [Créer un modèle de lancement pour un groupe Auto Scaling](create-launch-template.md). 

------
#### [ AWS CLI ]

Pour créer un modèle de lancement qui spécifie un paramètre de Systems Manager, vous pouvez utiliser l'un des exemples de commandes suivants. Remplacez chaque *user input placeholder* par vos propres informations.

**Exemple : créer un modèle de lancement qui spécifie un paramètre public AWS appartenant à l'utilisateur**  
Utilisez la syntaxe suivante : `resolve:ssm:public-parameter`, où `resolve:ssm` est le préfixe standard et `public-parameter` le chemin et le nom du paramètre public.

Dans cet exemple, le modèle de lancement utilise un paramètre public AWS fourni pour lancer des instances à l'aide de la dernière AMI Amazon Linux 2 configurée pour votre profil. Région AWS 

```
aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --version-description version1 \
  --launch-template-data file://config.json
```

Contenu de `config.json` :

```
{ 
    "ImageId":"resolve:ssm:/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2",
    "InstanceType":"t2.micro"
}
```

Voici un exemple de réponse.

```
{
    "LaunchTemplate": {
        "LaunchTemplateId": "lt-089c023a30example",
        "LaunchTemplateName": "my-template-for-auto-scaling",
        "CreateTime": "2022-12-28T19:52:27.000Z",
        "CreatedBy": "arn:aws:iam::123456789012:user/Bob",
        "DefaultVersionNumber": 1,
        "LatestVersionNumber": 1
    }
}
```

**Exemple : créer un modèle de lancement qui spécifie un paramètre stocké dans le même compte**  
Utilisez la syntaxe suivante : `resolve:ssm:parameter-name`, où `resolve:ssm` est le préfixe standard et `parameter-name` le nom du paramètre Systems Manager.

L'exemple suivant crée un modèle de lancement qui obtient l'ID d'AMI à partir d'un paramètre Systems Manager existant nommé `golden-ami`. 

```
aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling \
  --launch-template-data file://config.json
```

Contenu de `config.json` :

```
{ 
    "ImageId":"resolve:ssm:golden-ami",
    "InstanceType":"t2.micro"
}
```

La version par défaut du paramètre, si elle n'est pas spécifiée, est la dernière version. 

L'exemple suivant référence une version spécifique du paramètre *`golden-ami`*. L'exemple utilise la version *`3`* du paramètre *`golden-ami`*, mais vous pouvez utiliser n'importe quel numéro de version valide. 

```
{ 
    "ImageId":"resolve:ssm:golden-ami:3",
    "InstanceType":"t2.micro"
}
```

L'exemple similaire suivant référence l'étiquette de paramètre *`prod`* qui est liée à une version spécifique du paramètre *`golden-ami`*.

```
{ 
    "ImageId":"resolve:ssm:golden-ami:prod",
    "InstanceType":"t2.micro"
}
```

Voici un exemple de sortie. 

```
{
    "LaunchTemplate": {
        "LaunchTemplateId": "lt-068f72b724example",
        "LaunchTemplateName": "my-template-for-auto-scaling",
        "CreateTime": "2022-12-27T17:11:21.000Z",
        "CreatedBy": "arn:aws:iam::123456789012:user/Bob",
        "DefaultVersionNumber": 1,
        "LatestVersionNumber": 1
    }
}
```

**Exemple : créer un modèle de lancement qui spécifie un paramètre partagé par un autre Compte AWS**  
Utilisez la syntaxe suivante :`resolve:ssm:parameter-ARN`, où `resolve:ssm` se trouvent le préfixe standard et `parameter-ARN` l'ARN du paramètre Systems Manager.

L'exemple suivant crée un modèle de lancement qui obtient l'ID de l'AMI à partir d'un paramètre Systems Manager existant avec l'ARN de`arn:aws:ssm:us-east-2:123456789012:parameter/MyParameter`.

```
aws ec2 create-launch-template --launch-template-name my-template-for-auto-scaling --version-description version1 \
  --launch-template-data file://config.json
```

Contenu de `config.json` :

```
{ 
    "ImageId":"resolve:ssm:arn:aws:ssm:us-east-2:123456789012:parameter/MyParameter",
    "InstanceType":"t2.micro"
}
```

La version par défaut du paramètre, si elle n'est pas spécifiée, est la dernière version. 

L'exemple suivant référence une version spécifique du paramètre `MyParameter`. L'exemple utilise la version *`3`* du paramètre `MyParameter`, mais vous pouvez utiliser n'importe quel numéro de version valide. 

```
{ 
    "ImageId":"resolve:ssm:arn:aws:ssm:us-east-2:123456789012:parameter/MyParameter:3",
    "InstanceType":"t2.micro"
}
```

L'exemple similaire suivant référence l'étiquette de paramètre *`prod`* qui est liée à une version spécifique du paramètre `MyParameter`.

```
{ 
    "ImageId":"resolve:ssm:arn:aws:ssm:us-east-2:123456789012:parameter/MyParameter:prod",
    "InstanceType":"t2.micro"
}
```

Voici un exemple de réponse.

```
{
    "LaunchTemplate": {
        "LaunchTemplateId": "lt-00f93d4588example",
        "LaunchTemplateName": "my-template-for-auto-scaling",
        "CreateTime": "2024-01-08T12:43:21.000Z",
        "CreatedBy": "arn:aws:iam::123456789012:user/Bob",
        "DefaultVersionNumber": 1,
        "LatestVersionNumber": 1
    }
}
```

------

Pour spécifier un paramètre depuis le magasin de paramètres dans un modèle de lancement, vous devez disposer de l'`ssm:GetParameters`autorisation pour le paramètre spécifié. Toute personne utilisant le modèle de lancement doit également disposer d'une `ssm:GetParameters` autorisation pour que la valeur du paramètre soit validée. Pour plus d'informations, consultez la section [Restreindre l'accès aux paramètres de Systems Manager à l'aide de politiques IAM](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-access.html) dans le *Guide de AWS Systems Manager l'utilisateur*.

## Vérifiez qu'un modèle de lancement obtient le bon ID d'AMI
<a name="using-systems-manager-parameters-verify-launch-template"></a>

Utilisez la [describe-launch-template-versions](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/describe-launch-template-versions.html)commande et incluez l'`--resolve-alias`option permettant de convertir le paramètre en ID d'AMI réel.

```
aws ec2 describe-launch-template-versions --launch-template-name my-template-for-auto-scaling \
   --versions 1 --resolve-alias
```

L'exemple renvoie l'ID d'AMI pour `ImageId`. Lorsqu’une instance est lancée à l’aide de ce modèle de lancement, l’ID d’AMI est défini sur `ami-0ac394d6a3example`.

```
{
    "LaunchTemplateVersions": [
        {
            "LaunchTemplateId": "lt-089c023a30example",
            "LaunchTemplateName": "my-template-for-auto-scaling",
            "VersionNumber": 1,
            "CreateTime": "2022-12-28T19:52:27.000Z",
            "CreatedBy": "arn:aws:iam::123456789012:user/Bob",
            "DefaultVersion": true,
            "LaunchTemplateData": {
                "ImageId": "ami-0ac394d6a3example",
                "InstanceType": "t2.micro",
            }
        }
    ]
}
```

## Ressources connexes
<a name="using-systems-manager-parameters-related-resources"></a>

Pour plus de détails sur la spécification d'un paramètre Systems Manager dans votre modèle de lancement, consultez la section [Utiliser un paramètre Systems Manager au lieu d'un ID AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-launch-template.html#use-an-ssm-parameter-instead-of-an-ami-id) dans le guide de l'*utilisateur Amazon EC2*.

Pour plus d’informations sur l’utilisation des paramètres Systems Manager, consultez les documents de référence suivants dans la documentation Systems Manager.
+ Pour créer des versions de paramètres et des étiquettes, consultez les [sections Utilisation des versions de paramètres](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-versions.html) et [Utilisation des étiquettes de paramètres](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html). 
+ Pour plus d’informations sur la façon de rechercher les paramètres publics de l’AMI pris en charge par Amazon EC2, consultez la section Appeler les paramètres [publics de l’AMI](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-public-parameters-ami.html).
+ Pour plus d'informations sur le partage de paramètres avec d'autres AWS comptes ou via d'autres comptes AWS Organizations, consultez la section [Utilisation de paramètres partagés](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-shared-parameters.html).
+ Pour plus d'informations sur le suivi de la création réussie de vos paramètres, consultez la section [Prise en charge des paramètres natifs pour Amazon Machine Image IDs](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html).

## Limitations
<a name="using-systems-manager-parameters-limitations"></a>

Lorsque vous travaillez avec les paramètres de Systems Manager, tenez compte des limites suivantes :
+ Amazon EC2 Auto Scaling prend uniquement en charge la spécification d' IDs AMI sous forme de paramètres.
+ La création ou la mise à jour de [groupes d'instances mixtes](ec2-auto-scaling-mixed-instances-groups.md) avec [sélection du type d'instance basée sur les attributs](create-mixed-instances-group-attribute-based-instance-type-selection.md) à l'aide d'un modèle de lancement spécifiant un paramètre de Systems Manager n'est pas prise en charge.
+ Si votre groupe Auto Scaling utilise un modèle de lancement qui spécifie un paramètre de Systems Manager, vous ne serez pas en mesure de démarrer une actualisation d'instance avec la configuration souhaitée ou en utilisant la correspondance des sauts.
+ Si votre groupe Auto Scaling utilise un modèle de lancement qui spécifie un paramètre de Systems Manager, les warm pools ne sont pas pris en charge.
+ À chaque appel visant à créer ou à mettre à jour votre groupe Auto Scaling, Amazon EC2 Auto Scaling définira le paramètre Systems Manager dans le modèle de lancement. Si vous utilisez des paramètres avancés ou des limites de débit plus élevées, les appels fréquents au Parameter Store (c'est-à-dire l'opération `GetParameters`) peuvent augmenter les coûts de Systems Manager, car des frais sont facturés par interaction avec l'API Parameter Store. Pour en savoir plus, consultez [Pricing AWS Systems Manager](https://aws.amazon.com/systems-manager/pricing/) (Tarification). 