全部產品
Search
文件中心

Resource Orchestration Service:如何在大量建立ECS時指定不同的執行個體名和主機名稱

更新時間:Aug 24, 2023

資源類型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。
重要 即使是通過上述方式指定執行個體名稱和主機名稱,最終解析出來的名字必須符合InstanceNameHostName的定義規則。如果不符合規則,模板會驗證失敗。