メンテナンスウィンドウによるオートメーションのスケジュール設定
ランブックをメンテナンスウィンドウの登録済みタスクとして設定することで、オートメーションを開始できます。ランブックを登録済みタスクとして登録することにより、メンテナンスウィンドウはスケジュールされたメンテナンス期間中にオートメーションを実行します。
例えば、メンテナンスウィンドウのターゲットとして登録されたインスタンスの Amazon Machine Image (AMI) を作成する CreateAMI
という名前のランブックを作成するとします。CreateAMI
ランブック (および対応するオートメーション) をメンテナンスウィンドウの登録済みタスクとして指定するには、まずメンテナンスウィンドウを作成してターゲットを登録します。次に、以下の手順を使用して、メンテナンスウィンドウ内で登録済みタスクとして CreateAMI
ドキュメントを指定します。スケジュールされた期間中にメンテナンスウィンドウが開始されると、システムはオートメーションを実行し、登録されたターゲットの AMI を作成します。
オートメーションランブックの作成については、「独自のランブックの作成」を参照してください。オートメーションは の一機能ですAWS Systems Manager
以下の手順を使用し、AWS Systems Manager コンソール、AWS Command Line Interface (AWS CLI)、または AWS Tools for Windows PowerShell を使用して、オートメーションをメンテナンスウィンドウの登録済みタスクとして設定します。
オートメーションタスクをメンテナンスウィンドウに登録する (コンソール)
次の手順では、Systems Manager コンソールを使用して、オートメーションをメンテナンスウィンドウの登録済みタスクとして設定する方法を説明します。
開始する前に
次の手順を完了する前に、メンテナンスウィンドウを作成し、少なくとも 1 つのターゲットを登録する必要があります。詳細については、次の手順を参照してください。
メンテナンスウィンドウの登録されたタスクとしてオートメーションを設定するには
AWS Systems Manager コンソール (https://console.aws.amazon.com/systems-manager/
) を開きます。 -
左側のナビゲーションペインで、[Maintenance Windows] を選択してから、自動化タスクの登録に使用するメンテナンスウィンドウを選択します。
-
[Actions] を選択します。次に、[Register Automation task (オートメーションタスクの登録)] を選択して、ランブックを使用してターゲット上でオートメーションを選択して実行します。
-
[Name (名前)] に、タスクの名前を入力します。
-
[説明] に説明を入力します。
-
[Document (ドキュメント)] で、実行するタスクを定義するランブックを選択します。
-
[Document version (ドキュメントのバージョン)] で、使用するランブックのバージョンを選択します。
-
[Task priority (タスクの優先度)] で、このタスクの優先度を指定します。
1
が最高の優先度です。メンテナンスウィンドウのタスクは、優先度順にスケジュールされ、優先度が同じタスクは並行してスケジュールされます。 -
[Targets (ターゲット)] セクションで、リソース上でタスクを実行するランブックを選択した場合は、タグを指定するか、インスタンスを手動で選択して、このオートメーションを実行するターゲットを特定します。
注記
ターゲットではなく入力パラメータを介してリソースを渡す場合は、メンテナンスウィンドウターゲットを指定する必要はありません。
多くの場合、オートメーションタスクのターゲットを明示的に指定する必要はありません。例えば、
AWS-UpdateLinuxAmi
ランブックを使用して Linux 用の Amazon Machine Image (AMI) を更新するためのオートメーションタイプのタスクを作成するとします。このタスクが実行されると、AMI は最新の利用可能な Linux ディストリビューションパッケージと Amazon ソフトウェアを反映して更新されます。AMI から作成した新しいインスタンスには、これらの更新がインストール済みです。更新する AMI の ID はランブックの入力パラメータで指定されるため、メンテナンスウィンドウタスクでターゲットを再度指定する必要はありません。ターゲットを必要としないメンテナンスウィンドウタスクについては、ターゲットのないメンテナンスウィンドウタスクを登録 を参照してください。
-
(オプション) [レートの制御] で、以下の操作を行います。
注記
実行中のタスクでターゲットが指定されていない場合は、レートコントロールを指定する必要はありません。
-
[Concurrency (同時実行数)] には、オートメーションを同時に実行するターゲットの数または割合 (%) を指定します。
タグのキーと値のペアを選択してターゲットを選択し、選択したタグを使用するターゲットの数がわからない場合は、割合を指定して同時に実行できるオートメーションの数を制限します。
メンテナンスウィンドウが実行されると、ターゲットごとに新しいオートメーションが開始されます。1 つのにつき 100 の同時オートメーションの制限がありますAWS アカウント 100 個を超える同時実行率を指定した場合、100 個を超える同時オートメーションはオートメーションキューに自動的に追加されます。詳細については、「Amazon Web Services 全般のリファレンス」の「System Manager Service Quotas」を参照してください。
-
[Error threshold (エラーしきい値)] には、ターゲットの失敗後に他のターゲットでオートメーションの実行を停止するタイミングを、ターゲットの数または割合によって指定します。例えば、3 つのエラーを指定した場合、4 番目のエラーが受信されると Systems Manager はオートメーションの実行を停止します。まだオートメーションを処理しているターゲットもエラーを送信する可能性があります。
-
-
[Input Parameters (入力パラメータ)] セクションで、ランブックのパラメータを指定します。ランブックの場合、システムによって一部の値が自動的に設定されます。これらの値はそのままにすることも置き換えることもできます。
重要
ランブックの場合、オプションでオートメーションの引き受けロールを指定できます。このパラメータにロールを指定しない場合、オートメーションは、ステップ 11 で選択したメンテナンスウィンドウサービスロールを継承します。そのため、選択したメンテナンスウィンドウサービスロールに、ランブック内で定義されているアクションを実行するための適切な AWS Identity and Access Management (IAM) アクセス許可があることを確認する必要があります。
例えば、Systems Manager のサービスにリンクされたロールには、ランブック
ec2:CreateSnapshot
を実行するために必要な IAM アクセス許可AWS-CopySnapshot
がありません。このシナリオでは、カスタムのメンテナンスウィンドウサービスロールを使用するか、またはec2:CreateSnapshot
アクセス許可を持つ自動化継承ロールを指定する必要があります。詳細については、オートメーションの設定 を参照してください。 -
[IAM service role] (IAM サービスロール) 領域でロールを選択し、Systems Manager がオートメーションを開始するためのアクセス許可を付与します。
メンテナンスウィンドウのタスク用にサービスロールを作成するには、「Maintenance Windows を設定する」を参照してください。
-
[Register Automation task (自動化タスクの登録)] を選択します。
オートメーションタスクをメンテナンスウィンドウに登録する (コマンドライン)
次の手順では、AWS CLI (Linux または Windows) または AWS Tools for PowerShell を使用して、オートメーションをメンテナンスウィンドウの登録済みタスクとして設定する方法を説明します。
開始する前に
次の手順を完了する前に、メンテナンスウィンドウを作成し、少なくとも 1 つのターゲットを登録する必要があります。詳細については、次の手順を参照してください。
メンテナンスウィンドウの登録されたタスクとしてオートメーションを設定するには
まだ AWS CLI または AWS Tools for PowerShell をインストールして設定していない場合は、インストールして設定します。
詳細については、「AWS CLI の最新バージョンをインストールまたは更新します。」および「AWS Tools for PowerShell のインストール」を参照してください。
-
オートメーションをメンテナンスウィンドウの登録済みタスクとして設定するコマンドを作成します。各
リソースプレースホルダーの例
をユーザー自身の情報に置き換えます。次の例では、優先度 1 のメンテナンスウィンドウの登録済みタスクとしてオートメーションを設定します。また、ターゲットレスメンテナンスウィンドウタスクの
--targets
、--max-errors
、--max-concurrency
オプションの省略についても説明します。オートメーションはAWS-StartEC2Instance
ランブックおよび指定されたオートメーション継承ロールを使用して、メンテナンスウィンドウにターゲットとして登録済みの EC2 インスタンスを起動します。メンテナンスウィンドウは、所定の時点で最大 5 個のインスタンスでオートメーションを同時に実行します。また、エラー数が 1 を超えた場合、この登録済みタスクは特定の間隔で、それ以上のインスタンスで実行されなくなります。このコマンドでは、次のような新しい登録済みタスクの詳細が返されます。
-
登録済みタスクを表示するには、次のコマンドを実行します。
[Maintenance windows ID]
(メンテナンスウィンドウ ID) をユーザー自身の情報に置き換えます。システムが以下のような情報を返します。