メンテナンスウィンドウのタスクを登録する際の疑似パラメータの使用
AWS Systems Manager のツールである Maintenance Windows でタスクを登録する際、4 つのタスクタイプのそれぞれに固有のパラメータを指定します。(CLI コマンドでは、これらは --task-invocation-parameters オプションを使用して指定されます)。
{{RESOURCE_ID}}、{{TARGET_TYPE}}、{{WINDOW_TARGET_ID}} などの擬似パラメータ構文を使用して、特定の値を参照することもできます。メンテナンスウィンドウタスクが実行されると、擬似パラメータプレースホルダーの代わりに正しい値を渡します。使用できる擬似パラメータすべてのリストについては、このトピックの後半の「サポートされる擬似パラメータ」を参照してください。
重要
RESOURCE_GROUP ターゲットタイプでは、タスクに必要な ID 形式に応じて、タスクの実行時にリソースを参照するために {{TARGET_ID}} と {{RESOURCE_ID}} を使用するかを選択できます。{{TARGET_ID}} は、リソースの完全な ARN を返します。{{RESOURCE_ID}} は、これらの例に示すように、リソースの短い名前または ID のみを返します。
-
{{TARGET_ID}}形式:arn:aws:ec2:us-east-1:123456789012:instance/i-02573cafcfEXAMPLE -
{{RESOURCE_ID}}形式:i-02573cafcfEXAMPLE
ターゲットタイプの場合、INSTANCE{{TARGET_ID}} パラメータと {{RESOURCE_ID}} パラメータの両方がインスタンス ID のみを生成します。詳細については、「」を参照してくださいサポートされる擬似パラメータ
{{TARGET_ID}} および {{RESOURCE_ID}} を使用して、AWS リソースの ID を Automation、Lambda、Step Functions のタスクにのみ渡すことができます。これら 2 つの擬似パラメータは、Run Command タスクでは使用できません。
擬似パラメータの例
AWS Lambda タスクのペイロードが、ID でインスタンスを参照する必要があるとします。
INSTANCE または RESOURCE_GROUP メンテナンスウィンドウターゲットを使用しているかどうかに関係なく、これは {{RESOURCE_ID}} 擬似パラメータを使用することで実現できます。例:
"TaskArn": "arn:aws:lambda:us-east-2:111122223333:function:SSMTestFunction", "TaskType": "LAMBDA", "TaskInvocationParameters": { "Lambda": { "ClientContext": "ew0KICAi--truncated--0KIEXAMPLE", "Payload": "{ \"instanceId\": \"{{RESOURCE_ID}}\" }", "Qualifier": "$LATEST" } }
Lambda タスクが、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスに加えて、サポートされている別のターゲットタイプ (Amazon DynamoDB テーブルなど) に対して実行することを意図している場合は、同じ構文を使用でき、{{RESOURCE_ID}} はテーブルの名前のみを生成します。ただし、テーブルの完全な ARN が必要な場合は、次の例に示すように {{TARGET_ID}} を使用します。
"TaskArn": "arn:aws:lambda:us-east-2:111122223333:function:SSMTestFunction", "TaskType": "LAMBDA", "TaskInvocationParameters": { "Lambda": { "ClientContext": "ew0KICAi--truncated--0KIEXAMPLE", "Payload": "{ \"tableArn\": \"{{TARGET_ID}}\" }", "Qualifier": "$LATEST" } }
ターゲットインスタンスやその他のリソースタイプに対しても、同じ構文を使用できます。複数のリソースタイプがリソースグループに追加されている場合、タスクは適切な各リソースに対して実行されます。
重要
リソースグループに含まれるすべてのリソースタイプが {{RESOURCE_ID}} パラメータの値を生成するわけではありません。サポートされているリソースタイプの一覧については、「サポートされる擬似パラメータ」を参照してください。
別の例として、EC2 インスタンスを停止する Automation タスクを実行するには、AWS-StopEC2Instance Systems Manager ドキュメント (SSM ドキュメント) を TaskArn 値として指定し、{{RESOURCE_ID}} 擬似パラメータを使用します。
"TaskArn": "AWS-StopEC2Instance", "TaskType": "AUTOMATION" "TaskInvocationParameters": { "Automation": { "DocumentVersion": "1", "Parameters": { "instanceId": [ "{{RESOURCE_ID}}" ] } } }
Amazon Elastic Block Store (Amazon EBS) ボリュームのスナップショットをコピーする Automation タスクを実行するには、AWS-CopySnapshot SSM ドキュメントを TaskArn 値として指定し、{{RESOURCE_ID}} 擬似パラメータを使用します。
"TaskArn": "AWS-CopySnapshot", "TaskType": "AUTOMATION" "TaskInvocationParameters": { "Automation": { "DocumentVersion": "1", "Parameters": { "SourceRegion": "us-east-2", "targetType":"RESOURCE_GROUP", "SnapshotId": [ "{{RESOURCE_ID}}" ] } } }
サポートされる擬似パラメータ
以下のリストでは、{{ オプションの PSEUDO_PARAMETER}}--task-invocation-parameters 構文を使用して指定できる疑似パラメータについて説明しています。
-
WINDOW_ID: ターゲットメンテナンスウィンドウの ID。 -
WINDOW_TASK_ID: 実行されているウィンドウタスクの ID。 -
WINDOW_TARGET_ID: ターゲット (ターゲット ID) を含むウィンドウターゲットの ID。 -
WINDOW_EXECUTION_ID: 現在のウィンドウ実行の ID。 -
TASK_EXECUTION_ID: 現在のタスク実行の ID。 -
INVOCATION_ID: 現在の呼び出しの ID。 -
TARGET_TYPE: ターゲットのタイプ。サポートされるタイプにはRESOURCE_GROUP、INSTANCEなどがあります。 -
TARGET_ID:指定したターゲットタイプが
INSTANCEの場合、TARGET_ID擬似パラメータはインスタンスの ID に置き換えられます。例えば、i-078a280217EXAMPLEと指定します。指定したターゲットタイプが
RESOURCE_GROUPの場合、タスク実行で参照される値は、リソースの完全な ARN になります。例:arn:aws:ec2:us-east-1:123456789012:instance/。次の表に、リソースグループ内の特定のリソースタイプのi-078a280217EXAMPLETARGET_ID値の例を示します。注記
TARGET_IDは Run Command タスクではサポートされていません。リソースタイプ TARGET_ID の例 AWS::CloudWatch::Alarmarn:aws:cloudwatch:us-east-1:123456789012:alarm:MyCloudWatchAlarmi-078a280217EXAMPLEAWS::DynamoDB::Tablearn:aws:dynamodb:us-east-1:123456789012:table/MyTableAWS::EC2::Instancearn:aws:ec2:us-east-1:123456789012:instance/i-078a280217EXAMPLEAWS::EC2::Imagearn:aws:ec2:us-east-1:123456789012:image/ami-02250b3732EXAMPLEAWS::EC2::SecurityGrouparn:aws:ec2:us-east-1:123456789012:security-group/sg-cEXAMPLEAWS::EC2::Snapshotarn:aws:ec2:us-east-1:123456789012:snapshot/snap-03866bf003EXAMPLEAWS::EC2::Volumearn:aws:ec2:us-east-1:123456789012:volume/vol-0912e04d78EXAMPLEAWS::ECS::Servicearn:aws:ecs:us-east-1:123456789012:service/my-ecs-serviceAWS::RDS::DBClusterarn:aws:rds:us-east-2:123456789012:cluster:My-ClusterAWS::RDS::DBInstancearn:aws:rds:us-east-1:123456789012:db:My-SQL-InstanceAWS::S3::Bucketarn:aws:s3:::amzn-s3-demo-bucketAWS::SSM::ManagedInstancearn:aws:ssm:us-east-1:123456789012:managed-instance/mi-0feadcf2d9EXAMPLE -
RESOURCE_ID: リソースグループに含まれるリソースタイプの短い ID。次の表に、リソースグループ内の特定のリソースタイプのRESOURCE_ID値の例を示します。注記
RESOURCE_IDは Run Command タスクではサポートされていません。リソースタイプ RESOURCE_ID の例 AWS::CloudWatch::AlarmMyCloudWatchAlarmAWS::DynamoDB::TableMyTableAWS::EC2::Instancei-078a280217EXAMPLEAWS::EC2::Imageami-02250b3732EXAMPLEAWS::EC2::SecurityGroupsg-cEXAMPLEAWS::EC2::Snapshotsnap-03866bf003EXAMPLEAWS::EC2::Volumevol-0912e04d78EXAMPLEAWS::ECS::Servicemy-ecs-serviceAWS::RDS::DBClusterMy-ClusterAWS::RDS::DBInstanceMy-SQL-InstanceAWS::S3::Bucketamzn-s3-demo-bucketAWS::SSM::ManagedInstancemi-0feadcf2d9EXAMPLE注記
指定した AWS リソースグループに、
RESOURCE_ID値を生成しないリソースタイプが含まれており、前述の表にリストされていない場合、RESOURCE_IDパラメータは入力されません。そのリソースに対して実行の呼び出しは引き続き発生します。このような場合は、代わりにTARGET_ID擬似パラメータを使用します。このパラメータは、リソースの完全な ARN に置き換えられます。