Utilisation de pseudo-paramètres lors de l'enregistrement des tâches de la fenêtre de maintenance - AWS Systems Manager

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.

Utilisation de pseudo-paramètres lors de l'enregistrement des tâches de la fenêtre de maintenance

Lorsque vous enregistrez une tâche dans Maintenance Windows une fonctionnalité de AWS Systems Manager, vous spécifiez les paramètres uniques à chacun des quatre types de tâches. (Dans les commandes CLI, celles-ci sont fournies à l'aide de l'--task-invocation-parametersoption.)

Vous pouvez également référencer certaines valeurs en utilisant la syntaxe du pseudo-paramètre, comme {{RESOURCE_ID}}, {{TARGET_TYPE}} et {{WINDOW_TARGET_ID}}. Une fois que la tâche de la fenêtre de maintenance s'exécute, elle transmet les valeurs correctes au lieu des espaces réservés des pseudo-paramètres. La liste complète des pseudo-paramètres que vous pouvez utiliser est fournie plus loin dans cette rubrique dansPseudo-paramètres pris en charge.

Important

Pour le type de cible RESOURCE_GROUP, selon le format d'ID requis pour la tâche, vous pouvez choisir entre utiliser {{TARGET_ID}} et {{RESOURCE_ID}} pour référencer la ressource lors de l'exécution de la tâche. {{TARGET_ID}} renvoie l'ARN complet de la ressource. {{RESOURCE_ID}} renvoie uniquement un nom ou un ID plus court de la ressource, comme indiqué dans ces exemples.

  • Format {{TARGET_ID}} : arn:aws:ec2:us-east-1:123456789012:instance/i-02573cafcfEXAMPLE

  • Format {{RESOURCE_ID}} : i-02573cafcfEXAMPLE

Pour le type de cible INSTANCE, les paramètres {{TARGET_ID}} et {{RESOURCE_ID}} ne donnent que l'ID d'instance. Pour plus d’informations, consultez Pseudo-paramètres pris en charge.

{{TARGET_ID}}et {{RESOURCE_ID}} peut être utilisé pour transmettre des identifiants de AWS ressources uniquement aux tâches Automation, Lambda et Step Functions. Ces deux pseudo-paramètres ne peuvent pas être utilisés avec des tâches Run Command.

Exemples de pseudo-paramètres

Supposons que votre charge utile pour une AWS Lambda tâche doive référencer une instance par son ID.

Que vous utilisiez un INSTANCE ou une cible de fenêtre de maintenance RESOURCE_GROUP, cela peut être réalisé en utilisant le pseudo-paramètre {{RESOURCE_ID}}. Par exemple :

"TaskArn": "arn:aws:lambda:us-east-2:111122223333:function:SSMTestFunction", "TaskType": "LAMBDA", "TaskInvocationParameters": { "Lambda": { "ClientContext": "ew0KICAi--truncated--0KIEXAMPLE", "Payload": "{ \"instanceId\": \"{{RESOURCE_ID}}\" }", "Qualifier": "$LATEST" } }

Si votre tâche Lambda est destinée à s'exécuter sur un autre type de cible pris en charge en plus des instances Amazon Elastic Compute Cloud (Amazon EC2), par exemple une table Amazon DynamoDB, la même syntaxe peut être utilisée et {{RESOURCE_ID}} donne le nom de la table uniquement. Toutefois, si vous avez besoin de l'ARN complet de la table, utilisez {{TARGET_ID}}, comme indiqué dans l'exemple suivant.

"TaskArn": "arn:aws:lambda:us-east-2:111122223333:function:SSMTestFunction", "TaskType": "LAMBDA", "TaskInvocationParameters": { "Lambda": { "ClientContext": "ew0KICAi--truncated--0KIEXAMPLE", "Payload": "{ \"tableArn\": \"{{TARGET_ID}}\" }", "Qualifier": "$LATEST" } }

La même syntaxe fonctionne pour les instances de ciblage ou d'autres types de ressources. Lorsque plusieurs types de ressources ont été ajoutés à un groupe de ressources, la tâche s'exécute sur chacune des ressources appropriées.

Important

Tous les types de ressources qui peuvent être inclus dans un groupe de ressources ne donnent pas de valeur pour le paramètre {{RESOURCE_ID}}. Pour afficher la liste des types de ressources pris en charge, consultez Pseudo-paramètres pris en charge.

Autre exemple, pour exécuter une tâche Automation qui arrête vos instances EC2, vous spécifiez le document Systems Manager (document SSM) AWS-StopEC2Instance comme valeur TaskArn et vous utilisez le pseudo-paramètre {{RESOURCE_ID}} :

"TaskArn": "AWS-StopEC2Instance", "TaskType": "AUTOMATION" "TaskInvocationParameters": { "Automation": { "DocumentVersion": "1", "Parameters": { "instanceId": [ "{{RESOURCE_ID}}" ] } } }

Pour exécuter une tâche Automation qui copie un instantané d'un volume Amazon Elastic Block Store (Amazon EBS), spécifiez le document SSM AWS-CopySnapshot comme valeur TaskArn et utilisez le pseudo-paramètre {{RESOURCE_ID}}.

"TaskArn": "AWS-CopySnapshot", "TaskType": "AUTOMATION" "TaskInvocationParameters": { "Automation": { "DocumentVersion": "1", "Parameters": { "SourceRegion": "us-east-2", "targetType":"RESOURCE_GROUP", "SnapshotId": [ "{{RESOURCE_ID}}" ] } } }

Pseudo-paramètres pris en charge

La liste suivante décrit les pseudo-paramètres que vous pouvez spécifier à l'aide de la syntaxe {{PSEUDO_PARAMETER}} dans l'option --task-invocation-parameters.

  • WINDOW_ID : ID de la fenêtre de maintenance cible.

  • WINDOW_TASK_ID : ID de la tâche de fenêtre en cours d'exécution.

  • WINDOW_TARGET_ID : ID de la cible de la fenêtre qui inclut la cible (ID de cible).

  • WINDOW_EXECUTION_ID : ID de l'exécution de fenêtre actuelle.

  • TASK_EXECUTION_ID : ID de l'exécution de tâche actuelle.

  • INVOCATION_ID : ID de l'appel actuel.

  • TARGET_TYPE : type de la cible. Les types pris en charge incluent RESOURCE_GROUP et INSTANCE.

  • TARGET_ID:

    Si le type de cible que vous spécifiez est INSTANCE, le pseudo-paramètre TARGET_ID est remplacé par l'ID de l'instance. Par exemple, i-078a280217EXAMPLE.

    Si le type de cible que vous spécifiez est RESOURCE_GROUP, la valeur référencée pour l'exécution de la tâche est l'ARN complet de la ressource. Par exemple : arn:aws:ec2:us-east-1:123456789012:instance/i-078a280217EXAMPLE. Le tableau suivant fournit des exemples de valeurs TARGET_ID pour des types de ressources particuliers d'un groupe de ressources.

    Note

    TARGET_ID n'est pas pris en charge pour des tâches Run Command.

    Type de ressource Exemple TARGET_ID
    AWS::CloudWatch::Alarm arn:aws:cloudwatch:us-east-1:123456789012:alarm:MyCloudWatchAlarmi-078a280217EXAMPLE
    AWS::EC2::Instance arn:aws:ec2:us-east-1:123456789012:instance/i-078a280217EXAMPLE
    AWS::EC2::Image arn:aws:ec2:us-east-1:123456789012:image/ami-02250b3732EXAMPLE
    AWS::EC2::SecurityGroup arn:aws:ec2:us-east-1:123456789012:security-group/sg-cEXAMPLE
    AWS::EC2::Snapshot arn:aws:ec2:us-east-1:123456789012:snapshot/snap-03866bf003EXAMPLE
    AWS::EC2::Volume arn:aws:ec2:us-east-1:123456789012:volume/vol-0912e04d78EXAMPLE
    AWS::DynamoDB::Table arn:aws:dynamodb:us-east-1:123456789012:table/MyTable
    AWS::RDS::DBCluster arn:aws:rds:us-east-2:123456789012:cluster:My-Cluster

    AWS::RDS::DBInstance

    arn:aws:rds:us-east-1:123456789012:db:My-SQL-Instance
    AWS::S3::Bucket arn:aws:s3::: DOC-EXAMPLE-BUCKET

    AWS::SSM::ManagedInstance

    arn:aws:ssm:us-east-1:123456789012:managed-instance/mi-0feadcf2d9EXAMPLE
  • RESOURCE_ID : ID court d'un type de ressource contenu dans un groupe de ressources. Le tableau suivant fournit des exemples de valeurs RESOURCE_ID pour des types de ressources particuliers d'un groupe de ressources.

    Note

    RESOURCE_ID n'est pas pris en charge pour des tâches Run Command.

    Type de ressource Exemple RESOURCE_ID
    AWS::CloudWatch::Alarm MyCloudWatchAlarm
    AWS::EC2::Instance i-078a280217EXAMPLE
    AWS::EC2::Image ami-02250b3732EXAMPLE
    AWS::EC2::SecurityGroup sg-cEXAMPLE
    AWS::EC2::Snapshot snap-03866bf003EXAMPLE
    AWS::EC2::Volume vol-0912e04d78EXAMPLE
    AWS::DynamoDB::Table MyTable
    AWS::RDS::DBCluster My-Cluster
    AWS::RDS::DBInstance My-SQL-Instance
    AWS::S3::Bucket DOC-EXAMPLE-BUCKET
    AWS::SSM::ManagedInstance mi-0feadcf2d9EXAMPLE
    Note

    Si le groupe de AWS ressources que vous spécifiez inclut des types de ressources qui ne génèrent aucune RESOURCE_ID valeur et ne sont pas répertoriés dans le tableau précédent, le RESOURCE_ID paramètre n'est pas renseigné. Une invocation d'exécution se produira toujours pour cette ressource. Dans ces cas, utilisez plutôt le pseudo-paramètre TARGET_ID, qui sera remplacé par l'ARN complet de la ressource.