コマンドを作成します。クラウドアシスタントを使用してコマンドを実行できます。

説明

  • 次のタイプのコマンドのみ作成できます。
    • Windows インスタンス用の Bat スクリプト (RunBatScript)
    • Windows インスタンス用の PowerShell スクリプト (RunPowerShellScript)
    • Linux インスタンス用の Shell スクリプト (RunShellScript)
  • ECS インスタンスのコマンド呼び出しで、TimeOut パラメーターを指定し、最大タイムアウト値を設定できます。コマンド呼び出しがタイムアウトすると、 クラウドアシスタントクライアントは、コマンド処理を強制的に停止します。
    • 1 回の呼び出しでは、呼び出しのタイムアウト後、指定された ECS インスタンスのコマンド呼び出しステータス (InvokeRecordStatus) は [失敗] (Failed) になります。
    • 定期的な呼び出しの場合:
      • 定期的な呼び出しのタイムアウト値は、すべての呼び出しレコードに対して有効です。
      • 1 回の呼び出し操作がタイムアウトすると、呼び出しレコード (InvokeRecordStatus) のステータスは [失敗] (Failed)になります。
      • 最後の呼び出しのタイムアウトステータスは、次の呼び出しに影響しません。
  • WorkingDir パラメーターを指定して、コマンドの呼び出しパスを指定できます。Linux インスタンスの場合、デフォルトでは、コマンドは /root ディレクトリで実行されます。Windows インスタンスの場合、コマンドは、C:\ProgramData\aliyun\assist\$(version) など、クラウドアシスタントクライアントプロセスが置かれているディレクトリで実行されます。

リクエストパラメーター

名前 必須かどうか 説明
Action String はい インターフェイスの名前。値:CreateCommand
RegionId String はい リージョン ID。 詳細については、 DescribeRegions を呼び出して最新のリージョンリストを取得してください。
Name String はい コマンド名。すべての文字エンコーディングセットをサポートしています。
Type String はい コマンドタイプ。RunBatScript:Windows インスタンス用の Bat スクリプトを作成します。RunPowerShellScript:Windows インスタンス用の PowerShell スクリプトを作成します。RunShellScript:Linux インスタンス用の Shell スクリプトを作成します。オプションの値:
  • RunBatScript:Windows インスタンス用の Bat スクリプトを作成
  • RunPowerShellScript:Windows インスタンス用の PowerShell スクリプトを作成
  • RunShellScript:Linuxインスタンス用のシェルスクリプトを作成
Description String いいえ コマンドの説明。すべての文字エンコーディングセットをサポートしています。
CommandContent String いいえ Base64 でエンコードされたコマンドの内容。リクエストパラメーター Type を渡す時、 同時にこのパラメーターを渡す必要があります。パラメーター値は送信用に Base64 でエンコードする必要があり、Base64 エンコード前のスクリプトのコンテンツサイズは、16 KB を超えることはできません。
WorkingDir String いいえ ECS インスタンスで実行するコマンドを作成したディレクトリ。デフォルト値:
  • Linux インスタンスの場合、/root ディレクトリ
  • Windows インスタンスの場合、C:\ProgramData\aliyun\assist\$(version) など、クラウドアシスタントクライアントプロセスが置かれているディレクトリ
TimeOut Integer いいえ コマンドの呼び出しタイムアウト値。単位は秒です。コマンドが何らかの理由で実行に失敗した場合、呼び出しがタイムアウトすることがあります。その後、クラウドアシスタントクライアントは、コマンド PID をキャンセルして、コマンド処理を強制的に停止します。パラメーター値は 60 以上でなければなりません。値が 60 より小さい場合、タイムアウト値のデフォルトは 60 秒です。

デフォルト値:3600

レスポンスパラメーター

名前 説明
CommandId String コマンド ID。

リクエストの例
  1. https://ecs.aliyuncs.com/?Action=CreateCommand&RegionId=cn-hangzhou&Name=Test&Type=RunShellScript&CommandContent=ZWNobyAxMjM=&<共通リクエストパラメーター>
成功したレスポンスの例

XML 形式

  1. <CreateCommandResponse> <RequestId>540CFF28-407A-40B5-B6A5-73Bxxxxxxxxx</RequestId> <CommandId>c-e996287206324975b5fbe1dxxxxxxxxx</CommandId></CreateCommandResponse>
JSON 形式
  1. { RequestId”:”540CFF28-407A-40B5-B6A5-73Bxxxxxxxxx”, CommandId”:”c-e996287206324975b5fbe1dxxxxxxxxx”}
エラーレスポンスの例

XML 形式

  1. <Error> <RequestId>540CFF28-407A-40B5-B6A5-74Bxxxxxxxxx</RequestId> <HostId>ecs.aliyuncs.com</HostId> <Code>MissingParameter.Name</Code> <Message>The input parameter “Name” that is mandatory for processing this request is not supplied.</Message></Error>
JSON 形式
  1. RequestId”: 540CFF28-407A-40B5-B6A5-74Bxxxxxxxxx”, HostId”: ecs.aliyuncs.com Code”: MissingParameter.Name Message”: The input parameter Name that is mandatory for processing this request is not supplied.”

エラーコード

このインタフェースに固有のエラーコードは次の通りです。詳細については、API のエラーセンターをご覧ください 。

エラーコード エラーメッセージ HTTP ステータスコード 説明
Invalid.CommandContent The specified CommandContent is not valid or exceed max 400 指定された CommandContent パラメーターが無効です。または、CommandContent 値が 16 KB を超えています。
MissingParameter.Name The input parameter “Name” that is mandatory for processing this request is not supplied. 400 必須パラメーター Name を指定する必要があります。
MissingParameter.RegionId The input parameter “RegionId” that is mandatory for processing this request is not supplied. 400 必須パラメーター RegionId を指定する必要があります。または、指定されたリージョンのリソースを使用することはできません。
MissingParameter.Type The input parameter “Type” that is mandatory for processing this request is not supplied. 400 必須パラメーター Type を指定する必要があります。
InvalidCmdType.NotFound The specified command type does not exist 404 指定された Type パラメーターは存在しません。
InvalidRegionId.NotFound The RegionId provided does not exist in our items. 404 指定された RegionId は存在しません。
InternalError.Dispatch An internal error occurred when dispath the request 500 内部エラーです。しばらくしてからもう一度お試しください。