aws:executeAutomation
– 別のオートメーションを実行する
セカンダリの Runbook を呼び出して、セカンダリのオートメーションを実行します。このアクションを使用すると、最も一般的な操作のための Runbook を作成でき、オートメーションを実行するときにこれらの Runbook を参照できます。このアクションでは、同じような Runbook で重複したステップが不要になり、 Runbook を簡素化できます。
セカンダリのオートメーションは、プライマリのオートメーションを開始したユーザーのコンテキストで実行されます。つまり、セカンダリオートメーションでは、最初のオートメーションを開始したユーザーと同じ AWS Identity and Access Management (IAM) ロールまたはユーザーが使用されます。
重要
継承ロール (iam:passRole ポリシーを使用するロール) を使用するセカンダリオートメーションでパラメータを指定する場合、プライマリオートメーションを開始したユーザーまたはロールには、セカンダリオートメーションで指定されたロールの継承を渡すアクセス許可が必要です。自動化のロールの継承のセットアップについては、「コンソールを使用して Automation 用のサービスロールを作成する」を参照してください。
Input (入力)
- DocumentName
-
ステップ中に実行するセカンダリ Runbook の名前。同じ AWS アカウント 内のランブックの場合は、ランブック名を指定します。別の AWS アカウント により共有されたランブックの場合は、ランブックの Amazon リソースネーム (ARN) を指定します。共有ランブックの使用については、「共有 SSM ドキュメントを使用する」を参照してください。
型: 文字列
必須: はい
- DocumentVersion
-
実行するセカンダリ Runbook のバージョン。指定しない場合、Automation はデフォルトの Runbook バージョンで実行されます。
型: 文字列
必須: いいえ
- MaxConcurrency
-
並列してこのタスクを実行できるターゲットの最大数。10 などの数値や、10% などの割合を指定できます。
タイプ: 文字列。
必須: いいえ
- MaxErrors
-
追加のターゲットでオートメーションの実行を停止するまでに許容されるエラー数。エラーの絶対数 (10 など) またはターゲットセットのパーセント数 (10% など) を指定できます。たとえば、3 を指定すると、4 番目のエラーを受信した際に、システムはオートメーションの実行を停止します。値として 0 を指定した場合、最初のエラー結果が返されると、システムから他のターゲットでオートメーションが実行されなくなります。50 のリソースでオートメーションを実行し、
MaxErrors
を 10% に設定した場合、6 番目のエラーを受信すると、システムは追加ターゲットでオートメーションの実行を停止します。MaxErrors
のしきい値に達した時点で既に実行中のオートメーションについては完了を許可されますが、一部のオートメーションは失敗する可能性があります。失敗したオートメーションが指定されたMaxErrors
を上回っていないことを確認する必要がある場合は、MaxConcurrency
を 1 に設定し、オートメーションが一度に 1 つずつ行われるようにします。タイプ: 文字列。
必須: いいえ
- RuntimeParameters
-
セカンダ Runbook の実行に必要なパラメータ。マッピングでは次の形式を使用します: {"parameter1" : "value1", "parameter2" : "value2" }
型: マップ
必須:いいえ
- タグ
-
リソースに割り当てるオプションのメタデータ。オートメーション用に最大 5 つのタグを指定できます。
タイプ: MapList
必須: いいえ
- TargetLocations
-
ロケーションとは、オートメーションを実行する AWS リージョン や AWS アカウント の組み合わせです。1 つ以上の項目を指定する必要があります。指定可能な最大数は 100 個です。
タイプ: MapList
必須: いいえ
- TargetMaps
-
ターゲットリソースに対するドキュメントパラメータのキー値マッピングのリスト。
Targets
とTargetMaps
の両方を一緒に指定することはできません。タイプ: MapList
必須: いいえ
- TargetParameterName
-
レート制御されたオートメーションのターゲットリソースとして使用されるパラメータの名前。
Targets
を指定する場合は必須です。タイプ: 文字列。
必須: いいえ
- ターゲット
-
ターゲットリソースへのキー値マッピングのリスト。
TargetParameterName
を指定する場合は必須です。タイプ: MapList
必須: いいえ
出力
- 出力
-
セカンダリオートメーションによって生成される出力。この出力は、次の形式を使って参照できます:
セカンダリ自動化ステップ名
.Outputタイプ: StringList
以下はその例です。
- name: launchNewWindowsInstance action: 'aws:executeAutomation' onFailure: Abort inputs: DocumentName: launchWindowsInstance nextStep: getNewInstanceRootVolume - name: getNewInstanceRootVolume action: 'aws:executeAwsApi' onFailure: Abort inputs: Service: ec2 Api: DescribeVolumes Filters: - Name: attachment.device Values: - /dev/sda1 - Name: attachment.instance-id Values: - '{{launchNewWindowsInstance.Output}}' outputs: - Name: rootVolumeId Selector: '$.Volumes[0].VolumeId' Type: String nextStep: snapshotRootVolume - name: snapshotRootVolume action: 'aws:executeAutomation' onFailure: Abort inputs: DocumentName: AWS-CreateSnapshot RuntimeParameters: VolumeId: - '{{getNewInstanceRootVolume.rootVolumeId}}' Description: - 'Initial root snapshot for {{launchNewWindowsInstance.Output}}'
- ExecutionId
-
セカンダリオートメーションの ID。
型: 文字列
- ステータス
-
セカンダリオートメーションのステータス。
型: 文字列