修改伸缩组

最近更新时间:2018-08-21 16:15:24

1. 接口描述

本接口(ModifyScalingGroup)用于修改特定伸缩组的属性。
接口请求域名:

scaling.api.qcloud.com

1)本接口是根据scalingGroupId对相应伸缩组属性进行修改的,且只允许修改以下属性:

  • maxSize:最大伸缩数,即伸缩组内CVM实例的最大值
  • minSize:最小伸缩数,即伸缩组内CVM实例的最小值
  • removePolicy:移除策略,指的是当需要移除实例时,移除最先还是最后加入伸缩组的实例
  • scalingGroupName:伸缩组名称
  • desiredCapacity:期望实例数
  • scalingConfigurationId:启动配置
  • zoneIds:伸缩组关联可用区
  • subnetIds:伸缩组关联子网
  • loadBalancerIds:伸缩组关联的传统型负载均衡
  • forwardLBInfos:伸缩组关联的应用型负载均衡
    其余属性无法修改。

2)当伸缩组的CVM实例数不满足修改后的maxSize、minSize、desiredCapacity,弹性伸缩服务会自动加入或移出CVM实例,使得伸缩组的CVM实例数满足在maxSize和minSize之间并且等于desiredCapacity。

2. 输入参数

以下请求参数列表仅列出了接口请求参数,正式调用时需要加上公共请求参数,见公共请求参数页面。其中,此接口的Action字段为ModifyScalingGroup。

参数名称 是否必选 类型 描述
scalingGroupId String 待修改的伸缩组Id,该参数可调用查询伸缩组列表(DescribeScalingGroup)接口查询。
minSize Int 修改后的伸缩组的最小伸缩数,即伸缩组内最小CVM实例数,范围0-200,且不大于maxSize。当伸缩组CVM实例数小于minSize时,AS会自动添加CVM实例,使得伸缩组内的当前实例数等于minSize。
maxSize Int 修改后的伸缩组的最大伸缩数,即伸缩组内最大CVM实例数,范围0-200,不小于minSize。当伸缩组CVM实例数大于maxSize时,AS会自动移出CVM实例,使得伸缩组内的当前实例数等于maxSize。
removePolicy String 伸缩组的移除策略。只有两种取值:RemoveOldestInstance,表示移除最旧策略,即当需要移除实例时,移除最先加入伸缩组的实例;RemoveNewestInstance,表示移除最新策略,即当需要移除实例时,移除最后加入伸缩组的实例。
scalingGroupName String 用户定义的伸缩组名称,若不传,表示不修改名称。
scalingConfigurationId String 修改当前伸缩组绑定的启动配置。修改之后,余量子机使用的是替换之前的配置,增量子机使用的是新替换的配置。若不传,表示不修改原有的启动配置。
desiredCapacity Int 期望实例数,期望实例数是指伸缩组当前合理的实例数量,大小介于最小实例数和最大实例数之间, 它的值可以被手动调整,当定时任务和告警伸缩任务触发时也会被调整。伸缩组会自动调整实际实例数, 使之与期望实例数相等。
zoneIds.n String 伸缩组所在地域Id。当伸缩组处于基础网络中,此参数必传。可调用查询可用区(DescribeAvailabilityZones)接口查询。
subnetIds.n String 伸缩组的子网Id。当伸缩组处于VPC网络,此参数必传。可调用查询子网列表(DescribeSubnetEx)接口查询。
loadBalancerIds.n String 与伸缩组绑定的各负载均衡的Id数组,可通过查询负载均衡实例列表 (DescribeLoadBalancers) 接口查询。
forwardLBInfos array of ForwardLBInfo object 伸缩组绑定的应用型负载均衡信息,伸缩组不支持同时绑定传统型负载均衡与应用型负载均衡,此参数与 loadBalancerIds 不可同时指定。目前仅支持绑定一个应用型负载均衡实例。

数据类型

ForwardLBInfo

参数名称 是否必选 类型 描述
listenerId String 应用型负载均衡监听器 ID,可通过 DescribeForwardLBListeners 接口查询。
loadBalancerId String 负载均衡实例 ID,可通过 DescribeLoadBalancers 接口查询。
locationId String 应用型负载均衡监听器的转发规则 ID。可通过 DescribeForwardLBListeners 接口查询。绑定七层监听器时需要指定此参数。
rsInfoSet array of RsInfo object 后端云服务器端口以及权重信息,目前仅支持指定一个端口的权重。

RsInfo

参数名称 是否必选 类型 描述
port String 负载均衡实例监听器后端云服务器监听端口,可选值:1~65535。
weight String 云服务器的权重,取值范围:0-100。

3. 输出参数

参数名称 类型 描述
code Int 公共错误码, 0表示成功,其他值表示失败。详见错误码页面的公共错误码
codeDesc String 业务侧错误码。成功时返回Success,错误时返回具体业务错误原因。
message String 模块错误信息描述,与接口相关。

4.错误码

以下错误码表仅列出了该接口的业务逻辑错误码,更多公共错误码详见AS错误码

错误码 描述
InvalidParameter.ScalingGroupIdError scalingGroupId不正确
Conflict.MaxsizeLessMinsize maxsize必须大于minsize
InvalidParameter.DesiredCapacity 期望实例数无效

5. 示例

https://scaling.api.qcloud.com/v2/index.php?
&<公共请求参数>
&minSize=3
&maxSize=20
&scalingGroupId=xxx
&removePolicy=RemoveOldestInstance

返回示例如下:

{
    "code":"0",
    "message":"",
    "codeDesc":"Success"         
}