ALIYUN::ECS::Invocation類型用于為一臺或多臺ECS實例觸發一條云助手命令。
語法
{
"Type": "ALIYUN::ECS::Invocation",
"Properties": {
"Frequency": String,
"CommandId": String,
"Parameters": Map,
"InstanceIds": List,
"Sync": Boolean,
"CommandName": String,
"WindowsPasswordName": String,
"Timeout": Integer,
"RepeatMode": String,
"ResourceGroupId": String,
"ContainerName": String,
"ContainerId": String,
"Username": String,
"Tags": List
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Frequency | String | 否 | 否 | 周期任務的執行周期。該參數值結構以Cron 表達式為準。 | 無 |
CommandId | String | 否 | 是 | 命令ID。 | 無 |
InstanceIds | List | 是 | 是 | 執行命令的實例列表。 | 最多能指定20臺實例ID。 |
Parameters | Map | 否 | 是 | 啟用自定義參數功能時,執行命令時傳入的自定義參數的鍵值對。示例值: | 自定義參數的取值范圍:0~10。 Map的鍵不允許為空字符串,最多支持64個字符。Map的值允許為空字符串。 自定義參數與原始命令內容在Base64編碼后,綜合長度不能超過16KB。 設置的自定義參數名集合必須為創建命令時定義的參數集的子集。對于未傳入的參數,您可以使用空字符串代替。 |
Sync | Boolean | 否 | 否 | 是否同步調用。 | 取值:
|
CommandName | String | 否 | 否 | 命令名稱。 | 無 |
WindowsPasswordName | String | 否 | 否 | 在Windows實例中執行命令的用戶的密碼名稱。 | 長度不得超過 255 個字符。 當您希望以非默認用戶(System)在Windows實例中執行命令時,需要同時傳入 說明 當您使用Linux實例的root用戶或Windows實例的System用戶執行命令時,不需要傳遞該參數。 |
Timeout | Integer | 否 | 是 | 執行命令的超時時間。 | 單位:秒。
|
RepeatMode | String | 否 | 否 | 設置命令執行的方式。 | 取值范圍:
默認值:
注意事項:
|
ResourceGroupId | String | 否 | 否 | 命令執行的資源組ID。 | 當指定該參數時:
|
ContainerName | String | 否 | 否 | 容器名稱。 | 注意事項:
|
ContainerId | String | 否 | 否 | 容器ID。 | 僅支持 64 位 16 進制字符串。支持使用 注意事項:
|
Username | String | 否 | 否 | 在ECS實例中執行命令的用戶名稱。 | 長度不得超過 255 個字符。
您也可以指定實例中已存在的其他用戶執行命令,以普通用戶執行云助手命令更加安全。更多信息,請參見設置普通用戶執行云助手命令。 |
Tags | List | 否 | 否 | 標簽。 | 最多支持20個標簽,格式: 更多信息,請參見Tags屬性。 |
Tags語法
"Tags": [
{
"Value": String,
"Key": String
}
]
Tags屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Key | String | 是 | 否 | 標簽鍵。 | 長度為1~128個字符,不能以 |
Value | String | 否 | 否 | 標簽值。 | 長度為0~128個字符,不能以 |
返回值
Fn::GetAtt
InvokeId:命令進程執行ID。
InvokeInstances:執行命令的實例列表。
InvokeResults:執行命令的結果。
如果您只需要執行一次性命令,請參見ALIYUN::ECS::RunCommand。
示例
ROSTemplateFormatVersion: '2015-09-01' Parameters: CommandId: Type: String Description: The id of command. InstanceId: Type: String AssociationProperty: ALIYUN::ECS::Instance::InstanceId Resources: Invocation: Type: ALIYUN::ECS::Invocation Properties: CommandId: Ref: CommandId InstanceIds: - Ref: InstanceId Outputs: InvokeId: Description: The id of command execution. Value: Fn::GetAtt: - Invocation - InvokeId
{ "ROSTemplateFormatVersion": "2015-09-01", "Parameters": { "CommandId": { "Type": "String", "Description": "The id of command." }, "InstanceId": { "Type": "String", "AssociationProperty": "ALIYUN::ECS::Instance::InstanceId" } }, "Resources": { "Invocation": { "Type": "ALIYUN::ECS::Invocation", "Properties": { "CommandId": { "Ref": "CommandId" }, "InstanceIds": [ { "Ref": "InstanceId" } ] } } }, "Outputs": { "InvokeId": { "Description": "The id of command execution.", "Value": { "Fn::GetAtt": [ "Invocation", "InvokeId" ] } } } }