ECS コンソールからクラウドアシスタントのコマンドを実行することは、インスタンスにログインしてコマンドを実行することに似ています。コマンドは、すべての条件が満たされた場合にのみ正常に実行されます。コマンドを実行した後は、その実行結果とステータスを表示して、対象の操作が完了したことを確認する必要があります。実行が失敗した場合は、エラーメッセージを使用して問題を特定し、修正できます。
背景情報
ECS インスタンスの依存関係の欠落、ネットワーク問題、コマンドのセマンティックエラー、スクリプトのデバッグ失敗、インスタンスの異常ステータスなどの問題により、コマンドの実行ステータスや結果が異なる場合があります。コンソールまたは API を使用して実行結果のエラーメッセージを表示し、問題を診断して修正できます。
実行結果の表示
コンソールでの結果表示
ECS コンソール - ECS クラウドアシスタントに移動します。
上部のナビゲーションバーで、管理したいリソースのリージョンとリソースグループを選択します。

[コマンド実行結果] タブで、コマンドの実行結果を表示できます。
コマンドが成功した場合、実行結果で出力を表示できます。
[実行ステータス] が [成功] であるコマンドの実行結果を見つけます。
[操作] 列で、[表示] をクリックします。
[インスタンス] ページの [タスク完了] タブで、コマンドの実行結果を確認できます。

コマンドが失敗した場合、実行結果のエラーメッセージを表示して問題を診断し、修正できます。
[実行ステータス] が [実行失敗] のコマンド実行結果を探します。
[アクション] 列で、[表示] をクリックします。
[インスタンス] ページでは、[実行失敗] タブでエラーメッセージを表示できます。
一般的なエラーメッセージとその解決策については、「一般的な実行失敗エラーと推奨される解決策」をご参照ください。

定期タスクの出力を表示します。
[実行ステータス] が [予約済み] のコマンドの実行結果を探します。
[操作] 列で、[表示] をクリックします。
[インスタンス] ページで、コマンドの結果を表示できます。
Alibaba Cloud CLI を使用した結果の表示
クラウドアシスタント CLI の使用方法の詳細については、「Alibaba Cloud CLI を使用した Alibaba Cloud リソースの管理」をご参照ください。
RunCommand または InvokeCommand オペレーションの応答からコマンド実行 ID (InvokeId) を取得します。
InvokeId と ECS インスタンスのリージョン ID (RegionId) を入力して、コマンドの実行結果をクエリします。次の例では、中国 (上海) リージョンを使用しています。他のリージョンの ID については、「リージョンとゾーン」をご参照ください。
DescribeInvocationsオペレーションを呼び出して、コマンドの実行ステータスを表示します。aliyun ecs DescribeInvocations --RegionId cn-shanghai --InvokeId t-sh054h*****DescribeInvocationResultsオペレーションを呼び出して、コマンドの実行結果を表示します。aliyun ecs DescribeInvocationResults --RegionId cn-shanghai --InvokeId t-sh054h******
API を使用した結果の表示
RunCommand または InvokeCommand オペレーションの応答からコマンド実行 ID (InvokeId) を取得します。
DescribeInvocations または DescribeInvocationResults オペレーションで、InvokeId と ECS インスタンスのリージョン ID を入力して、コマンドの実行結果をクエリします。
一般的な実行失敗エラーと推奨される解決策
一般的なエラー
エラーコード | エラーメッセージ | 推奨される解決策 |
InstanceNotRunning | タスク作成時にインスタンスが実行中状態ではありませんでした。 | インスタンスが実行中状態であることを確認してください。 |
InstanceRestarted | タスク実行中にインスタンスが再起動されました。 | タスク実行中にインスタンスを再起動しないでください。 |
ClientNotRunning | クラウドアシスタントエージェントが実行されていません。 | クラウドアシスタントエージェントが停止しているか、インストールされていません。クラウドアシスタントエージェントを起動またはインストールする必要があります。
説明 クラウドアシスタントエージェントがまだ起動しない場合は、再インストールしてください。詳細については、「クラウドアシスタントエージェントのインストール」をご参照ください。 |
ClientNetworkBlocked | インスタンスにネットワーク接続の問題があります。 |
説明
|
SecurityGroupRuleDenied | セキュリティグループルールがクラウドアシスタントサービスへのアクセスを拒否しています。 |
|
ClientNotResponse | クラウドアシスタントエージェントが応答しません。 | クラウドアシスタントエージェントのログを確認します。
|
ClientNeedUpgrade | 指定された機能をサポートするには、クラウドアシスタントエージェントをアップグレードする必要があります。 |
|
ClientNotOnline | クラウドアシスタントエージェントがサーバーに接続されていません。 | クラウドアシスタントエージェントを再起動します。詳細については、「クラウドアシスタントエージェントの停止とアンインストール」をご参照ください。 |
DeliveryTimeout | クラウドアシスタントサーバーがタスクをクラウドアシスタントエージェントに送信できませんでした。 | クラウドアシスタントのコマンドがインスタンスに送信されませんでした。コマンドを再実行してください。 |
ExecutionTimeout | コマンドの実行がタイムアウトしました。 | 必要に応じてコマンドの実行タイムアウト期間を延長します。
|
ExecutionException | コマンド実行中に例外が発生しました。 | ErrorInfo フィールドで詳細なエラーメッセージを表示します。 |
ExitCodeNonzero | コマンドの実行は完了しましたが、コマンドプロセスの終了コードが 0 ではありません。 | スクリプトの内容とコマンドの出力を確認してください。 |
ClientRestarted | クラウドアシスタントエージェントが再起動されたため、タスクが中断されました。 | 再起動が完了した後、コマンドを再実行してください。クラウドアシスタントエージェントの実行ステータスは、クラウドアシスタントコンソールで表示するか、DescribeCloudAssistantStatus オペレーションを呼び出して表示できます。 |
InstanceReleased | コマンド実行中にインスタンスがリリースされました。 | 実行中にインスタンスがリリースされたため、コマンドは実行できません。 |
DirectoryNotExists | 指定された作業ディレクトリがインスタンスに存在しません。 | インスタンスに指定された作業ディレクトリを作成してから、コマンドを実行してください。 |
コマンドの実行
エラーコード | エラーメッセージ | 推奨される解決策 |
ClientIsUpgrading | クラウドアシスタントエージェントがアップグレード中です。 | アップグレードが完了した後、コマンドを再実行してください。クラウドアシスタントエージェントの実行ステータスは、クラウドアシスタントコンソールで表示するか、DescribeCloudAssistantStatus オペレーションを呼び出して表示できます。 |
InstanceDeregistered | 管理対象インスタンスの登録が解除されました。 | 管理対象インスタンスの登録が解除されたため、コマンドは実行できません。 |
InvalidSystemBuiltInParameter | 組み込み環境パラメーターが無効です。 | 指定された組み込み環境パラメーターはサポートされていません。組み込み環境パラメーターの詳細については、RunCommand の |
DefaultWorkingDirectoryNotAvailable | インスタンスのデフォルトの作業ディレクトリが利用できません。 | インスタンスのデフォルトの作業ディレクトリを確認してください:
コマンド実行時に作業ディレクトリを指定することもできます。クラウドアシスタントコンソールでディレクトリを指定するか、RunCommand オペレーションの |
CommandNotApplicable | コマンドタイプが指定されたインスタンスに適用できません。 | 各コマンドタイプがサポートするオペレーティングシステムは次のとおりです:
|
InvalidCommandText | コマンド内容が無効です。 | コマンド内容を確認してください。内容はプレーンテキストまたは Base64 エンコード形式にできます。 |
CommandContentDecodeError | コマンド内容のデコードに失敗しました。 | コマンド内容が Base64 エンコードされている場合、エンコーディングが正しいか確認してください。 |
AccountNotExists | 指定されたユーザーがインスタンスに存在しません。 | コマンドを実行する前に、インスタンスに指定されたユーザーを作成してください。
別の既存のユーザーを指定してコマンドを実行することもできます。クラウドアシスタントコンソールでユーザーを指定するか、RunCommand オペレーションの |
定期コマンドの実行
エラーコード | エラーメッセージ | 推奨される解決策 |
BadCronExpression | 指定された 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 | Rate 式が無効です。 | Rate 式を修正してください。詳細については、「固定間隔実行」をご参照ください。 |
RateFrequencyTooLarge | Rate 式で指定された定期実行の頻度が高すぎます。 | 定期実行の頻度は 7 日を超えることはできません。 |
InvalidAtExpression | UNIX タイムスタンプ (At 式) が無効です。 | UNIX タイムスタンプを修正してください。詳細については、「指定した時間に一度だけコマンドを実行する」をご参照ください。 |
AtExpressionExpired | UNIX タイムスタンプ (At 式) の有効期限が切れています。対応する定期タスクは実行されません。 | コマンド実行時に期限切れの UNIX タイムスタンプを指定しないでください。 |
コンテナーでのコマンド実行
エラーコード | エラーメッセージ | 推奨される解決策 |
InvalidContainerName | コンテナー名が無効です。 | コンテナー名は数字または文字で始まる必要があります。数字、大文字、小文字、ピリオド (.)、アンダースコア (_)、ハイフン (-) のみを含めることができます。名前の長さは 255 文字を超えることはできません。 |
UnsupportedContainerRuntime | コンテナー ID に含まれるコンテナーランタイムはサポートされていません。 | Container Runtime Interface (CRI) を介して Kubernetes によって管理され、docker、containerd、または cri-o コンテナーランタイムで実行されるコンテナーのみがサポートされています。 |
InvalidContainerId | コンテナー ID が無効です。 | 64 ビットの 16 進数文字列のみがサポートされています。 |
ContainerConnectFailed | コンテナーへの接続を確立できません。 | コンテナーが実行中か確認してください。
|
ContainerStateAbnormal | コンテナーのステータスが異常です。 | コンテナーのステータスを確認してください。クラウドアシスタントを使用してコマンドを実行できるのは、実行中のコンテナーのみです。 |
ContainerNotFound | コンテナーが存在しません。 | 指定された名前または ID のコンテナーが存在するか確認してください。 方法 1:kubectl を使用する 方法 2:クラウドアシスタントエージェントを使用する 詳細については、「クラウドアシスタントを使用してコンテナーでコマンドを実行する」をご参照ください。 |
ContainerNameDuplicated | ノードに同じ名前のコンテナーがあります。コマンドを実行するコンテナーを特定できません。 |
|
ContainerNameAndIdNotMatch | コンテナー ID とコンテナー名が一致しません。 | 指定されたコンテナー ID とコンテナー名が同じコンテナーに対応していません。コンテナー ID とコンテナー名が正しいか確認してください。 |
Windows インスタンスでデフォルト以外のユーザー (System) としてコマンドを実行する
Windows インスタンスでデフォルト以外のユーザー (System 以外のユーザー) としてコマンドを実行すると、次の問題が発生する可能性があります。
エラーコード | エラーメッセージ | 推奨される解決策 |
UserOrPasswordInvalid | ユーザー名またはパスワードが正しくありません。 | ユーザーのユーザー名またはパスワードが正しくありません。ユーザー名とパスワードの詳細については、「暗号化されたパラメーター」および「クラウドアシスタントコマンドを実行する一般ユーザーの設定」をご参照ください。 |
QueryParameterStoreFailed | パラメーターストアからのパラメーターのプルに失敗しました。 | CloudOps Orchestration Service のパラメーターストアに対応するパスワード情報が存在するか確認してください。詳細については、「暗号化されたパラメーター」をご参照ください。 |
InstanceRoleInvalid | インスタンスロールがインスタンスに付与されていません。 | DescribeInstanceRamRole オペレーションを呼び出して、インスタンスに対応する RAM ロールが存在するか確認してください。 |
コマンドの停止
エラーコード | エラーメッセージ | 推奨される解決策 |
TerminationException | タスクの停止に失敗しました。 | ErrorInfo フィールドで詳細なエラーメッセージを表示するか、タスクの停止をリトライしてください。 |
ファイルの送信
エラーコード | エラーメッセージ | 推奨される解決策 |
FileAlreadyExists | 指定されたパスに同じ名前のファイルが存在します。 | この問題は、次のいずれかの方法で解決できます:
宛先パスまたは宛先 ECS インスタンス上のファイルの名前を変更します。 |
FileNameInvalid | ファイル名が無効です。 | Windows または Linux オペレーティングシステムのファイル命名規則に準拠するようにファイル名を調整してください。
|
FilePathInvalid | ファイルパスが無効です。 | Windows または Linux オペレーティングシステムのファイルパス規則に準拠するようにファイルパスを調整してください。
|
FileAuthorityInvalid | ファイル権限が無効です。 | ファイル権限を調整してください。この設定は Linux インスタンスでのみ有効で、chmod コマンドと同じように構成されます。 |
UserGroupNotExists | 指定されたユーザーグループがインスタンスに存在しません。 | デフォルトのユーザーグループは root です。Linux インスタンスに指定されたユーザーグループを作成してください。 コマンド例: |
よくある質問
Q:クラウドアシスタントを使用して Windows サーバーで PowerShell スクリプトを実行すると、出力の中国語文字が文字化けします。これはなぜ発生し、どのように修正できますか?
A: これは、クラウドアシスタントが PowerShell を実行するために使用するデフォルト環境で、出力の処理に UTF-8 エンコーディングが使用されないためです。その結果、スクリプトが中国語の文字などの非 ASCII 文字を出力すると、エンコーディングの不一致が発生し、コントロールを引き起こします。
プラットフォームがコンテンツを正しく解析できないため、コンテンツは文字化けして表示されます。
次のいずれかの解決策を使用できます:
スクリプト内容の変更:スクリプトファイルの先頭にコードを一行追加して、出力エンコーディングを強制的に UTF-8 にします。
Windows Server 2022 では、クラウドアシスタントはデフォルトで中国語文字のエンコーディングを正しく処理します。エンコーディングを UTF-8 に設定する必要はありません。
PowerShell スクリプトの先頭に次のコードを追加します:
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8 Write-Output "中国語出力のテスト..."ブートストラッププログラムの変更:クラウドアシスタントの高度なオプションで、スクリプトを実行する基盤となるコマンドを変更し、スクリプトが実行される前に自動的にエンコーディングを設定します。
クラウドアシスタントのコマンドの [ブートストラッププログラム] フィールドに、次のコードを入力します。
powershell -command [Console]::OutputEncoding=[System.Text.Encoding]::UTF8;{{ACS::ScriptFileName|Ext(.ps1)}};exit $LastExitCodeこのタスクで実行されるすべての PowerShell スクリプトは、自動的に UTF-8 エンコーディングを適用します。各スクリプトファイルを変更する必要はありません。