模板名称
ACS-ECS-BulkyReplaceSystemDisk 批量更换ECS实例的系统盘
模板描述
批量更换ECS实例的系统盘,适用于需要对多台ECS实例进行系统盘替换的场景,例如系统升级和故障恢复等。在配置过程中,用户需要提供以下必填参数信息:地域ID(regionId):用于指定更换系统盘的ECS实例所在的区域,镜像ID(imageId):用于指定更换系统盘时使用的镜像,目标实例(targets):用于定义具体需要操作的ECS实例。模板在执行后会返回新系统盘的ID列表,方便用户验证系统盘替换的状态。
模板类型
自动化
所有者
Alibaba Cloud
输入参数
参数名称 | 描述 | 类型 | 是否必填 | 默认值 | 约束 |
imageId | 镜像ID | String | 是 | ||
targets | 目标实例 | Json | 是 | ||
regionId | 地域ID | String | 否 | {{ ACS::RegionId }} | |
password | 实例的用户名密码 | String | 否 | “” | |
keyPairName | 密钥对名称 | String | 否 | “” | |
rateControl | 任务执行的并发比率 | Json | 否 | {‘Mode’: ‘Concurrency’, ‘MaxErrors’: 0, ‘Concurrency’: 10} | |
OOSAssumeRole | OOS扮演的RAM角色 | String | 否 | “” |
输出参数
参数名称 | 描述 | 类型 |
newSystemDiskIds | String |
执行此模板需要的权限策略
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:DescribeDisks",
"ecs:DescribeInstances",
"ecs:ReplaceSystemDisk",
"ecs:StartInstance",
"ecs:StopInstance"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
详情
ACS-ECS-BulkyReplaceSystemDisk详情
模板内容
FormatVersion: OOS-2019-06-01
Description:
en: 'Bulky replace the system disks of ECS instances, applicable to scenarios that require system disk replacement on multiple ECS instances, such as system upgrades and fault recovery. During configuration, users need to provide the following required parameter information: Region ID (regionId), which specifies the region of the ECS instances where the system disks will be replaced, Image ID (imageId), which specifies the image to use for the system disk replacement, and Target Instances (targets), which defines the specific ECS instances to be operated on. Upon execution, the template provides the IDs of the new system disks, enabling users to verify the status of the system disk replacements.'
zh-cn: 批量更换ECS实例的系统盘,适用于需要对多台ECS实例进行系统盘替换的场景,例如系统升级和故障恢复等。在配置过程中,用户需要提供以下必填参数信息:地域ID(regionId):用于指定更换系统盘的ECS实例所在的区域,镜像ID(imageId):用于指定更换系统盘时使用的镜像,目标实例(targets):用于定义具体需要操作的ECS实例。模板在执行后会返回新系统盘的ID列表,方便用户验证系统盘替换的状态。
name-en: ACS-ECS-BulkyReplaceSystemDisk
name-zh-cn: 批量更换ECS实例的系统盘
categories:
- instance_manage
- application_management
Parameters:
regionId:
Type: String
Label:
en: RegionId
zh-cn: 地域ID
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
imageId:
Label:
en: ImageId
zh-cn: 镜像ID
Description:
en: <div style="color:#F00">If the system disk capacity of the image you select is larger than the original system disk capacity, the system disk will be automatically expanded, which may incur additional costs. </div>
zh-cn: <div style="color:#F00">如果您选择的镜像的系统盘容量大于原系统盘容量,会自动对系统盘进行扩容,可能会产生额外费用。</div>
Type: String
AssociationProperty: 'ALIYUN::ECS::Image::ImageId'
AssociationPropertyMetadata:
RegionId: regionId
password:
Label:
en: Password
zh-cn: 实例的用户名密码
Type: String
Default: ''
keyPairName:
Label:
en: KeyPairName
zh-cn: 密钥对名称
Type: String
Default: ''
targets:
Type: Json
Label:
en: TargetInstance
zh-cn: 目标实例
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: 'ALIYUN::ECS::Instance'
RegionId: regionId
rateControl:
Label:
en: RateControl
zh-cn: 任务执行的并发比率
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Label:
en: OOSAssumeRole
zh-cn: OOS扮演的RAM角色
Type: String
Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Views the ECS instances
zh-cn: 获取ECS实例
Action: 'ACS::SelectTargets'
Properties:
ResourceType: 'ALIYUN::ECS::Instance'
RegionId: '{{ regionId }}'
Filters:
- '{{ targets }}'
Outputs:
instanceIds:
Type: List
ValueSelector: 'Instances.Instance[].InstanceId'
- Name: replaceSystemDisk
Action: 'ACS::ECS::ReplaceSystemDisk'
Description:
en: Replaces the system disk of ECS instances
zh-cn: 更换系统盘
Properties:
regionId: '{{ regionId }}'
instanceId: '{{ ACS::TaskLoopItem }}'
imageId: '{{ imageId }}'
keyPairName: '{{ keyPairName }}'
password: '{{ password }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ getInstance.instanceIds }}'
Outputs:
newSystemDiskIds:
AggregateType: 'Fn::ListJoin'
AggregateField: newSystemDiskId
Outputs:
newSystemDiskId:
Type: String
ValueSelector: newSystemDiskId
Outputs:
newSystemDiskIds:
Type: String
Value: '{{ replaceSystemDisk.newSystemDiskIds }}'
Metadata:
ALIYUN::OOS::Interface:
ParameterGroups:
- Parameters:
- imageId
- password
- keyPairName
Label:
default:
zh-cn: 设置参数
en: Configure Parameters
- Parameters:
- regionId
- targets
Label:
default:
zh-cn: 选择实例
en: Select ECS Instances
- Parameters:
- rateControl
- OOSAssumeRole
Label:
default:
zh-cn: 高级选项
en: Control Options