資源類型ALIYUN::ECS::InstanceGroup用於大量建立ECS執行個體。
建立ECS執行個體時,您可以通過InstanceName和HostName屬性指定執行個體名稱和主機名稱。您可以通過以下方式為每個ECS執行個體設定不同的執行個體名稱和主機名稱。
執行個體名稱或者主機名稱的結構為name_prefix[begin_number,bits]name_suffix。各欄位說明如下:
- name_prefix:指定執行個體名或者主機名稱的首碼。此項為必填項。
- [begin_number,bits]:每一個執行個體名和主機名稱變化的地方。begin_number指定執行個體名和主機名稱從某個數字開始。bits表示每一個數字佔多少位。
該欄位必須滿足以下要求才能被正確解析:
- 整個欄位中不能有空格。
- bits取值範圍為1~4。
- begin_number取值範圍為0~9999。
bits取值規則:
- 如果只指定begin_number,則bits會預設取值4。
- 如果只指定[]或者[,],則begin_number從0開始取值,bits會預設取值4。
- 如果指定的begin_number位元大於bits所指定的位元,例如[1234,1],且begin_number的值(1234)屬於0~9999的範圍,則bits的實際取值為4。
- name_suffix:指定執行個體名或主機名稱的尾碼。此項為選填項。
樣本
ROSTemplateFormatVersion: '2015-09-01'
Resources:
WebServer:
Type: ALIYUN::ECS::InstanceGroup
Properties:
ImageId: Cen****
InstanceType: ecs.n4.large
Password: Test1234
MinAmount: 2
MaxAmount: 2
SecurityGroupId: sg-2zedcm7ep5quses0****
SystemDiskCategory: cloud_efficiency
IoOptimized: optimized
InstanceName: my.test-[1114]
HostName: host[]根據上面的模板,ROS會大量建立兩個ECS執行個體。
- 兩個ECS的執行個體名分別是:my.test-1114和my.test-1115。
- 兩個ECS的主機名稱分別是:host0000和host0001。
重要 即使是通過上述方式指定執行個體名稱和主機名稱,最終解析出來的名字必須符合InstanceName和HostName的定義規則。如果不符合規則,模板會驗證失敗。