Systems Manager 自動化のトラブルシューティング - AWS Systems Manager

Systems Manager 自動化のトラブルシューティング

自動化サービスに問題が生じた場合のトラブルシューティングに次の情報を使用します。このトピックには、自動化エラーメッセージにおける問題を解決するための特定のタスクが含まれます。

一般的な自動化エラー

このセクションでは、一般的な自動化エラーについて説明します。

VPC not defined 400

デフォルトでは、自動化が AWS-UpdateLinuxAmi ドキュメントまたは AWS-UpdateWindowsAmi ドキュメントを実行すると、システムはデフォルト VPC (172.30.0.0/16) に一時インスタンスを作成します。デフォルト VPC を削除した場合、次のエラーが発生します。

VPC not defined 400

この問題を解決するには、SubnetId 入力パラメータに値を指定する必要があります。

自動化の実行開始の失敗

IAM ユーザーロールと自動化のポリシーが正しく設定されていない場合、自動化の実行はアクセス拒否エラー、あるいは無効な継承ロールエラーによって失敗することがあります。

アクセスが拒否される

次の例では、自動化の実行がアクセス拒否エラーによって失敗した状態を説明します。

Systems Manager API にアクセスが拒否されました

エラーメッセージ: User: user arn is not authorized to perform: ssm:StartAutomationExecution on resource: document arn (Service: AWSSimpleSystemsManagement; Status Code: 400; Error Code: AccessDeniedException; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)

  • 考えられる原因 1: 自動化実行を開始しようとしている IAM ユーザーに StartAutomationExecution API を呼び出すアクセス許可がない。この問題を解決するには、実行を開始するために使用されるユーザーアカウントに必要な IAM ポリシーをアタッチします。詳細については、「タスク 3: オートメーションへのユーザーのアクセスを設定する」を参照してください。

  • 考えられる原因 2: 自動化実行を開始しようとしている IAM ユーザーには StartAutomationExecution API を呼び出すアクセス許可があるが、特定の自動化ドキュメントを使用して API を呼び出す許可がない。この問題を解決するには、実行を開始するために使用されるユーザーアカウントに必要な IAM ポリシーをアタッチします。詳細については、「タスク 3: オートメーションへのユーザーのアクセスを設定する」を参照してください。

PassRole 許可が欠如していることによるアクセスの拒否

エラーメッセージ: User: user arn is not authorized to perform: iam:PassRole on resource: automation assume role arn (Service: AWSSimpleSystemsManagement; Status Code: 400; Error Code: AccessDeniedException; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)

自動化の実行を開始しようとしている IAM ユーザーに、ロールを継承するための PassRole 許可がない。この問題を解決するには、自動化の実行を開始しようとしている IAM ユーザーのロールに iam:PassRole のポリシーをアタッチします。詳細については、「タスク 2: iam:PassRole ポリシーをオートメーションロールにアタッチする」を参照してください。

無効な継承ロール

自動化を実行するとき、継承ロールはドキュメントで提供されるか、あるいはドキュメントにパラメータ値として渡されます。継承ロールが指定されていない、あるいは正しく設定されていない場合、複数の種類のエラーが発生することがあります。

形式が正しくない継承ロール

エラーメッセージ: The format of the supplied assume role ARN is invalid. 継承ロールが不適切にフォーマットされている。この問題を解決するには、自動化ドキュメントで有効な継承ロールが指定されていること、あるいは自動化を実行するときにランタイムパラメータとして指定されていることを確認します。

継承ロールが継承されない

エラーメッセージ: The defined assume role is unable to be assumed. (Service: AWSSimpleSystemsManagement; Status Code: 400; Error Code: InvalidAutomationExecutionParametersException; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)

実行は開始するが、ステータスが失敗になる

アクション固有の失敗

自動化ドキュメントには、実行の手順の順番が含まれています。各ステップは、1 つまたは複数の AWS のサービス API を起動します。この API は、ステップの入力、動作、出力を決定します。エラーによって 1 つのステップが失敗する可能性のある複数の場所があります。失敗メッセージは、いつどこでエラーが発生したかを示します。

EC2 コンソールで失敗メッセージを表示するには、失敗したステップの [出力の表示] リンクを選択します。AWS CLI から失敗メッセージを表示するには、get-automation-execution を呼び出して、失敗した StepExecution から FailureMessage 属性を検索します。

次の例では、aws:runInstance アクションに関連付けられたステップが失敗しています。それぞれの例では、異なる種類のエラーを示しています。

イメージの欠落

エラーメッセージ: Automation Step Execution fails when it is launching the instance(s). Get Exception from RunInstances API of ec2 Service. Exception Message from RunInstances API: [The image id '[ami id]' does not exist (Service: AmazonEC2; Status Code: 400; Error Code: InvalidAMIID.NotFound; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)]. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

aws:runInstances アクションは、存在しない ImageId への入力を受信しました。この問題を解決するには、適切な AMI ID を使用して自動化ドキュメントまたはパラメータ値を更新します。

継承ロールポリシーに十分なアクセス許可がない

エラーメッセージ: Automation Step Execution fails when it is launching the instance(s). Get Exception from RunInstances API of ec2 Service. Exception Message from RunInstances API: [You are not authorized to perform this operation. Encoded authorization failure message: xxxxxxx (Service: AmazonEC2; Status Code: 403; Error Code: UnauthorizedOperation; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)]. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

継承ロールに、EC2 インスタンスで RunInstances API を呼び出す十分なアクセス許可がありません。この問題を解決するには、継承ロールに RunInstances API を呼び出すアクセス許可がある継承ロールに IAM ポリシーをアタッチします。詳細については、「方法 2: IAM を使用して、自動化のロールを設定」を参照してください。

予期できないステート

エラーメッセージ: Step fails when it is verifying launched instance(s) are ready to be used. Instance i-xxxxxxxxx entered unexpected state: shutting-down. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

  • 考えられる原因 1: インスタンスまたは Amazon EC2 サービスに問題がある。この問題を解決するには、インスタンスにログインするか、インスタンスシステムログを参照して、インスタンスがシャットダウンするようになった原因を検索します。

  • 考えられる原因 2: aws:runInstances アクションに指定されるユーザーデータスクリプトに問題があるか、あるいは正しくない構文がある。ユーザーデータスクリプトの構文を確認します。また、ユーザーデータスクリプトがインスタンスをシャットダウンしていない、あるいはインスタンスをシャットダウンするその他のスクリプトを呼び出していないかも確認します。

アクション固有の失敗リフェレンス

ステップが失敗すると、失敗発生時にどのサービスが呼び出されたかが失敗のメッセージに示されることもあります。次の表は、各アクションによって呼び出されるサービスを一覧表示します。また、この表にはそれぞれのサービスの情報へのリンクも提供しています。

Action このアクションによって呼び出される AWS のサービス このサービスについての情報 トラブルシューティングのコンテンツ

aws:runInstances

Amazon EC2

Linux インスタンス用 Amazon EC2 ユーザーガイド

EC2 インスタンスのトラブルシューティング

aws:changeInstanceState

Amazon EC2

Linux インスタンス用 Amazon EC2 ユーザーガイド

EC2 インスタンスのトラブルシューティング

aws:runCommand

Systems Manager

AWS Systems Manager Run Command

Systems Manager Run Command のトラブルシューティング

aws:createImage

Amazon EC2

Amazon マシンイメージ

aws:createStack

AWS CloudFormation

AWS CloudFormation ユーザーガイド

トラブルシューティングAWS CloudFormation

aws:deleteStack

AWS CloudFormation

AWS CloudFormation ユーザーガイド

トラブルシューティングAWS CloudFormation

aws:deleteImage

Amazon EC2

Amazon マシンイメージ

aws:copyImage

Amazon EC2

Amazon マシンイメージ

aws:createTag

Amazon EC2、Systems Manager

EC2 リソースとタグ

aws:invokeLambdaFunction

AWS Lambda

AWS Lambda Developer Guide

Lambda のトラブルシューティング

自動化サービス内部エラー

エラーメッセージ: Internal Server Error. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

自動化サービスに関する問題は、特定の自動化ドキュメントが正常に実行されることに影響を及ぼします。この問題を解決するには、AWS サポート にお問い合わせください。可能な範囲で、実行 ID とカスタマー ID をご用意ください。

実行は開始するが、タイムアウトになる

エラーメッセージ: Step timed out while step is verifying launched instance(s) are ready to be used. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

aws:runInstances アクションのステップがタイムアウトになります。これは、ステップで timeoutSeconds に指定された値よりステップアクションの実行に時間がかかる場合に発生します。この問題を解決するには、timeoutSeconds により長い時間を指定します。問題が解決しない場合は、ステップが予期される時間より長くかかる原因を診断します。