对于需要动态调整实例数量来应对业务变化负载以及确保应用程序的高可用性场景,调用API AttachAlbServerGroups向伸缩组添加一个或多个ALB服务器组,可以在业务变化时自动实现弹性扩展,并根据负载情况动态分配流量、提高应用程序的稳定性。
接口说明
向伸缩组添加ALB服务器组时,需要满足以下条件:
- 伸缩组的网络类型必须为VPC,且与ALB服务器组处于同一VPC。
- ALB服务器组必须处于可用状态。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 |
类型 |
是否必选 |
示例值 |
描述 |
Action | String | 是 | AttachAlbServerGroups | 系统规定参数。取值:AttachAlbServerGroups。 |
RegionId | String | 是 | cn-hangzhou | 伸缩组所属地域的ID。 例如 |
ScalingGroupId | String | 是 | asg-bp18p2yfxow2dloq**** | 伸缩组的ID。 |
ClientToken | String | 否 | 123e4567-e89b-12d3-a456-42665544**** | 保证请求幂等性。 从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见如何保证幂等性。 |
ForceAttach | Boolean | 否 | false | 是否将当前伸缩组内的ECS实例或ECI实例添加到新增的ALB服务器组。
默认值:false。 |
AlbServerGroup.N.AlbServerGroupId | String | 是 | sgp-ddwb0y0g6y9bjm**** | ALB服务器组的ID。 N为ALB服务器组的编号。一个伸缩组支持关联的ALB服务器组数量有限,如需查看或手动申请提升配额值,请前往配额中心。 |
AlbServerGroup.N.Weight | Integer | 是 | 100 | 弹性伸缩将ECS实例或ECI实例添加到ALB服务器组后,ECS实例或ECI实例作为后端服务器的权重。N为ALB服务器组的编号。 权重越高,ECS实例或ECI实例将被分配到越多的访问请求。如果权重为0,则ECS实例或ECI实例不会收到访问请求。取值范围:0~100。 |
AlbServerGroup.N.Port | Integer | 是 | 22 | 弹性伸缩将ECS实例或ECI实例添加到ALB服务器组后,ECS实例或ECI实例使用的端口号,取值范围:1~65535。 说明 N为ALB服务器组的编号,如果N相同,Port不同,系统会默认向伸缩组关联多个不同Port的该ALB服务器组。 |
返回数据
名称 |
类型 |
示例值 |
描述 |
ScalingActivityId | String | asa-2ze6wxj8vsohn6j9**** | 添加ALB服务器组并将伸缩组内的ECS实例或ECI实例添加到该ALB服务器组时,伸缩活动的ID。 说明 仅当 ForceAttach 取值为true 时,返回该参数。 |
RequestId | String | 473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** | 请求ID。 |
示例
请求示例
http(s)://ess.aliyuncs.com/?Action=AttachAlbServerGroups
&RegionId=cn-hangzhou
&ScalingGroupId=asg-bp18p2yfxow2dloq****
&ClientToken=123e4567-e89b-12d3-a456-42665544****
&ForceAttach=false
&AlbServerGroup=[{"AlbServerGroupId":"sgp-ddwb0y0g6y9bjm****","Weight":100,"Port":22}]
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<AttachAlbServerGroupsResponse>
<ScalingActivityId>asa-2ze6wxj8vsohn6j9****</ScalingActivityId>
<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</AttachAlbServerGroupsResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"ScalingActivityId" : "asa-2ze6wxj8vsohn6j9****",
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}
错误码
访问错误中心查看更多错误码。
HttpCode |
错误码 |
错误信息 |
描述 |
400 |
AlbServerGroup.NotExist |
The ServerGroup "%s" do(es) not exist. |
账号下不存在指定的ALB服务器组。 |
400 |
AlbServerGroup.AlreadyAttached |
The ALB ServerGroups are already attached. |
当前ALB服务器组已经添加到伸缩组中。 |