Comment ajouter des pseudo-paramètres lors de l'enregistrement d'une tâche d'automatisation dans les fenêtres de maintenance de Systems Manager ?

Date de la dernière mise à jour : 20/04/2021

Je souhaite enregistrer un document de tâche d'automatisation pour une fenêtre de maintenance AWS Systems Manager qui cible plusieurs instances Amazon Elastic Compute Cloud (Amazon EC2). Quelle est la marche à suivre ?

Brève description

Lorsque vous enregistrez une tâche d'automatisation de fenêtre de maintenance, vous devez fournir des valeurs de paramètre d'entrée qui sont transmises à la tâche lors de son exécution. Les paramètres d'entrée requis sont les mêmes que ceux définis dans le contenu du document d'automatisation. Vous pouvez utiliser les valeurs de pseudo-paramètre dans les champs de paramètres d'entrée requis pour référencer dynamiquement les ID de ressource ciblés par la fenêtre de maintenance. Les pseudo-paramètres, tels que {{RESOURCE_ID}}, vous permettent de cibler plusieurs ressources sans entrer chaque ID de ressource individuellement.

Par exemple, le document AWS-StopEC2Instance fourni par Amazon nécessite d'entrer l'ID d'instance en tant que paramètre. Si vous souhaitez que la fenêtre de maintenance cible plusieurs instances ou si vous ne connaissez pas l'ID d'instance, vous pouvez utiliser un pseudo-paramètre.

Remarque : pour le type cible INSTANCE, les pseudo-paramètres {{TARGET_ID}} et {{RESOURCE_ID}} donnent uniquement l'ID d'instance. Toutefois, pour le type cible RESOURCE_GROUP, {{TARGET_ID}} et {{RESOURCE_ID}} renvoient l'ID dans différents formats. Pour plus d'informations et pour obtenir la liste des pseudo-paramètres disponibles, consultez la section À propos des pseudo-paramètres.

Vous pouvez utiliser la console Systems Manager ou l'interface de ligne de commande AWS (AWS CLI) pour enregistrer des tâches d'automatisation de fenêtre de maintenance avec des pseudo-paramètres.

Solution

Utilisation de la console

Pour enregistrer une tâche d'automatisation de fenêtre de maintenance à l'aide de pseudo-paramètres dynamiques, procédez comme suit :

  1. Ouvrez la console Systems Manager et sélectionnez Maintenance Windows (Fenêtres de maintenance) dans le volet de navigation.
  2. Sélectionnez votre fenêtre de maintenance, puis sélectionnez View details (Afficher les détails).
  3. Dans l'onglet Tasks (Tâches), sélectionnez Register tasks (Enregistrer les tâches), Register Automation task (Enregistrer une tâche Automation).
  4. Pour Automation document (Document d'automatisation), sélectionnez le document que vous souhaitez que la tâche exécute.
  5. Spécifiez vos Targets (Cibles), Rate control (Contrôle du débit) et IAM service role (Rôle de service IAM).
  6. Pour Input parameters (Paramètres d'entrée), entrez une valeur de pseudo-paramètre (par exemple, {{TARGET_ID}} ou {{RESOURCE_ID}}) pour le paramètre qui nécessite un ID de ressource.
  7. Sélectionnez Register Automation task (Enregistrer une tâche d'automatisation).

Utilisation de l'interface de ligne de commande AWS (AWS CLI)

Remarque : si vous recevez des erreurs lors de l'exécution de commandes depuis AWS CLI, assurez-vous que vous utilisez la toute dernière version d'AWS CLI.

L'exemple suivant utilise l'AWS CLI pour enregistrer une tâche d'automatisation incluant le paramètre {{RESOURCE_ID}} :

aws ssm register-task-with-maintenance-window --window-id mw-1234567890EXAMPLE --targets Key=WindowTargetIds,Values=6c226ea3-463a-4533-8a2d-EXAMPLE --task-arn AWS-StopEC2Instance --task-type AUTOMATION --name MyMaintenanceWindowTask --max-concurrency 10 --max-errors 5 --task-invocation-parameters={\"Automation\":{\"Parameters\":{\"InstanceId\":[\"{{RESOURCE_ID}}\"]}}} --service-role-arn YOUR_SERVICE_ROLE_ARN

Lorsque la tâche de fenêtre de maintenance s'exécute, l'ID de ressource correspondant à chaque cible est transmis au système. Dans l'exemple précédent, le paramètre InstanceId reçoit l'ID d'instance correspondant à chaque cible du groupe cible.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?