ALIYUN::ESS::ScalingConfiguration类型用于为伸缩组创建伸缩配置。
语法
{
"Type": "ALIYUN::ESS::ScalingConfiguration",
"Properties": {
"PasswordInherit": Boolean,
"DiskMappings": List,
"RamRoleName": String,
"IoOptimized": String,
"InternetChargeType": String,
"KeyPairName": String,
"InstanceId": String,
"InstanceTypes": List,
"ImageId": String,
"ResourceGroupId": String,
"SpotStrategy": String,
"InstanceType": String,
"SystemDiskCategory": String,
"SystemDiskSize": Integer,
"SystemDiskAutoSnapshotPolicyId": String,
"SystemDiskPerformanceLevel": String,
"InternetMaxBandwidthOut": Integer,
"InstanceName": String,
"InternetMaxBandwidthIn": Integer,
"ScalingConfigurationName": String,
"UserData": String,
"DeploymentSetId": String,
"SecurityGroupId": String,
"SpotPriceLimit": Number,
"HpcClusterId": String,
"ScalingGroupId": String,
"SpotPriceLimitForInstanceType": Map,
"TagList": List,
"Ipv6AddressCount": Integer,
"LoadBalancerWeight": Integer,
"CreditSpecification": String,
"ImageFamily": String,
"HostName": String,
"Password": String
}
}
属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
ResourceGroupId | String | 否 | 是 | 实例所在的资源组ID。 | 无 |
DeploymentSetId | String | 否 | 否 | 部署集ID。 | 无 |
HpcClusterId | String | 否 | 否 | 实例所属的EHPC集群ID。 | 无 |
ScalingGroupId | String | 是 | 否 | 伸缩配置所属的伸缩组ID。 | 无 |
DiskMappings | List | 否 | 是 | 需要挂载的磁盘。 | 最多支持16块磁盘。 更多信息,请参见DiskMappings属性。 |
InternetChargeType | String | 否 | 是 | 公网访问带宽计费方式。 | 取值:
|
InternetMaxBandwidthIn | Integer | 否 | 否 | 公网最大入网带宽。 | 单位:Mbps。 取值范围:1~200。 如果您没有指定该参数,则入带宽将自动被设置为200 Mbps。实例的入数据流量免费,该参数在任何情况下都不涉及计费。 |
InternetMaxBandwidthOut | Integer | 否 | 是 | 公网最大出网带宽。 | 取值范围:
单位:Mbps。 |
InstanceId | String | 否 | 否 | 伸缩配置的实例ID。 | 无 |
SystemDiskCategory | String | 否 | 是 | 系统盘类型。 | 取值:
当InstanceType为I系列的实例规格且实例属于非I/O优化实例时,默认值为cloud,否则,默认值为cloud_efficiency。 |
ImageId | String | 否 | 是 | 实例的镜像ID,包括公共镜像、自定义镜像和云市场镜像。 | 更多信息,请参见公共镜像概述。 |
InstanceType | String | 否 | 是 | 实例规格。 | 更多信息,请参见实例规格族。 |
SecurityGroupId | String | 否 | 是 | 实例所属的安全组。 | 无 |
IoOptimized | String | 否 | 是 | 是否创建I/O优化实例。 | 取值:
|
ScalingConfigurationName | String | 否 | 是 | 伸缩配置的名称。 | 长度为2~64个字符,以数字、英文字母或汉字开头,可包含数字、英文字母、汉字、下划线(_)、短划线(-)和半角句号(.)。 在同一地域下同一伸缩组内伸缩配置名称唯一。 如果您没有指定本参数,则默认使用伸缩配置的ID。 |
KeyPairName | String | 否 | 是 | 实例绑定的密钥对名称。 |
|
RamRoleName | String | 否 | 是 | 实例RAM角色名称。 | 您可以使用RAM API ListRoles查询实例RAM角色名称。更多信息,请参见CreateRole - 创建角色和ListRoles - 获取角色列表。 |
SystemDiskSize | Integer | 否 | 是 | 系统盘大小。 | 取值范围:20~500。 默认值:40。 单位:GiB。 如果使用自定义镜像创建系统盘,则系统盘大小必须大于等于自定义镜像大小。 |
SystemDiskPerformanceLevel | String | 否 | 是 | 创建ESSD云盘作为系统盘使用时,设置云盘的性能等级。 | 取值:
有关如何选择ESSD性能等级,请参见ESSD云盘。 |
UserData | String | 否 | 是 | 创建实例时传递的用户数据。 | 内容需要限制在16KB以内,无需Base64转码,特殊字符需要使用反斜线(\)转义。 |
InstanceTypes | List | 否 | 是 | 多实例规格参数。 | 如果指定了InstanceTypes,则InstanceType无效。 一个伸缩配置内最多可以设置10种实例规格,优先级按列表元素的顺序依次降低。当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。 |
PasswordInherit | Boolean | 否 | 是 | 是否使用镜像预设的密码。 | 如果使用镜像预设的密码,您需要确保所用镜像已经预设了密码。 |
TagList | List | 否 | 是 | 实例标签。 | 标签以键值对方式传入,最多可以使用5组标签,格式为 更多信息,请参见TagList属性。 |
Ipv6AddressCount | Integer | 否 | 是 | 为弹性网卡指定随机生成的IPv6地址数量。 | 无 |
LoadBalancerWeight | Integer | 否 | 是 | ECS实例作为负载均衡后端服务器时的权重。 | 取值范围:1~100。 默认值:50。 |
CreditSpecification | String | 否 | 是 | 突发性能实例的运行模式。 | 取值:
关于实例性能的更多信息,请参见性能模式。 |
ImageFamily | String | 否 | 是 | 镜像族系名称。 | 通过设置该参数来获取当前镜像族系内最新可用镜像,用于创建实例。如果已经设置了参数ImageId,则不能设置该参数。 |
SpotStrategy | String | 否 | 是 | 后付费实例的抢占策略。 | 取值:
|
InstanceName | String | 否 | 是 | 基于当前伸缩配置创建的实例的名称。 | 无 |
SpotPriceLimit | Number | 否 | 是 | 实例每小时的最高价格。 | 支持最多3位小数。 当SpotStrategy取值为SpotWithPriceLimit时该参数生效,且取值会被SpotPriceLimitForInstanceType的取值所覆盖。 |
SpotPriceLimitForInstanceType | Map | 否 | 是 | 抢占式实例的实例规格和对应的出价。 | 格式: 当SpotStrategy取值为SpotWithPriceLimit时该参数生效。 最多可设置10组实例和价格。 |
SystemDiskAutoSnapshotPolicyId | String | 否 | 是 | 系统盘使用的自动快照策略ID。 | 无 |
HostName | String | 否 | 是 | 云服务器的主机名。 | 半角句号(.)或短划线(-)不能作为首尾字符,不能连续使用半角句号(.)或短划线(-)。 不同类型实例的命名要求如下:
|
Password | String | 否 | 是 | ECS实例的密码。 | 长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:
Windows实例不能以斜线号(/)为密码首字符。 说明 如果传入Password参数,建议您使用HTTPS协议发送请求,避免密码泄露。 |
DiskMappings语法
"DiskMappings": [
{
"Category": String,
"DiskName": String,
"Description": String,
"AutoSnapshotPolicyId": String,
"PerformanceLevel": String,
"Encrypted": String,
"KMSKeyId": String,
"Device": String,
"SnapshotId": String,
"Size": String
}
]
DiskMappings属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Size | String | 否 | 否 | 数据盘磁盘大小。 | 取值:
单位:GB。 指定该参数后,磁盘大小必须大于等于快照大小(快照通过SnapshotId指定)。 |
Category | String | 否 | 否 | 数据盘类型。 | 取值:
对于I/O优化实例,默认值为cloud_efficiency;对于非I/O优化实例,默认值为cloud。 |
DiskName | String | 否 | 否 | 数据盘名称。 | 长度为2~128个字符。 必须以英文字母或汉字开头,不能以 可以包含数字、英文字母、汉字、半角冒号(:)、下划线(_)和短划线(-)。 |
PerformanceLevel | String | 否 | 否 | 创建ESSD云盘作为数据盘使用时,设置云盘的性能等级。 | 取值:
有关如何选择ESSD性能等级,请参见ESSD云盘。 |
Description | String | 否 | 否 | 数据盘描述。 | 长度为2~256个字符。不能以 |
Device | String | 否 | 否 | 数据盘挂载点。 | 如果该参数值未指定,则默认将在自动创建ECS实例时由系统分配,取值从 |
SnapshotId | String | 否 | 否 | 创建数据盘时使用的快照。 | 指定该参数后,Size会被忽略,实际创建的磁盘大小为指定快照的大小。如果快照创建于2013年7月15日或之前,调用快照会被拒绝,返回参数中会提示InvalidSnapshot.TooOld。 |
Encrypted | String | 否 | 否 | 数据盘是否加密。 | 取值:
|
KMSKeyId | String | 否 | 否 | 数据盘对应的KMS密钥ID。 | 无 |
AutoSnapshotPolicyId | String | 否 | 否 | 数据盘使用的自动快照策略ID。 | 无 |
TagList语法
"TagList": [
{
"Key": String,
"Value": String
}
]
TagList属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Key | String | 是 | 否 | 标签键。 | 长度为1~64个字符,不能以 |
Value | String | 否 | 否 | 标签值。 | 长度为0~128个字符,不能以 |
返回值
Fn::GetAtt
ScalingConfigurationId:伸缩配置的ID。由系统生成,全局唯一。
ScalingGroupId:伸缩配置所属的伸缩组ID。
示例
当伸缩组中仅定义了一个伸缩组配置,且伸缩组配置中包含依赖的其他资源,您需要在定义资源模板时为伸缩组设置DependsOn属性,对伸缩组配置依赖的其他资源设置资源依赖关联。
伸缩组ScalingGroup设置DependsOn依赖关系到安全组SecurityGroup,因为伸缩组配置ScalingConfiguration依赖安全组SecurityGroup资源。
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
VSwitchId:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
Type: String
AssociationPropertyMetadata:
VpcId: VpcId
Resources:
ScalingGroupEnable:
Type: ALIYUN::ESS::ScalingGroupEnable
Properties:
ScalingConfigurationId:
Ref: ScalingConfiguration
ScalingGroupId:
Ref: ScalingGroup
ScalingRuleArisExecuteVersion: 0
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
SecurityGroupName:
Ref: ALIYUN::StackName
VpcId:
Ref: VpcId
SecurityGroupIngress:
- PortRange: '-1/-1'
Priority: 1
SourceCidrIp: 0.0.X.X/0
IpProtocol: all
NicType: internet
SecurityGroupEgress:
- PortRange: '-1/-1'
Priority: 1
IpProtocol: all
DestCidrIp: 0.0.X.X/0
NicType: internet
- PortRange: '-1/-1'
Priority: 1
IpProtocol: all
DestCidrIp: 0.0.X.X/0
NicType: intranet
ScalingConfiguration:
Type: ALIYUN::ESS::ScalingConfiguration
DependsOn: ScalingGroup
Properties:
InstanceType: ecs.g6e.large
ImageId: centos_7_04_64_20G_alibase_201701015.vhd
SystemDiskCategory: cloud_essd
SystemDiskSize: 100
ScalingConfigurationName:
Ref: ALIYUN::StackName
ScalingGroupId:
Ref: ScalingGroup
SecurityGroupId:
Ref: SecurityGroup
ScalingGroup:
Type: ALIYUN::ESS::ScalingGroup
DependsOn: SecurityGroup
Properties:
MaxSize: 3
MinSize: 0
DefaultCooldown: 15
VpcId:
Ref: VpcId
VSwitchId:
Ref: VSwitchId
Outputs: {}
- 本页导读 (1)