Prise en charge de paramètres natifs pour les ID d'Amazon Machine Image - AWS Systems Manager

Prise en charge de paramètres natifs pour les ID d'Amazon Machine Image

Lorsque vous créez un paramètre String, vous pouvez spécifier le type de données aws:ec2:image, afin de vous assurer que la valeur du paramètre que vous saisissez est un format d'ID d'Amazon Machine Image (AMI) valide.

La prise en charge des formats d'ID d'AMI vous permet d'éviter de mettre à jour tous vos scripts et modèles avec un nouvel ID lors de chaque changement de l'AMI que vous souhaitez utiliser dans vos processus. Vous pouvez créer un paramètre avec le type de données aws:ec2:image, et saisir pour sa valeur l'ID d'une AMI. Il s'agit de l'AMI à partir de laquelle vous souhaitez créer de nouvelles instances. Vous référencez ensuite ce paramètre dans vos modèles, commandes et scripts.

Par exemple, vous définissez le paramètre qui contient votre IDAMI préféré lorsque vous exécutez la commande run-instances Amazon Elastic Compute Cloud (Amazon EC2).

Note

L'utilisateur qui exécute cette commande doit disposer des autorisations AWS Identity and Access Management (IAM) qui incluent l'opération d'API ssm:GetParameters pour que la valeur du paramètre soit validée. Sinon, le processus de création du paramètre échoue.

Linux & macOS
aws ec2 run-instances \ --image-id resolve:ssm:/golden-ami \ --count 1 \ --instance-type t2.micro \ --key-name my-key-pair \ --security-groups my-security-group
Windows
aws ec2 run-instances ^ --image-id resolve:ssm:/golden-ami ^ --count 1 ^ --instance-type t2.micro ^ --key-name my-key-pair ^ --security-groups my-security-group

Vous pouvez également choisir votre AMI préférée lorsque vous créez une instance à l'aide de la console Amazon EC2. Pour de plus amples informations, veuillez consulter Utilisation d'un paramètre Systems Manager pour rechercher une AMI dans le Guide de l'utilisateur Amazon EC2 pour instances Windows.

Lorsqu'il faut utiliser une AMI différente dans votre workflow de création d'instance, il vous suffit de mettre à jour le paramètre avec la nouvelle valeur d'AMI et Parameter Store valide à nouveau le fait que vous avez saisi l'ID dans le format approprié.

Octroyer des autorisations pour créer un paramètre du type de données aws:ec2:image

À l'aide des politiques AWS Identity and Access Management (IAM), vous pouvez autoriser ou restreindre l'accès des utilisateurs aux opérations et au contenu de l'API Parameter Store.

L'exemple de politique suivant octroie aux utilisateurs l'autorisation d'appeler l'opération d'API PutParameter pour aws:ec2:image. Cela signifie que l'utilisateur peut ajouter un paramètre du type de données aws:ec2:image au système.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:PutParameter", "Resource": "*" }, { "Effect": "Allow", "Action": "ec2:DescribeImages", "Resource": "*" } ] }

Fonctionnement de la validation du format d'AMI

Lorsque vous spécifiez aws:ec2:image comme type de données pour un paramètre, Systems Manager ne crée pas le paramètre immédiatement. Au lieu de cela, il effectue une opération de validation asynchrone pour s'assurer que la valeur du paramètre répond aux exigences de mise en forme d'un ID d'AMI, et que l'AMI spécifiée est disponible dans votre Compte AWS.

Un numéro de version de paramètre pourrait être généré avant la fin de l'opération de validation. L'opération peut ne pas être terminée même si un numéro de version de paramètre est généré.

Pour savoir si vos paramètres sont créés correctement, nous vous recommandons d'utiliser Amazon EventBridge (EventBridge) pour vous envoyer des notifications sur vos opérations create et update de paramètres. Ces notifications indiquent si une opération de paramètre a réussi ou non. Si une opération échoue, la notification inclut un message d'erreur indiquant la raison de l'échec.

{ "version": "0", "id": "eed4a719-0fa4-6a49-80d8-8ac65EXAMPLE", "detail-type": "Parameter Store Change", "source": "aws.ssm", "account": "111122223333", "time": "2020-05-26T22:04:42Z", "region": "us-east-2", "resources": [ "arn:aws:ssm:us-east-2:111122223333:parameter/golden-ami" ], "detail": { "exception": "Unable to Describe Resource", "dataType": "aws:ec2:image", "name": "golden-ami", "type": "String", "operation": "Create" } }

Pour plus d'informations à propos de l'abonnement aux événements Parameter Store dans EventBridge, consultez Configuration de notifications ou d'actions de déclenchement basées sur des événements Parameter Store.