全部產品
Search
文件中心

Elastic Compute Service:ModifyInvocationAttribute

更新時間:Aug 14, 2026

修改雲端助手排程任務的執行資訊,包括命令內容、定時執行方式、新增 ECS 執行個體或託管執行個體至任務。

介面說明

  • 支援修改以下執行方式的任務(參見 DescribeInvocations 返回的 RepeatMode 值):
    • Period:週期執行。

    • NextRebootOnly:當執行個體下一次啟動時,自動執行命令。

    • EveryReboot:執行個體每一次啟動都將自動執行命令。

  • 支援修改以下狀態的任務(參見 DescribeInvocations 返回的 InvocationStatus 值):
    • Pending:系統正在校驗或傳送命令。存在至少一台執行個體的命令執行狀態為 Pending,則總執行狀態為 Pending。

    • Running:命令正在執行個體上執行。存在至少一台執行個體的命令執行狀態為 Running,則總執行狀態為 Running。

    • Scheduled:定時執行的命令已傳送,等待執行。存在至少一台執行個體的命令執行狀態為 Scheduled,則總執行狀態為 Scheduled。

    • Stopping:正在停止任務。存在至少一台執行個體的命令執行狀態為 Stopping,則總執行狀態為 Stopping。

  • 修改排程任務執行資訊(包括命令內容、自訂參數、執行頻率)前,已執行的 ECS 執行個體或託管執行個體的雲端助手 Agent 版本需要高於以下對應的版本。
    • Linux:2.2.3.541

    • Windows:2.1.3.541

    • 如果呼叫結果返回 InvalidOperation.CloudAssistantVersionUnsupported 錯誤碼,請將雲端助手 Agent 更新至最新版本。

  • 當您執行一個雲端助手公用命令時,無法修改命令內容 CommandContent

  • 當您修改了命令內容 CommandContent,且呼叫 InvokeCommand 或呼叫 RunCommand 時設定 KeepCommandtrue 建立任務,將會新增一條命令並長期保留,並佔用雲端助手命令配額;在一個地域下,您最多可以保有 500~50,000 條雲端助手命令。您也可以申請提升配額,關於如何查詢及提升配額,請參見配額管理

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

調試

授權資訊

下表是API對應的授權資訊,可以在RAM權限原則語句的Action元素中使用,用來給RAM使用者或RAM角色授予調用此API的許可權。具體說明如下:

  • 操作:是指具體的許可權點。

  • 存取層級:是指每個操作的存取層級,取值為寫入(Write)、讀取(Read)或列出(List)。

  • 資源類型:是指操作中支援授權的資源類型。具體說明如下:

    • 對於必選的資源類型,用前面加 * 表示。

    • 對於不支援資源級授權的操作,用全部資源表示。

  • 條件關鍵字:是指雲產品自身定義的條件關鍵字。

  • 關聯操作:是指成功執行操作所需要的其他許可權。操作者必須同時具備關聯操作的許可權,操作才能成功。

操作

存取層級

資源類型

條件關鍵字

關聯操作

ecs:ModifyInvocationAttribute

update

*Invocation

acs:ecs:{#regionId}:{#accountId}:invocation/{#invocationId}

Instance

acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}

請求參數

名稱

類型

必填

描述

樣本值

RegionId

string

地域 ID。

cn-hangzhou

InstanceId

array

待加入任務的 ECS 執行個體 ID 或託管執行個體 ID。

string

待加入任務的 ECS 執行個體 ID 或託管執行個體 ID。待加入的執行個體數量與已執行的執行個體數量總和不得超過 100。

i-bp1i7gg30r52z2em****

InvokeId

string

待修改任務的命令執行 ID。

t-hz0jdfwd9f****

CommandContent

string

待修改後的命令內容。命令內容可以是明文內容或 Base64 編碼後的內容。您需要注意:

  • 命令內容在 Base64 編碼後的大小不能超過 24 KB。

  • 如果您的命令內容是 Base64 編碼後的內容,則必須設定 ContentEncoding=Base64

  • 指定參數 EnableParameter=true 可在命令內容中啟用自訂參數功能:

    • {{}} 包含的方式定義自訂參數,在 {{}} 內參數名前後的空格以及換行符號會被忽略。

    • 自訂參數個數不能超過 20 個。

    • 自訂參數名允許 a-zA-Z0-9-_ 的組合,不支援 acs:: 前綴指定非內建環境參數,不支援其餘字元,參數名不區分大小寫。

    • 單個自訂參數名不能超過 64 位元組。

  • 您可以指定內建環境參數作為自訂參數,執行命令時無需手動對參數賦值,雲端助手將為您自動替換為環境中對應的值。支援指定以下內建環境參數:

    • {{ACS::RegionId}}:地域 ID。

    • {{ACS::AccountId}}:阿里雲主帳號 UID。

    • {{ACS::InstanceId}}:執行個體 ID。命令下發到多個執行個體時,如需指定 {{ACS::InstanceId}} 作為內建環境參數,需確保雲端助手 Agent 不低於以下版本:
      • Linux:2.2.3.309

      • Windows:2.1.3.309

    • {{ACS::InstanceName}}:執行個體名稱。命令下發到多個執行個體時,如需指定 {{ACS::InstanceName}} 作為內建環境參數,需確保雲端助手 Agent 不低於以下版本:
      • Linux:2.2.3.344

      • Windows:2.1.3.344

    • {{ACS::InvokeId}}:命令執行 ID。如需指定 {{ACS::InvokeId}} 作為內建環境參數,需確保雲端助手 Agent 不低於以下版本:
      • Linux:2.2.3.309

      • Windows:2.1.3.309

    • {{ACS::CommandId}}:命令 ID。透過呼叫本介面執行命令時,如需指定 {{ACS::CommandId}} 作為內建環境參數,需確保雲端助手 Agent 不低於以下版本:
      • Linux:2.2.3.309

      • Windows:2.1.3.309

ZWNobyAxMjM=

EnableParameter

boolean

修改命令中是否包含自訂參數。

  • 當您啟用自訂參數或修改自訂參數 Parameters 時,該參數需設定為 true

  • 當您不修改自訂參數 Parameters 時,不設定該參數或設定為 false

false

Parameters

object

命令中包含自訂參數時,修改執行命令時傳入的自訂參數的鍵值對。

自訂參數的個數範圍為 0~10,且您需要注意:

  • 鍵不允許為空字串,最多支援 64 個字元。

  • 值允許為空字串。

  • 自訂參數與原始命令內容在 Base64 編碼後,命令內容在 Base64 編碼後的大小不能超過 24 KB。

  • 設定的自訂參數名集合必須為建立命令時定義的參數集的子集。對於未傳入的參數,您可以使用空字串代替。

預設值為空,表示不涉及自訂參數鍵值對的修改。

{"name":"Jack", "accessKey":"LTAI*************"}

Frequency

string

待修改的定時執行頻率。僅當 RepeatModePeriod 時生效。目前支援三種定時執行方式:固定時間間隔執行(基於 Rate 運算式)、僅在指定時間執行一次、基於時鐘定時執行(基於 Cron 運算式)。

  • 固定時間間隔執行:基於 Rate 運算式,按照設定的時間間隔執行命令。時間間隔支援按秒(s)、分鐘(m)、小時(h)和天(d)來選擇,適用於在固定時間間隔執行任務的場景。格式為 rate(<執行間隔數值><執行間隔單位>),如 5 分鐘執行一次,格式為 rate(5m)。使用固定時間間隔執行有以下限制:

    • 設定的時間間隔不大於 7 天、不小於 60 秒,且需大於建立排程任務時指定的逾時時間。

    • 執行間隔只基於固定頻率,與任務實際執行需要的時間無關。例如設定每 5 分鐘執行一次命令,任務需要 2 分鐘執行完成,則在任務完成 3 分鐘後繼續執行下一輪。

    • 按照任務的建立時間(參見 DescribeInvocations 返回的 CreationTime ,請注意不是修改時間)及修改後的執行間隔計算下一次執行時間。

  • 僅在指定時間執行一次:按照設定的時區和執行時間點執行一次命令。格式為 at(yyyy-MM-dd HH:mm:ss <時區>),即 at(年-月-日 時:分:秒 <時區>)。如果不指定時區,預設為 UTC 時區。時區支援以下三種形式:

    • 時區全稱:如 Asia/Shanghai(中國/上海時間)、America/Los_Angeles(美國/洛杉磯時間)等。

    • 時區相對於格林威治時間的偏移量:如 GMT+8:00(東八區)、GMT-7:00(西七區)等。使用 GMT 格式時,小時位不支援新增前導零。

    • 時區縮寫:僅支援 UTC(協調世界時間)。

    如果指定在中國/上海時間 2022 年 06 月 06 日 13 時 15 分 30 秒執行一次,格式為:at(2022-06-06 13:15:30 Asia/Shanghai);如果指定在西七區 2022 年 06 月 06 日 13 時 15 分 30 秒執行一次,格式為:at(2022-06-06 13:15:30 GMT-7:00)

  • 基於時鐘定時執行(基於 Cron 運算式):基於 Cron 運算式,按照設定的排程任務執行命令。格式為 <秒> <分鐘> <小時> <日期> <月份> <星期> <年份(可選)> <時區>,即 <Cron 運算式> <時區>。在指定的時區下,根據 Cron 運算式推算排程任務執行時間並執行。若不指定時區,預設為執行排程任務執行個體的系統內部時區。關於 Cron 運算式的更多資訊,請參見 Cron 運算式。時區支援以下三種形式:

    • 時區全稱:如 Asia/Shanghai(中國/上海時間)、America/Los_Angeles(美國/洛杉磯時間)等。

    • 時區相對於格林威治時間的偏移量:如 GMT+8:00(東八區)、GMT-7:00(西七區)等。使用 GMT 格式時,小時位不支援新增前導零。

    • 時區縮寫:僅支援 UTC(協調世界時間)。 例如,在中國/上海時間,2022 年每天上午 10:15 執行一次命令,格式為 0 15 10 ? * * 2022 Asia/Shanghai;在東八區時間,2022 年每天上午 10:00 到 11:30 每隔半小時執行,格式為 0 0/30 10-11 * * ? 2022 GMT+8:00;在 UTC 時間,從 2022 年開始,每隔兩年的 10 月每天下午 14:00 到下午 14:55 時間段內每隔 5 分鐘執行,格式為 0 0/5 14 * 10 ? 2022/2 UTC

    說明

    設定的最小時間間隔需大於或等於建立排程任務時指定的逾時時間,且不小於 10 秒。

0 */20 * * * *

ContentEncoding

string

命令內容(CommandContent)的編碼方式。取值範圍(不區分大小寫):

  • PlainText:不編碼,採用明文傳輸。

  • Base64:Base64 編碼。

預設值:PlainText,填寫錯誤時會當作 PlainText 處理。

PlainText

ClientToken

string

保證請求冪等性。從您的用戶端產生一個參數值,確保不同請求間該參數值唯一。ClientToken 只支援 ASCII 字元,且不能超過 64 個字元。更多資訊,請參見如何保證冪等性

123e4567-e89b-12d3-a456-426655440000

返回參數

名稱

類型

描述

樣本值

object

RequestId

string

請求 ID。

473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

CommandId

string

命令 ID。

  • 只有 CommandContent 發生變更,才新增一條命令,返回新增的 CommandId

  • CommandContent 未變更時,不會新增命令,將返回當前正在執行命令的 CommandId

  • 若呼叫 InvokeCommand ,或呼叫 RunCommand 時選擇了 KeepCommandtrue,將會保留新增的命令;否則執行完成或手動停止任務時,將刪除任務所有關聯的命令。

c-hz01272yr52****

樣本

正常返回樣本

JSON格式

{
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
  "CommandId": "c-hz01272yr52****"
}

錯誤碼

HTTP status code

錯誤碼

錯誤資訊

描述

400 InvalidParameter.Frequency The specified parameter Frequency is not valid. 指定的參數 Frequency 不合法。
400 InvalidParameters.KeyDuplicate The key in the parameter Parameters cannot be duplicated. 參數 Parameters 中的鍵不能重複。
400 InvalidParameters.KeyNotMatch The key in the parameter Parameters do not match those defined when creating the command. 參數 Parameters 中的鍵與建立命令時定義的不匹配。
400 InvalidParameters.KeyMalformed The key in the parameter Parameters is not valid. 參數 Parameters 中的鍵不合法。
400 InvalidParameters.KeyEmpty The key in the parameter Parameters cannot be empty. 參數 Parameters 中的鍵不能為空。
400 InvalidCommandContent.DecodeError The specified parameter CommandContent can not be Base64 decoded. 參數 CommandContent 無法透過 Base64 解碼。
400 InvalidClientToken.Malformed The specified parameter clientToken is not valid. 指定的參數 ClientToken 格式不符合規範要求,該參數應該只包括 ASCII 字元,且長度不應該超過 64 個字元。
500 InternalError An error occurred when you dispatched the request. 傳送請求時發生錯誤,請稍後重試。
403 InvalidInstanceId.OSTypeUnsupported The OS type of the instance corresponding to the parameter InstanceId does not support the specified command type. 參數 InstanceId 對應執行個體的作業系統類型不支援該操作。
403 InvalidOperation.RepeatModeUnsupported The operation is not supported for current repeat mode of invocation. 目前命令執行的方式不支援該操作。
403 InvalidOperation.InvokeAlreadyFinished The operation is not supported for finished invocation. 已執行完成的任務不支援該操作。
403 InvalidOperation.CloudAssistantVersionUnsupported The operation is not supported for current CloudAssistant version of instance. 目前執行個體的雲端助手版本不支援該操作。
403 InvalidOperation.ModifyPublicCommandUnsupported Modification of the content of Public Command is not supported. 不支援修改公共命令的內容。
403 InvalidCommandContent.LengthLimitExceeded The length of the parameter CommandContent exceeds the limit of %s KB characters.
403 Operation.Forbidden The operation is not permitted. 目前子帳號沒有權限進行此操作。
403 InvalidParameters.CountLimitExceeded The count of the parameter Parameters exceeds the limit of 10. 參數 Parameters 的數量超過了 10 的限制。
403 InvalidParameters.KeyLengthLimitExceeded The length of the key in the parameter Parameters exceeds the limit of 64 characters. 參數 Parameters 中鍵的長度超過了 64 個字元的限制。
403 InvalidInstanceId.CountLimitExceeded The count of the parameter InstanceId exceeds the limit of %s.
403 CommandLimitExceeded The count of command in current region exceeds the limit of %s.
403 InvalidParameters.ValueTypeUnsupported The type of the value in the parameter Parameters is not supported. 不支援參數 Parameters 中值的類型。
403 IdempotentParameterMismatch The specified parameter has changed while using an already used clientToken. 指定的客戶令牌已經被使用。
403 IdempotentProcessing The previous idempotent request(s) is still processing. 先前的冪等請求仍在處理中,請稍後重試。
404 InvalidInvokeId.NotFound The specified parameter InvokeId does not exist. 指定的命令執行 ID 不存在。
404 InvalidInstanceId.NotFound The specified parameter InstanceId does not exist. 指定的執行個體 ID 無效。
404 InvalidRegionId.NotFound The specified parameter RegionId does not exist. 地域資訊錯誤。
404 InvalidCommandId.NotFound The specified CommandId does not exist.

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情