全部产品
Search
文档中心

弹性伸缩:AttachVServerGroups

更新时间:May 17, 2024

伸缩组关联负载均衡实例(CLB)后,加入伸缩组的实例会自动添加为CLB实例的后端服务器,处理来自CLB实例转发的访问请求。当需要将不同的请求转发到不同的后端服务器上时,或需要通过域名和URL进行请求转发时,您可以调用API AttachVServerGroups来添加负载均衡实例下的一个或者多个虚拟服务器组,通过虚拟服务器组管理不同的后端服务器。

接口说明

  • 向伸缩组添加虚拟服务器组时需要满足以下条件:
    • 负载均衡实例与伸缩组必须属于同一账号。
    • 负载均衡实例与伸缩组必须处于同一地域。
    • 负载均衡实例必须处于运行中状态。
    • 负载均衡实例至少配置有一个监听且必须开启健康检查。
    • 如果负载均衡实例与伸缩组的网络类型均为VPC,必须处于同一VPC。
    • 当伸缩组的网络类型为VPC,负载均衡实例的网络类型为经典网络时,如果虚拟服务器组包含VPC实例,该实例必须与伸缩组处于同一VPC。
    • 待添加虚拟服务器组必须属于对应的负载均衡实例。
    • 不超过伸缩组内虚拟服务器组的限额,具体限额,请参见使用限制。
  • 添加伸缩组内虚拟服务器组时,需要同时指定以下属性:
    • 负载均衡实例ID(LoadBalancerId)
    • 虚拟服务器组ID(VServerGroupId)
    • 虚拟服务器组端口号(Port)

      说明 如果通过不同的端口号将同一虚拟服务器组添加至伸缩组,视为伸缩组内添加了多个虚拟服务器组。如果请求参数中的虚拟服务器组ID和端口号同时重复,默认使用最先配置的一组,忽略其余虚拟服务器组。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称

类型

是否必选

示例值

描述

Action String AttachVServerGroups

系统规定参数。取值:AttachVServerGroups

RegionId String cn-hangzhou

伸缩组所属地域的ID,如cn-hangzhou、cn-shanghai,更多信息,请参见地域和可用区

ScalingGroupId String asg-bp18p2yfxow2dloq****

伸缩组的ID。

ClientToken String 123e4567-e89b-12d3-a456-42665544****

保证请求幂等性。

从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见如何保证幂等性

ForceAttach Boolean false

是否将当前伸缩组内的ECS实例或ECI实例添加到新增的虚拟服务器组。

  • true:添加。
  • false:不添加。

默认值:false。

VServerGroup.N.VServerGroupAttribute.N.VServerGroupId String rsp-bp1jp1rge****

虚拟服务器组的ID。其中:

  • 第一个N为负载均衡实例编号,取值范围:1~5。
  • 第二个N为负载均衡实例下虚拟服务器组的编号,取值范围:1~5。
VServerGroup.N.VServerGroupAttribute.N.Weight Integer 100

弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时设置的权重,取值范围:0~100。其中:

  • 第一个N为负载均衡实例编号,取值范围:1~5。
  • 第二个N为负载均衡实例下虚拟服务器组的编号,取值范围:1~5。

默认值:50。

VServerGroup.N.VServerGroupAttribute.N.Port Integer 22

弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时使用的端口号,取值范围:1~65535。其中:

  • 第一个N为负载均衡实例编号,取值范围:1~5。
  • 第二个N为负载均衡实例下虚拟服务器组的编号,取值范围:1~5。
VServerGroup.N.LoadBalancerId String lb-bp1u7etiogg38yvwz****

虚拟服务器组所属负载均衡实例的ID。N为负载均衡实例编号,取值范围:1~5。

返回数据

名称

类型

示例值

描述

RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

请求ID。

示例

请求示例

http(s)://ess.aliyuncs.com/?Action=AttachVServerGroups
&RegionId=cn-hangzhou
&ScalingGroupId=asg-bp18p2yfxow2dloq****
&ClientToken=123e4567-e89b-12d3-a456-42665544****
&ForceAttach=false
&VServerGroup=[{"VServerGroupAttribute":[{"VServerGroupId":"rsp-bp1jp1rge****","Weight":100,"Port":22}],"LoadBalancerId":"lb-bp1u7etiogg38yvwz****"}]
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<AttachVServerGroupsResponse>
    <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</AttachVServerGroupsResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}

错误码

访问错误中心查看更多错误码。

HttpCode

错误码

错误信息

描述

403

Forbidden.Unauthorized

A required authorization for the specified action is not supplied.

您未授予弹性伸缩完整的OpenAPI调用权限。

404

InvalidScalingGroupId.NotFound

The specified scaling group does not exist.

账号下不存在指定的伸缩组。

404

InvalidLoadBalancerId.NotFound

The load balancer "%s" does not exist.

账号下不存在指定的负载均衡实例。

400

InvalidLoadBalancerId.RegionMismatch

The load balancer "%s" and the specified scaling group are not in the same Region.

负载均衡实例与伸缩组不在同一地域。

400

IncorrectLoadBalancerStatus

The current status of the load balancer "%s" does not support this action.

当前负载均衡实例状态不支持此操作。

400

IncorrectLoadBalancerHealthCheck

The current health check type of the load balancer "%s" does not support this action.

当前负载均衡实例未开启健康检查。

400

InvalidLoadBalancerId.VPCMismatch

The specified virtual switch and the instance in the load balancer "%s" are not in the same VPC.

负载均衡实例与伸缩组不在同一VPC下。

400

InvalidVServerGroupId.ForLoadBalancer

Invalid VServerGroupId For LoadBalancer "%s".

VServerGroupId对应的虚拟服务器组不属于指定的负载均衡实例。

400

QuotaExceeded.VServerGroup

VServerGroup quota exceeded in the specified scaling group.

当前伸缩组内可配置的虚拟服务器组个数达到上限。