- 伸缩组
- 创建一个伸缩组CreateScalingGroup
- 修改一个伸缩组ModifyScalingGroup
- 启用一个伸缩组EnableScalingGroup
- 停用一个伸缩组DisableScalingGroup
- 为伸缩组开启或关闭删除保护SetGroupDeletionProtection
- 删除一个伸缩组DeleteScalingGroup
- 查询伸缩组列表DescribeScalingGroups
- 查询指定伸缩组详情DescribeScalingGroupDetail
- 查询伸缩组内ECS实例列表DescribeScalingInstances
- 查询伸缩活动DescribeScalingActivities
- 查询一个伸缩活动的详细信息DescribeScalingActivityDetail
- 添加一个或多个负载均衡实例AttachLoadBalancers
- 移除一个或多个负载均衡CLB实例DetachLoadBalancers
- 添加一个或多个RDS实例AttachDBInstances
- 移除一个或多个RDS实例DetachDBInstances
- 暂停伸缩组中的指定流程SuspendProcesses
- 恢复伸缩组中被暂停的流程ResumeProcesses
- 添加负载均衡实例下虚拟服务器组AttachVServerGroups
- 移除一个或者多个虚拟服务器组DetachVServerGroups
- 添加一个或多个ALB服务器组AttachAlbServerGroups
- 移出一个或多个ALB服务器组DetachAlbServerGroups
- 添加一个或多个负载均衡服务器组AttachServerGroups
- 移除一个或多个负载均衡服务器组DetachServerGroups
- 更改伸缩组所属的资源组ChangeResourceGroup
- 基于配置文件管理伸缩组ApplyScalingGroup
- 查询伸缩组的弹性强度DescribeElasticStrength
- 伸缩配置
- 伸缩规则
- 触发任务
- 定时任务
- 报警任务
- 实例刷新
- 生命周期挂钩
- 事件通知
- 健康诊断
- 实例
- 地域
- 标签
- 其他
接口说明
伸缩组是具有相同应用场景的 ECS 实例的集合。
一个地域下支持创建的伸缩组数量和弹性伸缩使用情况有关,请前往配额中心查看伸缩组总数对应的配额值。
伸缩组创建成功后不会立即生效。您需要先调用 EnableScalingGroup 接口启用伸缩组,伸缩组才能触发伸缩活动和执行伸缩规则。
伸缩组、关联的传统型负载均衡 CLB(原 SLB)实例和关联的 RDS 实例必须在同一个地域。更多信息,请参见地域与可用区。
如果您为伸缩组关联了 CLB 实例,伸缩组会自动将加入伸缩组的 ECS 实例添加到 CLB 实例的后端服务器组。您可以指定 ECS 实例需要加入的服务器组,支持以下两种服务器组:
-
默认服务器组:用来接收前端请求的 ECS 实例,如果监听没有设置虚拟服务器组或主备服务器组,默认将请求转发至默认服务器组中的 ECS 实例。
-
虚拟服务器组:当您需要将不同的请求转发到不同的后端服务器上,或着需要通过域名和 URL 进行请求转发时,可以选择使用虚拟服务器组。
实例在加入 CLB 实例的后端服务器组后,权重默认为 50。CLB 实例需要满足以下条件:
-
该 CLB 实例的状态必须是 active,您可以调用 DescribeLoadBalancers 接口查看指定 CLB 实例的状态。
-
该 CLB 实例配置的所有监听端口必须开启健康检查,否则伸缩组创建失败。
如果您为伸缩组关联了应用型负载均衡 ALB 服务器组或网络型负载均衡 NLB 服务器组,伸缩组会自动将加入伸缩组的 ECS 实例添加为 ALB 服务器组或 NLB 服务器组的后端服务器,处理 ALB 实例或 NLB 实例分发的访问请求。您可以指定多个 ALB 服务器组或 NLB 服务器组,但服务器组必须与伸缩组属于同一个 VPC。更多信息,请参见 AttachAlbServerGroups 或 AttachServerGroups 。
如果您为伸缩组关联了 RDS 实例,伸缩组会自动将加入伸缩组的 ECS 实例的内网 IP 添加到 RDS 实例的访问白名单。RDS 实例需要满足以下条件:
-
该 RDS 实例的状态必须是 Running,您可以调用 DescribeDBInstances 接口查看指定 RDS 实例的状态。
-
该 RDS 实例访问白名单的 IP 数不能超过上限值。更多信息,请参见 RDS 文档设置白名单。
如果伸缩组的 MultiAZPolicy 设置为 COST_OPTIMIZED:
-
当指定 OnDemandBaseCapacity、OnDemandPercentageAboveBaseCapacity 和 SpotInstancePools 参数时,即指定成本优化策略下的实例分配方式,在扩缩容时将优先满足该实例分配方式。
-
当不指定 OnDemandBaseCapacity、OnDemandPercentageAboveBaseCapacity 或 SpotInstancePools 参数时,成本优化策略下将仅按照成本最低的方式进行实例创建。
如果您为伸缩组设置了可传播标签,即Tags.Propagate
为 true 时:
-
伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。
-
如果您在伸缩配置中指定了实例标签,并且选择将伸缩组的标签传播到该实例,则所有标签都会同时存在。
-
如果伸缩配置中的标签和伸缩组中的可传播标签指定了相同的标签键,则优先使用伸缩配置中的标签值。
请求参数
字段名称 | 字段详情 |
---|---|
ScalingGroupNamestring | 伸缩组的名称,同一地域下伸缩组名称唯一。展开详情 示例值:scalinggroup**** |
LaunchTemplateIdstring | 实例启动模板 ID,用于指定伸缩组从实例启动模板获取启动配置信息。 示例值:lt-m5e3ofjr1zn1aw7**** |
LaunchTemplateVersionstring | 实例启动模板的版本。取值范围:展开详情 示例值:Default |
InstanceIdstring | 实例的 ID。创建伸缩组时,将从指定的实例获取所需的配置信息,并自动创建伸缩配置。 示例值:i-28wt4**** |
RegionIdstring | 伸缩组所属的地域 ID。 示例值:cn-qingdao |
MinSizeinteger<int32> | 伸缩组内实例台数的最小值,当伸缩组内实例数小于 MinSize 的值时,弹性伸缩会自动创建实例。 展开详情 示例值:2 |
MaxSizeinteger<int32> | 伸缩组内实例台数的最大值,当伸缩组内实例数大于 MaxSize 的值时,弹性伸缩会自动移出实例。 展开详情 示例值:20 |
DefaultCooldowninteger<int32> | 一次伸缩活动(添加或移出实例)结束后的一段冷却时间。取值范围:0~86400,单位:秒。展开详情 示例值:300 |
LoadBalancerIdsstring | 传统型负载均衡 CLB(原 SLB)实例 ID。取值可以是由多台 CLB 实例 ID 组成一个 JSON 数组,ID 之间用半角逗号(,)隔开。展开详情 示例值:["lb-bp1u7etiogg38yvwz****", "lb-bp168cqrux9ai9l7f****", "lb-bp1jv3m9zvj22ufxp****"] |
DBInstanceIdsstring | RDS 实例 ID。取值可以是由多台 RDS 实例 ID 组成一个 JSON 数组,ID 之间用半角逗号(,)隔开。 展开详情 示例值:["rm-bp142f86de0t7****", "rm-bp18l1z42ar4o****", "rm-bp1lqr97h4aqk****"] |
RemovalPoliciesarray<string> | 指定实例移出策略的筛选策略。取值范围:展开详情 子级条数 <= 2 |
VSwitchIdstring | 虚拟交换机的 ID。指定后,伸缩组的网络类型为专有网络。展开详情 示例值:vsw-bp14zolna43z266bq**** |
MultiAZPolicystring | 多可用区伸缩组 ECS 实例扩缩容策略。取值范围: 展开详情 示例值:PRIORITY |
HealthCheckTypestring | 伸缩组的健康检查方式。取值范围:展开详情 示例值:ECS |
ScalingPolicystring | 指定伸缩组的回收模式。取值范围: 展开详情 示例值:recycle |
ClientTokenstring | 保证请求幂等性。展开详情 示例值:123e4567-e89b-12d3-a456-42665544**** |
OnDemandBaseCapacityinteger<int32> | 伸缩组所需要按量实例个数的最小值,取值范围:0~1000。当按量实例个数少于该值时,将优先创建按量实例。 示例值:30 |
OnDemandPercentageAboveBaseCapacityinteger<int32> | 伸缩组满足最小按量实例数(OnDemandBaseCapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。 示例值:20 |
SpotInstanceRemedyboolean | 是否开启补齐抢占式实例的弹性伸缩策略。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。 示例值:true |
CompensateWithOnDemandboolean | 当 MultiAZPolicy 取值为 COST_OPTIMIZED 时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足 ECS 实例数量要求。取值范围:展开详情 示例值:true |
SpotInstancePoolsinteger<int32> | 指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:1~10。 示例值:5 |
DesiredCapacityinteger<int32> | 伸缩组内实例的期望数量,伸缩组会自动将实例数量维持在期望实例数。取值不得大于 MaxSize,且不得小于 MinSize。 示例值:5 |
GroupDeletionProtectionboolean | 是否开启伸缩组删除保护。取值范围:展开详情 示例值:true |
GroupTypestring | 伸缩组管理的实例类型。取值范围:展开详情 示例值:ECS |
ContainerGroupIdstring | ECI 实例 ID,即容器组 ID。 示例值:eci-uf6fonnghi50u374**** |
VSwitchIdsarray<string> | 一台或多台虚拟交换机的 ID。如果您使用了 VSwitchIds 参数,VSwitchId 参数将被忽略。指定后,伸缩组的网络类型为专有网络。展开详情 子级条数 <= 8 |
LifecycleHooksarray<object> | 生命周期挂钩信息列表。 子级条数 <= 100 |
VServerGroupsarray<object> | 伸缩组关联虚拟服务器组的信息集合。 子级条数 <= 100 |
Tagsarray<object> | 伸缩组的标签信息集合。 子级条数 <= 21 |
LaunchTemplateOverridesarray<object> | 扩展启动模板的实例规格信息。 子级条数 <= 10 |
AlbServerGroupsarray<object> | ALB 服务器组的相关信息集合。 子级条数 <= 100 |
ServerGroupsarray<object> | 负载均衡服务器组的相关信息集合。展开详情 子级条数 <= 100 |
AzBalanceboolean | 伸缩组的容量是否在多个可用区间均衡分布(仅当 示例值:false |
AllocationStrategystring | 容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当 示例值:priority |
SpotAllocationStrategystring | 抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当 示例值:lowestPrice |
SyncAlarmRuleToCmsboolean | 说明
该参数暂未开放使用。
示例值:false |
MaxInstanceLifetimeinteger<int32> | 实例在伸缩组中存活的最大时间。单位为秒。展开详情 示例值:null |
CustomPolicyARNstring | 自定义缩容策略 Function 函数 ARN。仅当 RemovalPolicies 配置第一个移除策略为 CustomPolicy 时生效。 示例值:acs:fc:cn-zhangjiakou:16145688****:services/ess_custom_terminate_policy.LATEST/functions/ess_custom_terminate_policy_name |
ResourceGroupIdstring | 新创建的伸缩组所属的资源组 ID。展开详情 示例值:rg-123****** |
LoadBalancerConfigsarray<object> | 负载均衡配置列表。 子级条数 <= 20 |
HealthCheckTypesarray<string> | 伸缩组的健康检查方式。展开详情 子级条数 <= 100 |
DBInstancesarray<object> | 伸缩组关联的数据库列表。 子级条数 <= 5 |
StopInstanceTimeoutinteger<int32> | 缩容流程中等待 ECS 实例停机成功的超时时间,单位为秒。展开详情 示例值:60 |
CapacityOptionsobject | 容量选项。 |
返回参数
字段名称 | 字段详情 |
---|---|
RequestIdstring | 请求 ID。 示例值:473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
ScalingGroupIdstring | 伸缩组 ID。 示例值:asg-bp14wlu85wrpchm0**** |