日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

ALIYUN::ECS::Instance

ALIYUN::ECS::Instance類型用于創建ECS實例。

語法

{
  "Type": "ALIYUN::ECS::Instance",
  "Properties": {
    "DedicatedHostId": String,
    "Period": Number,
    "AutoRenew": String,
    "RamRoleName": String,
    "IoOptimized": String,
    "InternetChargeType": String,
    "PrivateIpAddress": String,
    "KeyPairName": String,
    "SystemDiskDiskName": String,
    "PeriodUnit": String,
    "Description": String,
    "Tags": List,
    "HostName": String,
    "AutoRenewPeriod": Number,
    "ImageId": String,
    "ResourceGroupId": String,
    "InstanceChargeType": String,
    "VSwitchId": String,
    "Password": String,
    "PasswordInherit": Boolean,
    "InstanceType": String,
    "SystemDiskCategory": String,
    "UserData": String,
    "SystemDiskSize": Number,
    "ZoneId": String,
    "InternetMaxBandwidthOut": Integer,
    "VpcId": String,
    "SpotStrategy": String,
    "InstanceName": String,
    "DeletionProtection": Boolean,
    "DeploymentSetId": String,
    "SecurityGroupIds": List,
    "SecurityGroupId": String,
    "SecurityEnhancementStrategy": String,
    "SpotPriceLimit": String,
    "HpcClusterId": String,
    "AllocatePublicIP": Boolean,
    "SystemDiskDescription": String,
    "SystemDiskPerformanceLevel": String,
    "DiskMappings": List,
    "SpotInterruptionBehavior": String,
    "ZoneIds": List,
    "SpotDuration": Integer,
    "CreditSpecification": String,
    "PrivatePoolOptions": Map,
    "StorageSetId": String,
    "HttpTokens": String,
    "HttpEndpoint": String,
    "Tenancy": String,
    "StorageSetPartitionNumber": Integer,
    "DeploymentSetGroupNo": Integer,
    "Affinity": String,
    "UseAdditionalService": Boolean,
    "ImageFamily": String
  }
}

屬性

屬性名稱

類型

必須

允許更新

描述

約束

ResourceGroupId

String

資源組ID。

SpotInterruptionBehavior

String

搶占實例中斷模式。

目前僅支持Terminate(默認)直接釋放實例。

ZoneIds

List

可用區列表。

僅在控制臺選取參數時生效。

SpotDuration

Integer

搶占式實例的保留時長。

取值范圍:0~6。

單位:小時。

  • 取值為0,則為無保護期模式。

  • 保留時長2~6正在邀測中,如需開通請提交工單。

  • 默認值為1。

SecurityGroupIds

List

安全組ID列表。

SecurityGroupId和SecurityGroupIds僅能指定其中一個。

ImageId

String

鏡像ID。包括公共鏡像、自定義鏡像和云市場鏡像。

支持通過模糊的方式指定公共鏡像ID,無需指定一個完整的公共鏡像ID。例如:

  • 指定ubuntu,最終會匹配ubuntu16_0402_64_20G_alibase_20170818.vhd。

  • 指定ubuntu_14,最終會匹配ubuntu_14_0405_64_20G_alibase_20170824.vhd。

  • 指定ubuntu*14*32,最終會匹配ubuntu_14_0405_32_40G_alibase_20170711.vhd。

  • 指定ubuntu_16_0402_32,最終會匹配ubuntu_16_0402_32_40G_alibase_20170711.vhd。

InstanceType

String

ECS實例規格。

關于ECS實例規格的更多信息,請參見實例規格族

SecurityGroupId

String

安全組ID。

SecurityGroupId和SecurityGroupIds僅能指定其中一個。

SecurityEnhancementStrategy

String

是否開啟安全加固。

取值:

  • Active:啟用安全加固,只對公共鏡像生效。

  • Deactive(默認值):不啟用安全加固,對所有鏡像類型生效。

Description

String

描述信息。

長度為2~256個字符。

InstanceName

String

實例名稱。

長度為2~128個字符。必須以英文字母或漢字開頭,不能以http://https://開頭。可包含數字、半角冒號(:)、下劃線(_)或短劃線(-)。

如果沒有指定該屬性,默認值為實例的InstanceId。

Password

String

ECS實例登錄密碼。

長度為8~30個字符。必須同時包含大寫英文字母、小寫英文字母、數字和特殊字符中至少三種,支持特殊字符:( ) ' ~ ! @ # $ % ^ & * - + = | { } [ ] : ; < > , . ? / -。如果指定該屬性,請使用HTTPS協議調用API,以避免密碼泄露。

PasswordInherit

Boolean

是否使用鏡像預設的密碼。

取值:

  • true:使用。

  • false(默認值):不使用。

說明

使用該屬性時,Password必須為空,同時您需要確保使用的鏡像已經設置了密碼。

HostName

String

云服務器的主機名。

最小長度為2個字符。半角句號(.)和短劃線(-)不能作為主機名的首尾字符,且不能連續使用。

  • Windows平臺最大長度為15個字符,支持英文字母、數字或短劃線(-)。不支持半角句號(.),不能全是數字。

  • 其它(Linux等)平臺最大長度為30個字符,以半角句號(.)間隔,每段可以由英文字母、數字和短劃線(-)組成。

AllocatePublicIP

Boolean

是否分配公網IP。

取值:

  • true(默認值):分配公網IP。

  • false:不分配公網IP。

說明

如果InternetMaxBandwidthOut取值大于0,則會分配公網IP。

PrivateIpAddress

String

在專有網絡環境下,指定的內網IP。

IP地址不能與專有網絡下的其它實例重復。

InternetChargeType

String

訪問公網計費方式。

取值:

  • PayByBandwidth:按固定帶寬計費。

  • PayByTraffic(默認值):按流量計費。

InternetMaxBandwidthOut

Integer

公網出帶寬最大值。

取值范圍:0~100。

默認值:0。

單位:Mbps。

IoOptimized

String

是否創建I/O優化實例。

取值:

  • none:不創建I/O優化實例。

  • optimized(默認值):創建I/O優化實例。

DiskMappings

List

需要掛載的數據盤。

最多支持16塊數據盤。

更多信息,請參見DiskMappings語法DiskMappings屬性

SystemDiskCategory

String

系統盤類型。

取值:

  • cloud:普通云盤。

  • cloud_ssd:SSD云盤。

  • cloud_efficiency:高效云盤。

  • cloud_essd:ESSD云盤。

  • ephemeral_ssd:本地SSD盤。

已停售的實例規格且非I/O優化實例默認值為cloud,否則默認值為cloud_efficiency。

SystemDiskDescription

String

系統盤描述信息。

SystemDiskDiskName

String

系統盤名稱。

長度為2~128個字符。必須以英文字母或漢字開頭,不能以http://https://開頭。可包含數字、半角冒號(:)、下劃線(_)和短劃線(-)。

SystemDiskSize

Number

系統盤大小。

取值范圍:20~500。

單位:GB。

如果使用自定義鏡像創建系統盤,需要保證系統盤大于自定義鏡像大小。

Tags

List

用戶自定義標簽。

最多支持20個標簽,格式:[{"Key": "tagKey", "Value": "tagValue"},{"Key": "tagKey2", "Value": "tagValue2"}]

更多信息,請參見Tags語法Tags屬性

UserData

String

創建ECS實例時傳遞的用戶數據。

內容需要限制在16 KB以內,不需要使用Base64轉碼,特殊字符需要使用反斜線(\)轉義。

ZoneId

String

可用區ID。

HpcClusterId

String

實例所屬的HPC集群ID。

VpcId

String

專有網絡ID。

VSwitchId

String

交換機ID。

InstanceChargeType

String

ECS實例付費類型。

取值:

  • PrePaid:預付費。如果指定PrePaid,則必須確保余額充足,否則會導致實例創建失敗。

  • PostPaid(默認值):按量付費。

Period

Number

付費周期。

當InstanceChargeType取值為PrePaid時,Period為必選屬性;當InstanceChargeType取值為PostPaid時,Period為可選屬性。

KeyPairName

String

ECS實例綁定的密鑰對名稱。

當實例類型為Windows時,請忽略該屬性;當實例類型為Linux時,密碼登錄方式會被初始化為禁止。為提高實例安全性,建議您使用密鑰對的連接方式。

RamRoleName

String

實例RAM角色名稱。

更多信息,請參見CreateRoleListRoles

SpotPriceLimit

String

實例的每小時最高價格。

支持最多3位小數。當SpotStrategy取值為SpotWithPriceLimit時,該屬性生效。

SpotStrategy

String

按量付費實例的競價策略。

當InstanceChargeType取值為PostPaid時,SpotStrategy為必選屬性。

取值:

  • NoSpot(默認值):正常按量付費實例。

  • SpotWithPriceLimit:上限價格的競價實例。

  • SpotAsPriceGo:系統自動出價,最高不超過按量付費價格。

DedicatedHostId

String

ECS實例創建指定專有宿主機上。

您可以通過調用DescribeDedicatedHosts接口查詢專有宿主機ID列表

。由于專有宿主機不支持創建搶占式實例,指定DedicatedHostId后,請求中的SpotStrategy和SpotPriceLimit設置將被自動忽略。

PeriodUnit

String

購買資源的時長。

取值:

  • Week:周。

  • Month(默認值):月。

AutoRenewPeriod

Number

每次自動續費的時長。

當AutoRenew取值為True時,AutoRenewPeriod為必選屬性。

取值:

  • 當PeriodUnit為Week時,AutoRenewPeriod取值為1、2、3。

  • 當PeriodUnit為Month時,AutoRenewPeriod取值為1、2、3、6、12。

AutoRenew

String

是否自動續費。

取值:

  • True:自動續費。

  • False(默認值):不自動續費。

當InstanceChargeType取值PrePaid時,AutoRenew為必選屬性。

DeletionProtection

Boolean

實例釋放保護屬性,指定是否支持通過控制臺或DeleteInstance接口釋放實例。

取值:

  • true:開啟實例釋放保護。

  • false(默認):關閉實例釋放保護。

說明

該屬性僅適用于按量付費實例,且只能限制手動釋放操作,對系統釋放操作不生效。

DeploymentSetId

String

部署集ID。

SystemDiskPerformanceLevel

String

創建ESSD云盤作為系統盤使用時,設置云盤的性能等級。

取值:

  • PL0:單盤最高隨機讀寫IOPS為1萬。

  • PL1(默認值):單盤最高隨機讀寫IOPS為5萬。

  • PL2:單盤最高隨機讀寫IOPS為10萬。

  • PL3:單盤最高隨機讀寫IOPS為100萬。

關于如何選擇ESSD性能等級,請參見ESSD云盤

CreditSpecification

String

設置突發性能實例的運行模式。

取值:

PrivatePoolOptions

Map

實例啟動的私有池容量選項。

更多信息,請參考PrivatePoolOptions屬性

StorageSetId

String

存儲集ID。

HttpTokens

String

訪問實例元數據時是否強制使用加固模式(IMDSv2)。

取值:

  • optional(默認值):不強制使用。

  • required:強制使用。設置該取值后,普通模式無法訪問實例元數據。

說明

有關訪問實例元數據的模式,請參見實例元數據訪問模式

HttpEndpoint

String

是否啟用實例元數據的訪問通道。

取值范圍:

  • enabled(默認值):啟用。

  • disabled:禁用。

說明

有關實例元數據的信息,請參見ECS實例元數據概述

Tenancy

String

是否在專有宿主機上創建實例。

取值:

  • default(默認值):創建非專有宿主機實例。

  • host:創建專有宿主機實例。若您不指定DedicatedHostId,則由阿里云自動選擇專有宿主機放置實例。

StorageSetPartitionNumber

Integer

存儲集中的最大分區數量。

取值范圍:大于等于2。

DeploymentSetGroupNo

Integer

如果您設置的部署集對應的策略為部署集組高可用策略(AvailabilityGroup),可以通過該參數指定實例在部署集中的分組號。

取值范圍:1~7。

Affinity

String

專有宿主機實例是否與專有宿主機關聯。

取值:

  • default(默認值):實例不與專有宿主機關聯。已啟用節省停機模式的實例,停機后再次啟動時,若原專有宿主機可用資源不足,則實例被放置在自動部署資源池的其他專有宿主機上。

  • host:實例與專有宿主機關聯。已啟用節省停機模式的實例,停機后再次啟動時,仍放置在原專有宿主機上。若原專有宿主機可用資源不足,則實例重啟失敗。

UseAdditionalService

Boolean

是否使用阿里云提供的虛擬機系統配置(Windows:NTP、KMS;Linux:NTP、YUM)。

取值:

  • true

  • false

ImageFamily

String

鏡像族系名稱。

通過設置該參數來獲取當前鏡像族系內最新可用鏡像來創建實例。

  • 設置了參數ImageId,則不能設置該參數。

  • 未設置參數ImageId,但指定的LaunchTemplateIdLaunchTemplateName對應的啟動模板設置了ImageId,則不能設置該參數。

  • 未設置ImageId,且指定的LaunchTemplateIdLaunchTemplateName對應的啟動模板未設置ImageId,則可以設置該參數。

  • 未設置ImageId,且未設置LaunchTemplateIdLaunchTemplateName參數,則可以設置該參數。

說明

阿里云官方鏡像關聯的鏡像族系信息請參見公共鏡像概述

DiskMappings語法

"DiskMappings": [
  {
    "Category": String,
    "DiskName": String,
    "Description": String,
    "Device": String,
    "SnapshotId": String,
    "PerformanceLevel": String,
    "Size": String
  }
]

DiskMappings屬性

屬性名稱

類型

必須

允許更新

描述

約束

Size

String

數據盤大小。

取值范圍:20~500。

單位:GB。

Category

String

數據盤類型。

取值:

  • cloud:普通云盤。

  • cloud_ssd:SSD云盤。

  • cloud_essd:ESSD云盤。

  • cloud_efficiency:高效云盤。

  • ephemeral_ssd:本地SSD盤。

I/O優化實例的默認值為cloud_efficiency,非I/O優化實例的默認值為cloud。

如果自定義鏡像已包含了一個數據盤,那么創建ECS實例時,若要在ROS模板中指定數據盤類型,可以將Category指定為需要的數據盤類型。例如:

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Resources": {
    "Instance": {
      "Type": "ALIYUN::ECS::Instance",
      "Properties": {
        "InstanceName": "rostest",
        "ImageId": "m-2ze5ysugu8ss7nxr****",
        "InstanceType": "ecs.g6e.large",
        "Password": "Ros1****",
        "IoOptimized": "optimized",
        "VSwitchId": "vsw-2zej7phc6euuelo8l****",
        "VpcId": "vpc-2zebbi27bn7w42n30****",
        "SecurityGroupId": "sg-2ze5bdyyg7sfrcv6****",
        "SystemDiskCategory": "cloud_essd",
        "DiskMappings": [
          {
            "Category": "cloud_essd",
            "Size": 40,
            "Device": "/dev/xvdb"
          }
        ]
      }
    }
  }
}
                                

DiskName

String

數據盤名稱。

長度為2~128個字符。必須以英文字母或漢字開頭,不能以http://https://開頭。可包含英文字母、漢字、數字、下劃線(_)、半角冒號(:)和短劃線(-)。

Description

String

描述信息。

長度為2~256個字符,不能以http://https://開頭。

Device

String

掛載點。

PerformanceLevel

String

創建ESSD云盤作為數據盤使用時,設置云盤的性能等級。

取值:

  • PL1(默認值):單盤最高隨機讀寫IOPS為5萬。

  • PL2:單盤最高隨機讀寫IOPS為10萬。

  • PL3:單盤最高隨機讀寫IOPS為100萬。

關于如何選擇ESSD性能等級,請參見ESSD云盤

SnapshotId

String

數據盤使用的快照ID。

Tags語法

"Tags": [
  {
    "Value": String,
    "Key": String
  }
]

Tags屬性

屬性名稱

類型

必須

允許更新

描述

約束

Key

String

標簽鍵。

長度為1~128個字符,不能以aliyunacs:開頭,不能包含http://https://

Value

String

標簽值。

長度為0~128個字符,不能以aliyunacs:開頭,不能包含http://https://

PrivatePoolOptions語法

"PrivatePoolOptions": [
  {
    "Id": String,
    "MatchCriteria": String
  }
]

PrivatePoolOptions屬性

屬性名稱

類型

必須

允許更新

描述

約束

Id

String

私有池ID。即彈性保障服務ID或容量預定服務ID。

MatchCriteria

String

彈性保障服務或容量預定服務在生效后會生成私有池容量,供實例啟動時選擇。

取值:

  • Open:開放模式。將自動匹配開放類型的私有池容量。如果沒有符合條件的私有池容量,則使用公共池資源啟動。該模式下無需設置PrivatePoolOptions.Id參數。

  • Target:指定模式。使用指定的私有池容量啟動實例,如果該私有池容量不可用,則實例會啟動失敗。該模式下必須指定私有池ID,即PrivatePoolOptions.Id參數為必填項。

  • None(默認值):不使用模式。實例啟動將不使用私有池容量。

以下任一場景,實例啟動的私有池容量選項只能取值None或不傳值。

  • 創建搶占式實例。

  • 創建經典網絡類型的ECS實例。

  • 在專有宿主機DDH上創建ECS實例。

返回值

Fn::GetAtt

  • InstanceId:實例ID。由系統生成,實例的全局唯一標識。

  • PrivateIp:VPC類型實例的私網IP地址。

  • InnerIp:Classic類型實例的內網IP地址。

  • PublicIp:Classic類型實例的公網IP地址。

  • ZoneId:可用區ID。

  • HostName:云服務器的主機名。

  • PrimaryNetworkInterfaceId:主網卡ID。

  • SecurityGroupIds:已創建實例的安全組ID列表。

示例

創建兩臺ECS實例(OpsEcsInstance、ProdEcsInstance),并為ProdEcsInstance實例完成OpsEcsInstance免密登錄操作。

如果您需要對ECS實例的Userdata腳本執行結果進行消息通知。更多信息,請參見ALIYUN::ROS::WaitConditionHandleALIYUN::ROS::WaitCondition

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Description: Creates VPC ECS instance
    Metadata: {}
    Parameters:
      VpcId:
        AssociationProperty: ALIYUN::ECS::VPC::VPCId
        Type: String
        Description:
          en: Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud
          zh-cn: 現有專有網絡的實例ID
        Label:
          en: VPC ID
          zh-cn: 專有網絡VPC實例ID
      VSwitchZoneId:
        AssociationProperty: ALIYUN::ECS::Instance:ZoneId
        Type: String
        Description:
          zh-cn: 可用區ID。<br><b>注: <font color='blue'>選擇前請確認該可用區是否支持創建ECS資源的規格,建議與其他交換機可用區不同</font></b>
          en: Availability Zone ID.<br><b>note:<font color='blue'>before selecting, please confirm that the Availability Zone supports the specification of creating ECS resources,which is recommended to be different from other VSwitch Availability Zone</font></b>
        Label:
          zh-cn: 交換機可用區
          en: VSwitch Availability Zone
      VSwitchId:
        AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
        AssociationPropertyMetadata:
          VpcId: ${VpcId}
          ZoneId: ${VSwitchZoneId}
        Type: String
        Description:
          en: Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query
          zh-cn: 現有業務網絡交換機的實例ID
        Label:
          en: VSwitch ID
          zh-cn: 交換機實例ID
      SecurityGroupId:
        Type: String
        AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
        AssociationPropertyMetadata:
          VpcId: ${VpcId}
        Description:
          en: Please search the business security group ID starting with(sg-xxx)from console-ECS-Network & Security
          zh-cn: 現有業務安全組的實例ID
        Label:
          en: Business Security Group ID
          zh-cn: 業務安全組ID
      InstanceType:
        Type: String
        Description:
          zh-cn: 填寫VSwitch可用區下可使用的規格。
          en: Fill in the specifications that can be used under the VSwitch availability zone.
        Label:
          zh-cn: 實例規格
          en: Instance Type
        AssociationProperty: ALIYUN::ECS::Instance::InstanceType
        AssociationPropertyMetadata:
          ZoneId: ${VSwitchZoneId}
      SystemDiskCategory:
        Type: String
        AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
        AssociationPropertyMetadata:
          ZoneId: ${VSwitchZoneId}
          InstanceType: ${InstanceType}
        Label:
          en: System Disk Type
          zh-cn: 系統盤類型
        Description:
          en: '<font color=''blue''><b>Optional values:</b></font><br>[cloud_efficiency: <font color=''green''>Efficient Cloud Disk</font>]<br>[cloud_ssd: <font color=''green''>SSD Cloud Disk</font>]<br>[cloud_essd: <font color=''green''>ESSD Cloud Disk</font>]<br>[cloud: <font color=''green''>Cloud Disk</font>]<br>[ephemeral_ssd: <font color=''green''>Local SSD Cloud Disk</font>]'
          zh-cn: '<font color=''blue''><b>可選值:</b></font><br>[cloud_efficiency: <font color=''green''>高效云盤</font>]<br>[cloud_ssd: <font color=''green''>SSD云盤</font>]<br>[cloud_essd: <font color=''green''>ESSD云盤</font>]<br>[cloud: <font color=''green''>普通云盤</font>]<br>[ephemeral_ssd: <font color=''green''>本地SSD盤</font>]'
      SystemDiskSize:
        Default: 40
        Type: Number
        Description:
          zh-cn: 系統盤大小, 取值范圍:[40, 500], 單位:GB。
          en: 'System disk size, range of values: 40-500, units: GB.'
        Label:
          zh-cn: 系統盤空間
          en: System Disk Space
    Resources:
      OpsEcsInstance:
        Type: ALIYUN::ECS::Instance
        Properties:
          HostName: OpsEcsInstance
          UserData:
            Fn::Sub:
              - |
                #!/bin/bash
                RootPassword=${RootPassword}
                ProdIP=${ProdIP}
                SSHConfig() {
                echo '[ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh
                echo 'while read line;do' >> /tmp/auto_ssh.sh
                echo '        ip=`echo $line | cut -d " " -f1`' >> /tmp/auto_ssh.sh
                echo '        user_name=`echo $line | cut -d " " -f2`' >> /tmp/auto_ssh.sh
                echo '        pass_word=`echo $line | cut -d " " -f3`' >> /tmp/auto_ssh.sh
                echo 'expect <<EOF' >> /tmp/auto_ssh.sh
                echo '        spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh
                echo '        expect {' >> /tmp/auto_ssh.sh
                echo '                  "yes/no" { send "yes\n";exp_continue}' >> /tmp/auto_ssh.sh
                echo '                  "password" { send "$pass_word\n"}' >> /tmp/auto_ssh.sh
                echo '        }' >> /tmp/auto_ssh.sh
                echo '        expect eof' >> /tmp/auto_ssh.sh
                echo 'EOF' >> /tmp/auto_ssh.sh
                echo 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh
                }
                SetHostsConfig() {
                echo "`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}" >> /tmp/host_ip.txt
                echo "${ProdIP} root ${RootPassword}" >> /tmp/host_ip.txt
                sh /tmp/auto_ssh.sh
                }
                main() {
                yum install -y expect
                SSHConfig
                SetHostsConfig
                rm -rf /tmp/host_ip.txt
                }
                main
              - ProdIP:
                  Fn::GetAtt:
                    - ProdEcsInstance
                    - PrivateIp
                RootPassword: Admin@123!
          VpcId:
            Ref: VpcId
          SecurityGroupId:
            Ref: SecurityGroupId
          VSwitchId:
            Ref: VSwitchId
          ImageId: centos_7
          AllocatePublicIP: false
          InstanceType:
            Ref: InstanceType
          SystemDiskSize: 40
          SystemDiskCategory:
            Ref: SystemDiskCategory
          Password: Admin@123!
      ProdEcsInstance:
        Type: ALIYUN::ECS::Instance
        Properties:
          HostName: ProdEcsInstance
          SystemDiskCategory:
            Ref: SystemDiskCategory
          VpcId:
            Ref: VpcId
          SecurityGroupId:
            Ref: SecurityGroupId
          SystemDiskSize: 40
          ImageId: centos_7
          VSwitchId:
            Ref: VSwitchId
          Password: Admin@123!
          InstanceType:
            Ref: InstanceType
          AllocatePublicIP: false
    Outputs: {}                    
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Description": "Creates VPC ECS instance",
      "Metadata": {},
      "Parameters": {
        "VpcId": {
          "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
          "Type": "String",
          "Description": {
            "en": "Please search the ID starting with (vpc-xxx) from console-Virtual Private Cloud",
            "zh-cn": "現有專有網絡的實例ID"
          },
          "Label": {
            "en": "VPC ID",
            "zh-cn": "專有網絡VPC實例ID"
          }
        },
        "VSwitchZoneId": {
          "AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
          "Type": "String",
          "Description": {
            "zh-cn": "可用區ID。<br><b>注: <font color='blue'>選擇前請確認該可用區是否支持創建ECS資源的規格,建議與其他交換機可用區不同</font></b>",
            "en": "Availability Zone ID.<br><b>note:<font color='blue'>before selecting, please confirm that the Availability Zone supports the specification of creating ECS resources,which is recommended to be different from other VSwitch Availability Zone</font></b>"
          },
          "Label": {
            "zh-cn": "交換機可用區",
            "en": "VSwitch Availability Zone"
          }
        },
        "VSwitchId": {
          "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
          "AssociationPropertyMetadata": {
            "VpcId": "${VpcId}",
            "ZoneId": "${VSwitchZoneId}"
          },
          "Type": "String",
          "Description": {
            "en": "Instance ID of existing business network switches, console-Virtual Private Cloud-VSwitches under query",
            "zh-cn": "現有業務網絡交換機的實例ID"
          },
          "Label": {
            "en": "VSwitch ID",
            "zh-cn": "交換機實例ID"
          }
        },
        "SecurityGroupId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
          "AssociationPropertyMetadata": {
            "VpcId": "${VpcId}"
          },
          "Description": {
            "en": "Please search the business security group ID starting with(sg-xxx)from console-ECS-Network & Security",
            "zh-cn": "現有業務安全組的實例ID"
          },
          "Label": {
            "en": "Business Security Group ID",
            "zh-cn": "業務安全組ID"
          }
        },
        "InstanceType": {
          "Type": "String",
          "Description": {
            "zh-cn": "填寫VSwitch可用區下可使用的規格。",
            "en": "Fill in the specifications that can be used under the VSwitch availability zone."
          },
          "Label": {
            "zh-cn": "實例規格",
            "en": "Instance Type"
          },
          "AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
          "AssociationPropertyMetadata": {
            "ZoneId": "${VSwitchZoneId}"
          }
        },
        "SystemDiskCategory": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
          "AssociationPropertyMetadata": {
            "ZoneId": "${VSwitchZoneId}",
            "InstanceType": "${InstanceType}"
          },
          "Label": {
            "en": "System Disk Type",
            "zh-cn": "系統盤類型"
          },
          "Description": {
            "en": "<font color='blue'><b>Optional values:</b></font><br>[cloud_efficiency: <font color='green'>Efficient Cloud Disk</font>]<br>[cloud_ssd: <font color='green'>SSD Cloud Disk</font>]<br>[cloud_essd: <font color='green'>ESSD Cloud Disk</font>]<br>[cloud: <font color='green'>Cloud Disk</font>]<br>[ephemeral_ssd: <font color='green'>Local SSD Cloud Disk</font>]",
            "zh-cn": "<font color='blue'><b>可選值:</b></font><br>[cloud_efficiency: <font color='green'>高效云盤</font>]<br>[cloud_ssd: <font color='green'>SSD云盤</font>]<br>[cloud_essd: <font color='green'>ESSD云盤</font>]<br>[cloud: <font color='green'>普通云盤</font>]<br>[ephemeral_ssd: <font color='green'>本地SSD盤</font>]"
          }
        },
        "SystemDiskSize": {
          "Default": 40,
          "Type": "Number",
          "Description": {
            "zh-cn": "系統盤大小, 取值范圍:[40, 500], 單位:GB。",
            "en": "System disk size, range of values: 40-500, units: GB."
          },
          "Label": {
            "zh-cn": "系統盤空間",
            "en": "System Disk Space"
          }
        }
      },
      "Resources": {
        "OpsEcsInstance": {
          "Type": "ALIYUN::ECS::Instance",
          "Properties": {
            "HostName": "OpsEcsInstance",
            "UserData": {
              "Fn::Sub": [
                "#!/bin/bash\nRootPassword=${RootPassword}\nProdIP=${ProdIP}\nSSHConfig() {\necho '[ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P \"\" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh\necho 'while read line;do' >> /tmp/auto_ssh.sh\necho '        ip=`echo $line | cut -d \" \" -f1`' >> /tmp/auto_ssh.sh\necho '        user_name=`echo $line | cut -d \" \" -f2`' >> /tmp/auto_ssh.sh\necho '        pass_word=`echo $line | cut -d \" \" -f3`' >> /tmp/auto_ssh.sh\necho 'expect <<EOF' >> /tmp/auto_ssh.sh\necho '        spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh\necho '        expect {' >> /tmp/auto_ssh.sh\necho '                  \"yes/no\" { send \"yes\\n\";exp_continue}' >> /tmp/auto_ssh.sh\necho '                  \"password\" { send \"$pass_word\\n\"}' >> /tmp/auto_ssh.sh\necho '        }' >> /tmp/auto_ssh.sh\necho '        expect eof' >> /tmp/auto_ssh.sh\necho 'EOF' >> /tmp/auto_ssh.sh\necho 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh\n}\nSetHostsConfig() {\necho \"`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}\" >> /tmp/host_ip.txt\necho \"${ProdIP} root ${RootPassword}\" >> /tmp/host_ip.txt\nsh /tmp/auto_ssh.sh\n}\nmain() {\nyum install -y expect\nSSHConfig\nSetHostsConfig\nrm -rf /tmp/host_ip.txt\n}\nmain\n",
                {
                  "ProdIP": {
                    "Fn::GetAtt": [
                      "ProdEcsInstance",
                      "PrivateIp"
                    ]
                  },
                  "RootPassword": "Admin@123!"
                }
              ]
            },
            "VpcId": {
              "Ref": "VpcId"
            },
            "SecurityGroupId": {
              "Ref": "SecurityGroupId"
            },
            "VSwitchId": {
              "Ref": "VSwitchId"
            },
            "ImageId": "centos_7",
            "AllocatePublicIP": false,
            "InstanceType": {
              "Ref": "InstanceType"
            },
            "SystemDiskSize": 40,
            "SystemDiskCategory": {
              "Ref": "SystemDiskCategory"
            },
            "Password": "Admin@123!"
          }
        },
        "ProdEcsInstance": {
          "Type": "ALIYUN::ECS::Instance",
          "Properties": {
            "HostName": "ProdEcsInstance",
            "SystemDiskCategory": {
              "Ref": "SystemDiskCategory"
            },
            "VpcId": {
              "Ref": "VpcId"
            },
            "SecurityGroupId": {
              "Ref": "SecurityGroupId"
            },
            "SystemDiskSize": 40,
            "ImageId": "centos_7",
            "VSwitchId": {
              "Ref": "VSwitchId"
            },
            "Password": "Admin@123!",
            "InstanceType": {
              "Ref": "InstanceType"
            },
            "AllocatePublicIP": false
          }
        }
      },
      "Outputs": {}
    }