Nom du modèle
ACS-ECS-CloneInstancesAcrossAZ : clone une ou plusieurs instances ECS vers une autre zone de disponibilité au sein de la même région.
Description
Clone une ou plusieurs instances ECS vers une autre zone de disponibilité au sein de la même région.
Type de modèle
Automatisation
Propriétaire
Alibaba Cloud
Paramètres d'entrée
|**Paramètre**
|
**Description**
|
**Type**
|
**Obligatoire**
|
**Valeur par défaut**
|
**Contraintes**
| | --- | --- | --- | --- | --- | --- | |
targets
|
Instances cibles.
|
Json
|
Oui
| | | |
targetSecurityGroupId
|
ID du groupe de sécurité des nouvelles instances.
|
String
|
Oui
| | | |
targetVSwitchId
|
ID du vSwitch des nouvelles instances. Détermine la zone de disponibilité de destination.
|
String
|
Oui
| | | |
targetTags
|
Tags à ajouter aux nouvelles instances.
|
Json
|
Oui
| | | |
regionId
|
ID de la région.
|
String
|
Non
|
{{ ACS::RegionId }}
| | |
targetResourceGroupId
|
ID du groupe de ressources des nouvelles instances.
|
String
|
Non
| | | |
targetInstanceType
|
Type d'instance des nouvelles instances.
|
String
|
Non
| | | |
targetInstanceChargeType
|
Méthode de facturation des nouvelles instances.
|
String
|
Non
|
PostPaid
| | |
targetPeriodUnit
|
Unité de durée de l'abonnement. Requis uniquement si la méthode de facturation est l'abonnement (`PrePaid`).
|
String
|
Non
| | | |
targetPeriod
|
Durée de l'abonnement. Requis uniquement si la méthode de facturation est l'abonnement (`PrePaid`).
|
Number
|
Non
|
1
| | |
targetDeploymentSetId
|
ID du déploiement des nouvelles instances.
|
String
|
Non
| | | |
targetInstanceName
|
Nom des nouvelles instances.
|
String
|
Non
| | | |
targetHostName
|
Nom d'hôte des nouvelles instances.
|
String
|
Non
| | | |
rateControl
|
Concurrence et tolérance aux erreurs pour la tâche en boucle.
|
Json
|
Non
|
{'Mode': 'Concurrency', 'MaxErrors': 0, 'Concurrency': 10}
| | |
OOSAssumeRole
|
Rôle RAM assumé par le service CloudOps Orchestration Service (OOS).
|
String
|
Non
|
""
| |
Paramètres de sortie
|**Paramètre**
|
**Description**
|
**Type**
| | --- | --- | --- | |
instanceIds
|
ID des nouvelles instances.
|
List
|
Autorisations requises
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:CreateImage",
"ecs:DeleteImage",
"ecs:DescribeAvailableResource",
"ecs:DescribeDisks",
"ecs:DescribeImages",
"ecs:DescribeInstances",
"ecs:DescribeVSwitches",
"ecs:RunInstances"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"oos:GetApplicationGroup"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
Détails
Détails de ACS-ECS-CloneInstancesAcrossAZ
Contenu du modèle
FormatVersion: OOS-2019-06-01
Description:
en: Clones one or more ECS instances to a different availability zone within the same region.
zh-cn: 跨可用区批量克隆ECS实例
name-en: ACS-ECS-CloneInstancesAcrossAZ
name-zh-cn: 跨可用区批量克隆ECS实例
categories:
- cross_region
Parameters:
regionId:
Type: String
Label:
en: Region ID
zh-cn: 地域ID
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
targets:
Label:
en: Target instances
zh-cn: 目标实例
Type: Json
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: 'ALIYUN::ECS::Instance'
RegionId: regionId
targetSecurityGroupId:
Label:
en: Target security group ID
zh-cn: 新实例的安全组ID
Type: String
AssociationProperty: 'ALIYUN::ECS::SecurityGroup::SecurityGroupId'
AssociationPropertyMetadata:
RegionId: regionId
Filters:
- SecurityGroupId: targetSecurityGroupId
targetVSwitchId:
Label:
en: Target vSwitch ID
zh-cn: 新实例的交换机ID,填写本参数时将会决定目的可用区
Type: String
AssociationProperty: 'ALIYUN::VPC::VSwitch::VSwitchId'
AssociationPropertyMetadata:
RegionId: regionId
Filters:
- SecurityGroupId: targetSecurityGroupId
targetResourceGroupId:
Label:
en: Target resource group ID
zh-cn: 新实例将加入的目的资源组ID
Type: String
Default: ' '
targetInstanceType:
Label:
en: Target instance type
zh-cn: 新实例的规格
Type: String
AssociationProperty: 'ALIYUN::ECS::Instance::InstanceType'
AssociationPropertyMetadata:
RegionId: regionId
Default: ' '
targetTags:
Label:
en: Target tags
zh-cn: 新实例的标签
Type: Json
AssociationProperty: Tags
AssociationPropertyMetadata:
ShowSystem: false
targetInstanceChargeType:
Label:
en: Billing method
zh-cn: 新实例的付费模式,默认按量付费
Type: String
AllowedValues:
- PrePaid
- PostPaid
Default: PostPaid
targetPeriodUnit:
Label:
en: Subscription duration unit
zh-cn: 当新实例的付费方式选择包年包月时,请在此处选择时长单位,默认单位是月
Type: String
AllowedValues:
- Week
- Month
- ' '
Default: ' '
targetPeriod:
Label:
en: Subscription duration
zh-cn: 当新实例的付费方式选择包年包月时,请在此处填写时长数,默认值为1
Type: Number
Default: 1
targetDeploymentSetId:
Label:
en: Target deployment set ID
zh-cn: 新实例的部署集ID
Type: String
Default: ' '
targetInstanceName:
Label:
en: Instance name
zh-cn: 新实例的名称
Type: String
Default: ' '
targetHostName:
Label:
en: Hostname
zh-cn: 新实例的主机名称
Type: String
Default: ' '
rateControl:
Label:
en: Rate control
zh-cn: 循环任务执行的并发率及容错数
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Label:
en: OOS assume role
zh-cn: OOS扮演的RAM角色
Type: String
Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Gets the target ECS instances.
zh-cn: 获取ECS实例
Action: 'ACS::SelectTargets'
Properties:
RegionId: '{{regionId}}'
ResourceType: 'ALIYUN::ECS::Instance'
Filters:
- '{{ targets }}'
Outputs:
instanceIds:
Type: List
ValueSelector: 'Instances.Instance[].InstanceId'
- Name: cloneInstancesAcrossAZ
Action: 'ACS::Template'
Description:
en: Clones the instances.
zh-cn: 克隆实例
Properties:
TemplateName: 'ACS::ECS::CloneInstanceAcrossAZ'
Parameters:
imageName: 'img-{{ ACS::TaskLoopItem }}-{{ACS::ExecutionId}}'
instanceId: '{{ ACS::TaskLoopItem }}'
targetSecurityGroupId: '{{ targetSecurityGroupId }}'
targetResourceGroupId: '{{ targetResourceGroupId }}'
targetVSwitchId: '{{ targetVSwitchId }}'
regionId: '{{ regionId }}'
targetInstanceName: '{{ targetInstanceName }}'
targetInstanceChargeType: '{{ targetInstanceChargeType }}'
targetPeriodUnit: '{{ targetPeriodUnit }}'
targetPeriod: '{{ targetPeriod }}'
targetInstanceType: '{{ targetInstanceType }}'
targetHostName: '{{ targetHostName }}'
targetDeploymentSetId: '{{ targetDeploymentSetId }}'
tags: '{{ targetTags }}'
OOSAssumeRole: '{{OOSAssumeRole}}'
Loop:
Items: '{{ getInstance.instanceIds }}'
RateControl: '{{ rateControl }}'
Outputs:
instanceIds:
AggregateType: 'Fn::ListJoin'
AggregateField: instanceId
Outputs:
instanceId:
ValueSelector: instanceId
Type: String
Outputs:
instanceIds:
Value: '{{ cloneInstancesAcrossAZ.instanceIds }}'
Type: List
Metadata:
ALIYUN::OOS::Interface:
ParameterGroups:
- Parameters:
- targetSecurityGroupId
- targetVSwitchId
- targetInstanceType
- targetTags
- targetInstanceChargeType
- targetPeriodUnit
- targetPeriod
- targetResourceGroupId
- targetDeploymentSetId
- targetInstanceName
- targetHostName
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: Advanced options