メンテナンスウィンドウのトラブルシューティング
以下の情報を参考にして、メンテナンスウィンドウに関する問題のトラブルシューティングを行います。
トピック
- タスクの編集エラー: メンテナンスウィンドウのタスクを編集するためのページで、IAM ロールリストから次のエラーメッセージが返されます。「このタスクに指定されている IAM メンテナンスウィンドウのロールが見つかりませんでした。このロールは削除された可能性があるか、まだ作成されていない可能性があることを示すエラーメッセージを返す
- すべてのメンテナンスウィンドウのターゲットが更新されるわけではありません。
- タスクがタスク呼び出しステータスで失敗する:「The provided role does not contain the correct SSM permissions.」(指定されたロールには正しい SSM 許可が含まれていません。)
- タスクはエラーメッセージで失敗します:「Step fails when it is validating and resolving the step inputs」
- エラーメッセージ:「Maintenance window tasks without targets don't support MaxConcurrency values」および「Maintenance window tasks without targets don't support MaxErrors values」
タスクの編集エラー: メンテナンスウィンドウのタスクを編集するためのページで、IAM ロールリストから次のエラーメッセージが返されます。「このタスクに指定されている IAM メンテナンスウィンドウのロールが見つかりませんでした。このロールは削除された可能性があるか、まだ作成されていない可能性があることを示すエラーメッセージを返す
問題 1: タスクを作成したら、元々指定していたAWS Identity and Access Management (IAM) メンテナンスウィンドウロールが削除された。
解決方法: 1) 別の IAM メンテナンスウィンドウロールを選択する。(アカウントに存在する場合)、新しいロールを作成してそのタスク用に選択します。
問題 2: AWS Command Line Interface (AWS CLI)、AWS Tools for Windows PowerShell、または AWS SDK を使用してタスクが作成された場合は、存在しない IAM メンテナンスウィンドウロールの名前が指定された可能性があります。例えば、タスクを作成する前に IAM メンテナンスウィンドウロールが削除された、またはロール名が正しく入力されなかった可能性があります (例えば、myrole
ではなく my-role
と入力した)。
解決方法: 使用する IAM メンテナンスウィンドウロールの正しい名前を選択するか、新しいロールを作成してそのタスク用に指定します。
すべてのメンテナンスウィンドウのターゲットが更新されるわけではありません。
問題: メンテナンスウィンドウのタスクが、メンテナンスウィンドウの対象となるすべてのリソースで実行されなかったことに気付きました。たとえば、メンテナンスウィンドウの実行結果で、そのリソースのタスクが失敗またはタイムアウトとしてマークされます。
解決方法: メンテナンスウィンドウタスクがターゲットリソースで実行されない最も一般的な理由は、接続性と可用性です。以下に例を示します。
-
Systems Manager メンテナンスウィンドウの操作前または操作中にリソースへの接続が失われました。
-
リソースがオフラインだったか、メンテナンスウィンドウの操作中に停止しました。
リソースでタスクを実行するために、次のスケジュールされたメンテナンスウィンドウ時間を待つことができます。使用できないリソースまたはオフラインだったリソースに対して、メンテナンスウィンドウタスクを手動で実行できます。
タスクがタスク呼び出しステータスで失敗する:「The provided role does not contain the correct SSM permissions.」(指定されたロールには正しい SSM 許可が含まれていません。)
問題: タスクにメンテナンスウィンドウサービスロールを指定しましたが、タスクが正常に実行されず、タスク呼び出しステータスが「"The provided role does not contain the correct SSM permissions.」(指定されたロールには正しい SSM 許可が含まれていません) とレポートします。
-
解決策: タスク 1: コンソールを使用して、メンテナンスウィンドウサービスロール用にカスタムポリシーを作成する では、カスタムメンテナンスウィンドウのサービスロールにアタッチできる基本ポリシーを提供しています。ポリシーには、多くのタスクシナリオに必要な許可が含まれています。ただし、実行できるタスクは多種多様であるため、メンテナンスウィンドウロールのポリシーで追加の許可を提供する必要がある場合があります。
たとえば、一部のオートメーションアクションは AWS CloudFormation スタックと連携します。したがって、メンテナンスウィンドウサービスロールのポリシーに、追加の許可
cloudformation:CreateStack
、cloudformation:DescribeStacks
、cloudformation:DeleteStack
を追加する必要がある場合があります。別の例: オートメーションランブックの
AWS-CopySnapshot
では、Amazon Elastic Block Store (Amazon EBS) スナップショットを作成するためのアクセス許可が必要です。したがって、許可ec2:CreateSnapshot
を追加する必要がある場合があります。AWS マネージド Automation ランブックに必要なロール許可については、「AWS Systems Manager Automation ランブックリファレンス」のランブックの説明を参照してください。
AWS マネージド SSM ドキュメントが必要とするロールの許可については、Systems Manager コンソールの「ドキュメント
」セクションでドキュメントの内容を確認してください。 Step Functions タスク、Lambda タスク、カスタム Automation ランブックおよび SSM ドキュメントに必要なロール許可については、それらのリソースの作成者に許可要件を確認してください。
タスクはエラーメッセージで失敗します:「Step fails when it is validating and resolving the step inputs」
問題: タスクで使用しているオートメーションランブックまたは Systems Manager Command ドキュメントでは InstanceId
や SnapshotId
などの入力を指定する必要がありますが、値が指定されていないか、正しく指定されていません。
-
解決策 1 : タスクが 1 つのリソース (単一ノードやスナップショットなど) を対象とする場合は、タスクの入力パラメーターにその ID を入力します。
-
解決策 2: タスクが複数のリソースをターゲットにしている場合 (ランブック
AWS-CreateImage
を使用するときに複数のノードからイメージを作成する場合など)、メンテナンスウィンドウタスクでサポートされている擬似パラメータの 1 つを入力パラメータで使用して、コマンドでノード ID を表すことができます。以下のコマンドは、AWS CLI を使用して、Systems Manager Automation タスクをメンテナンスウィンドウに登録します。
--targets
の値は、メンテナンスウィンドウのターゲット ID を示します。また、--targets
パラメータでウィンドウターゲット ID が指定されていても、Automation ランブックのパラメータにはノード ID を指定する必要があります。この場合、コマンドは擬似パラメーター{{RESOURCE_ID}}
をInstanceId
の値として使用します。AWS CLI コマンド:
メンテナンスウィンドウタスクの擬似パラメータの使用の詳細については、メンテナンスウィンドウのタスクを登録する際の疑似パラメータの使用 および タスクの登録例 を参照してください。
エラーメッセージ:「Maintenance window tasks without targets don't support MaxConcurrency values」および「Maintenance window tasks without targets don't support MaxErrors values」
問題: Run Command タイプタスクを登録するときは、タスクを実行するターゲットを少なくとも 1 つ指定する必要があります。他のタスクタイプ (自動化、AWS Lambda、および AWS Step Functions) では、タスクの特質に応じて、ターゲットはオプションです。ターゲットを指定しないメンテナンスウィンドウタスクでは、オプション MaxConcurrency
(同時にタスクを実行するリソースの数) と MaxErrors
(タスクが失敗するまでにターゲットリソースでタスクの実行が失敗できる数) は必須ではなく、サポートされていません。タスクターゲットが指定されていない場合、これらのオプションのいずれかに値が指定されると、システムはこのようなエラーメッセージを生成します。
解決方法: これらのエラーのいずれかを受け取った場合は、メンテナンスウィンドウタスクの登録または更新を続行する前に、同時実行性とエラーしきい値の値を削除します。
ターゲットを指定しないタスクの実行の詳細については、AWS Systems Manager ユーザーガイドの「ターゲットのないメンテナンスウィンドウタスクを登録」を参照してください 。