Elastic Compute Service (ECS) コンソールを使用する場合でも、インスタンスにログインしてコマンドを実行する場合でも、すべての前提条件が満たされている場合にのみ、Cloud Assistant コマンドを想定どおりに実行できます。意図した操作が完了していることを確認するために、コマンドの実行結果と状態を確認することをお勧めします。実行が失敗した場合は、一般的なエラーメッセージに基づいて問題のトラブルシューティングを行うことができます。
背景情報
例外が発生した場合、コマンドに対して異なる実行結果と状態が表示されます。例外には、依存関係の欠落、ネットワーク例外、コマンドのセマンティックエラー、コマンドのデバッグエラー、インスタンスの異常な状態などが含まれます。 ECS コンソールを使用するか、API オペレーションを呼び出して、実行結果のエラーメッセージを表示し、問題のトラブルシューティングを行うことができます。
実行結果の表示
ECS コンソールの使用
上部のナビゲーションバーで、管理するリソースのリージョンとリソースグループを選択します。
[コマンド実行結果] タブをクリックして、実行結果を表示します。
コマンドの実行が成功した場合、実行結果でコマンドの出力を表示できます。
[実行ステータス] 列に [成功] と表示されているコマンドタスクを見つけます。
[アクション] 列で、[表示] をクリックします。
[インスタンス] タブの [タスク完了] タブで、実行結果を表示します。
コマンドの実行が失敗した場合は、実行結果でエラーメッセージを見つけ、エラーメッセージに基づいて問題のトラブルシューティングを行います。
[実行ステータス] 列に [実行失敗] と表示されているコマンドタスクを見つけます。
[アクション] 列で、[表示] をクリックします。
[インスタンス] タブの [タスク失敗] タブで、実行結果を表示します。
コマンドエラーと解決策については、このトピックの「コマンドエラーと解決策」セクションを参照してください。
スケジュールされたタスクの実行結果を表示します。
[実行ステータス] 列に [実行待ち] と表示されているコマンドタスクを見つけます。
[アクション] 列で、[表示] をクリックします。
[インスタンス] タブで、実行結果を表示します。
次の図は、15 分ごとに実行されるスケジュールされたコマンドタスクの実行結果を示しています。
Alibaba Cloud CLI の使用
Alibaba Cloud CLI の使用方法については、「Alibaba Cloud CLI を使用して Alibaba Cloud リソースを管理する」をご参照ください。
RunCommand または InvokeCommand オペレーションを呼び出して、
InvokeId
レスポンスパラメータからコマンドの実行 ID を取得します。InvokeId
パラメータとRegionId
パラメータを指定して、コマンドの実行結果をクエリします。この例では、日本 (東京) リージョンが使用されています。他のリージョンのRegionId
を取得するには、「リージョンとゾーン」をご参照ください。
DescribeInvocations オペレーションを呼び出して、コマンドの実行ステータスをクエリします。
aliyun ecs DescribeInvocations --RegionId ap-northeast-1 --InvokeId t-sh054h*****
DescribeInvocationResults オペレーションを呼び出して、コマンドの実行結果をクエリします。
aliyun ecs DescribeInvocationResults --RegionId ap-northeast-1 --InvokeId t-sh054h*****
API オペレーションの呼び出し
RunCommand または InvokeCommand オペレーションを呼び出して、
InvokeId
レスポンスパラメータからコマンドタスクの ID を取得します。InvokeId
とRegionId
を指定して DescribeInvocations または DescribeInvocationResults オペレーションを呼び出して、コマンドの実行結果をクエリします。
コマンドエラーと解決策
一般的なエラー
エラーコード | エラーメッセージ | 推奨される解決策 |
InstanceNotRunning | タスクの作成中に、インスタンスが実行中状態ではありませんでした。 | インスタンスが想定どおりに実行されているかどうかを確認します。 |
InstanceRestarted | タスクの実行中に、インスタンスが再起動されました。 | タスクの実行中にインスタンスを再起動しないでください。 |
ClientNotRunning | クラウドアシスタントクライアント が実行されていませんでした。 | クラウドアシスタントクライアント が停止しているか、インストールされていません。次の操作を実行して、クラウドアシスタントクライアント を起動またはインストールします。
説明 上記の操作を実行しても クラウドアシスタントクライアント が起動できない場合は、クラウドアシスタントクライアントを再インストールしてください。 クラウドアシスタントクライアントのインストール方法については、「Install Cloud Assistant Agent」をご参照ください。 |
ClientNetworkBlocked | インスタンスのネットワーク環境が異常です。 |
説明
|
SecurityGroupRuleDenied | セキュリティグループルールにより、Cloud Assistant へのアクセスが拒否されています。 |
|
ClientNotResponse | クラウドアシスタントクライアント が応答しません。 | クラウドアシスタントクライアント のログに基づいて問題のトラブルシューティングを行います。
|
ClientNeedUpgrade | クラウドアシスタントクライアント は、特定の機能をサポートするためにアップグレードする必要があります。 |
|
ClientNotOnline | クラウドアシスタントクライアント がサーバーに接続されていません。 | クラウドアシスタントクライアント を再起動します。 詳細については、「Start, stop, or uninstall Cloud Assistant Agent」をご参照ください。 クラウドアシスタントクライアントを再起動しても クラウドアシスタントクライアント がサーバーに接続できない場合は、チケットを送信 してください。 |
DeliveryTimeout | Cloud Assistant サーバーが クラウドアシスタントクライアント にコマンドを送信できませんでした。 | Cloud Assistant コマンドがインスタンスに送信されませんでした。コマンドを再実行することをお勧めします。問題が解決しない場合は、チケットを送信 してください。 |
ExecutionTimeout | コマンドの実行がタイムアウトしました。 | コマンドの実行タイムアウト期間を延長します。
|
ExecutionException | コマンドの実行中に例外が発生しました。 | ErrorInfo フィールドのエラーメッセージを確認します。エラーメッセージに基づいて問題を特定できない場合は、チケットを送信 してください。 |
ExitCodeNonzero | コマンドの実行は完了しましたが、終了コードは 0 ではありません。 | コマンドスクリプトとコマンド出力を確認します。 |
ClientRestarted | クラウドアシスタントクライアントの再起動により、タスクが中断されました。 | クラウドアシスタントクライアントの再起動後にタスクを再実行します。 クラウドアシスタントクライアントの実行ステータスは、ECS コンソールの [ECS Cloud Assistant] ページで表示するか、DescribeCloudAssistantStatus オペレーションを呼び出すことで表示できます。 |
InstanceReleased | タスクの実行中にインスタンスが解放されました。 | インスタンスが解放されているため、タスクを実行できません。 |
DirectoryNotExists | 指定された作業ディレクトリがインスタンスに存在しません。 | インスタンスに作業ディレクトリを作成してから、コマンドを再実行します。 |
コマンド実行時に発生するエラー
エラーコード | エラーメッセージ | 推奨される解決策 |
ClientIsUpgrading | クラウドアシスタントクライアントはアップグレード中でした。 | クラウドアシスタントクライアントのアップグレードが完了してから、コマンドを再実行します。 クラウドアシスタントクライアントの実行ステータスは、ECS コンソールの [ECS Cloud Assistant] ページで表示するか、DescribeCloudAssistantStatus オペレーションを呼び出すことで表示できます。 |
InstanceDeregistered | 選択したマネージドインスタンスは登録解除されました。 | マネージドインスタンスが登録解除されているため、コマンドを実行できません。 |
InvalidSystemBuiltInParameter | 組み込み環境パラメータが無効です。 | 組み込み環境パラメータはサポートされていません。 組み込み環境パラメータについては、RunCommand の |
DefaultWorkingDirectoryNotAvailable | インスタンスのデフォルトの作業ディレクトリは使用できません。 | インスタンスのデフォルトの作業ディレクトリを確認します。
ECS コンソールの [ECS Cloud Assistant] ページで作業ディレクトリを指定するか、RunCommand オペレーションを呼び出すときに |
CommandNotApplicable | コマンドタイプは、指定されたインスタンスには適用できません。 | インスタンスのオペレーティングシステムごとに、サポートされるコマンドタイプが異なります。
|
InvalidCommandText | コマンドの内容が無効です。 | コマンドの内容を確認します。コマンドの内容は、プレーンテキストまたは Base64 エンコードにすることができます。 |
CommandContentDecodeError | コマンドの内容をデコードできませんでした。 | コマンドの内容が Base64 エンコードされている場合は、Base64 エンコードが正しいかどうかを確認します。 |
AccountNotExists | 指定されたユーザーがインスタンスに存在しません。 | ユーザーを作成してから、コマンドを再実行します。
ECS コンソールの [ECS Cloud Assistant] ページでユーザーを指定するか、RunCommand オペレーションを呼び出すときに |
スケジュールされたコマンド実行時に発生するエラー
エラーコード | エラーメッセージ | 推奨される解決策 |
BadCronExpression | 指定された Cron 式が無効です。 | Cron 式を変更します。 詳細については、「Cron 式」をご参照ください。 |
CronExpressionExpired | Cron 式の期限が切れているため、スケジュールされたタスクを実行できませんでした。 | 有効な Cron 式を指定します。 |
InvalidGMTOffsetForTimezone | Cron 式で指定された GMT オフセットタイムゾーンの形式が無効です。 | GMT オフセットタイムゾーンの形式を確認します。 サポートされている GMT 範囲: GMT-12:59 から GMT+14:59。 分フィールドは 0 から 59 までの値に設定できます。 時フィールドは先行ゼロをサポートしていません。 |
InvalidGMTOffsetHourForTimezone | Cron 式で指定された GMT オフセット時間値が無効です。 | GMT オフセット時間値を確認します。 サポートされている GMT 範囲: GMT-12:59 から GMT+14:59。 時フィールドは先行ゼロをサポートしていません。 |
InvalidGMTOffsetMinuteForTimezone | Cron 式で指定された GMT オフセット分値が無効です。 | GMT オフセット分値を確認します。 分フィールドは 0 から 59 までの値に設定できます。 |
TimezoneInformationCorrupt | クラウドアシスタントクライアントはタイムゾーン情報を解析できません。 タイムゾーンファイルが破損している可能性があります。 |
説明 必要なタイムゾーンファイルが存在しない場合は、タイムゾーンファイルを作成してから、コマンドを再実行します。 |
InvalidRateExpression | レート式が無効です。 | レート式を変更します。 詳細については、「Cron 式」をご参照ください。 |
RateFrequencyTooLarge | レート式で指定されたスケジュールされた実行頻度が、想定よりも高くなっています。 | スケジュールされた実行頻度を最大 7 日間に設定します。 |
InvalidAtExpression | at 式が無効です。 | at 式を変更します。 詳細については、「Cron 式」をご参照ください。 |
AtExpressionExpired | at 式の期限が切れているため、スケジュールされたタスクを実行できませんでした。 | 有効な at 式を指定します。 |
コンテナ内でコマンドを実行するときに発生するエラー
エラーコード | エラーメッセージ | 推奨される解決策 |
InvalidContainerName | コンテナ名が無効です。 | コンテナ名は最大 255 文字です。 コンテナ名には、文字、数字、ピリオド (.)、アンダースコア (_)、ハイフン (-) のみを含めることができます。 コンテナ名は、文字または数字で始める必要があります。 |
UnsupportedContainerRuntime | コンテナ ID に含まれるコンテナランタイムはサポートされていません。 | Cloud Assistant を使用してコマンドを実行できるのは、Container Runtime Interface ( CRI ) に基づいて Kubernetes によって管理され、Docker、containerd、または CRI-O コンテナランタイム内で実行されているコンテナのみです。 |
InvalidContainerId | コンテナ ID が無効です。 | 64 ビットの 16 進数文字列のみがサポートされています。 |
ContainerConnectFailed | コンテナに接続できません。 | コンテナが実行されているかどうかを確認します。
|
ContainerStateAbnormal | コンテナのステータスが想定どおりではありません。 | コンテナのステータスを確認し、コンテナが実行されていることを確認します。 |
ContainerNotFound | コンテナが存在しません。 | 次のいずれかの方法を使用して、コンテナの ID または名前が有効かどうかを確認します。 方法 1: kubectl コマンドを実行する
方法 2: クラウドアシスタントクライアントを使用する
詳細については、「Cloud Assistant を使用してコンテナ内でコマンドを実行する」をご参照ください。 |
ContainerNameDuplicated | ノード上の複数のコンテナの名前が同じであるため、システムはコマンドを実行する正しいコンテナを識別できません。 |
|
ContainerNameAndIdNotMatch | コンテナ ID とコンテナ名が一致しません。 | 指定されたコンテナ ID が、指定されたコンテナ名に対応していません。 コンテナ ID と名前が正しいかどうかを確認します。 |
Windows インスタンスでデフォルト以外のユーザー (System 以外のユーザー) としてコマンドを実行するときに発生するエラー
Windows インスタンスでデフォルト以外のユーザー (System 以外のユーザー) としてコマンドを実行すると、次のエラーが発生する可能性があります。
エラーコード | エラーメッセージ | 推奨される解決策 |
UserOrPasswordInvalid | ユーザー名またはパスワードが正しくありません。 | ユーザー名またはパスワードを確認します。 ユーザー名とパスワードについては、「暗号化パラメータ」および「一般ユーザーとして Cloud Assistant コマンドを実行する」をご参照ください。 |
QueryParameterStoreFailed | CloudOps Orchestration Service ( OOS ) パラメータストアからパラメータを取得できません。 | 対応するパスワード情報が CloudOps Orchestration Service パラメータストアに存在するかどうかを確認します。 詳細については、「暗号化パラメータ」をご参照ください。 |
InstanceRoleInvalid | 必要なインスタンスロールがインスタンスにアタッチされていません。 | DescribeInstanceRamRole オペレーションを呼び出して、必要な Resource Access Management ( RAM ) ロールがインスタンスにアタッチされているかどうかを確認します。 |
コマンド停止時に発生するエラー
エラーコード | エラーメッセージ | 推奨される解決策 |
TerminationException | タスクを停止できませんでした。 | ErrorInfo フィールドのエラーメッセージを確認して問題のトラブルシューティングを行うか、タスクの停止を再試行します。 |
ファイル送信時に発生するエラー
エラーコード | エラーメッセージ | 推奨される解決策 |
FileAlreadyExists | 同じ名前のファイルが宛先パスに既に存在します。 | エラーを解決するには、次のいずれかの解決策を使用します。
送信するファイルの宛先パスまたは名前を変更します。 |
FileNameInvalid | ファイル名が無効です。 | 次のいずれかの方法を使用して、Windows または Linux オペレーティングシステムのファイル命名規則に準拠するようにファイル名を変更します。
|
FilePathInvalid | 宛先パスが無効です。 | 次のいずれかの方法を使用して、Windows または Linux オペレーティングシステムのパス規則に準拠するように宛先パスを変更します。
|
FileAuthorityInvalid | ファイルの権限が無効です。 | ファイルの権限を変更します。 ファイルの権限は、Linux インスタンスでのみ有効です。 chmod コマンドを構成するのと同じ方法で、ファイルの権限を構成できます。 |
UserGroupNotExists | 指定されたユーザーグループがインスタンスに存在しません。 | デフォルトでは、ユーザーグループは root です。 インスタンスに指定されたユーザーグループを作成します。 コマンド例: |