调用CreateServerGroup创建服务器组。

调试

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

请求参数

名称 类型 是否必选 示例值 描述
Action String CreateServerGroup

要执行的操作。取值:CreateServerGroup

ServerGroupName String sg-atstuj3rtoptyui****

服务器组名称。长度为2~128个字符,必须以大小写字母或中文开头,可包含数字、半角句点(.)、下划线(_)和短划线(-)。

ServerGroupType String Instance

服务器组类型。取值:

  • Instance(默认值):服务器类型,该类型服务器组支持添加EcsEnsEci实例。
  • Ip:IP地址类型,该类型服务器组支持直接添加IP地址。
VpcId String vpc-bp15zckdt37pq72zv****

VPC实例ID。只有该VPC下的服务器可以加入到该服务器组。

说明 ServerGroupType取值为InstanceIp时,该参数必传。
Scheduler String Wrr

调度算法。取值:

  • Wrr(默认值):权重值越高的后端服务器,被轮询到的概率也越高。
  • Wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的概率也越高。
  • Sch:源IP一致性Hash。
Protocol String HTTP

后端协议,取值:

  • HTTP(默认值):支持关联HTTPS、HTTP和QUIC监听。
  • HTTPS:支持关联HTTPS监听。
ResourceGroupId String rg-atstuj3rtop****

资源组ID

HealthCheckConfig Object

健康检查相关配置结构

HealthCheckConnectPort Integer 80

健康检查的后端服务器的端口。

取值: 0~65535

默认值:0,表示使用后端服务器的端口进行健康检查。

HealthCheckEnabled Boolean true

是否启用健康检查,取值:

  • true:启用
  • false:不启用
HealthCheckHost String www.test.com

健康检查域名。字符要求:

  • 长度限制为1~80个字符。
  • 可包含小写字母、数字、短划线(-)和半角句点(.)。
  • 至少包含一个半角句点(.),半角句点(.)不能出现在开头或结尾。
  • 最右侧的地域标签,只能包含字母,不能包含数字或短划线(-)。
  • 其他地域标签,短划线(-)不能出现在开头或结尾。
说明 只有HealthCheckProtocol设置为HTTP时才需配置该参数。
HealthCheckCodes Array of String 200

健康检查正常的状态码,多个状态码用列表传入。

说明 HealthCheckProtocolHTTP时才有该参数。

取值:http_2xxhttp_3xxhttp_4xxhttp_5xx。默认值:http_2xx

HealthCheckHttpVersion String HTTP1.0

健康检查HTTP协议版本,取值:HTTP1.0HTTP1.1(默认值)。

说明 只有HealthCheckProtocol设置为HTTP时才需配置该参数。
HealthCheckInterval Integer 5

健康检查的时间间隔。单位:秒。

取值:1~50

默认值:2

HealthCheckMethod String HEAD

健康检查方法,取值:GETHEAD(默认值)。

说明 只有HealthCheckProtocol设置为HTTP时才需配置该参数。
HealthCheckPath String /test/index.html

健康检查的转发规则路径。

长度限制为1~80,只能使用字母、数字、字符-/.%?#&=以及扩展字符_;~!()*[]@$^:',+。 URL必须以正斜线(/)开头。

说明 只有HealthCheckProtocol设置为HTTP时才需配置该参数。
HealthCheckProtocol String HTTP

健康检查协议,取值:HTTPHTTPS

HealthCheckTimeout Integer 3

接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有正确响应,则判定为健康检查失败。单位:秒。

取值:1~300

默认值:5

说明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。
HealthyThreshold Integer 4

健康检查连续成功多少次后,将后端服务器的健康检查状态由失败判定为成功

取值:2~10

默认值:3

UnhealthyThreshold Integer 4

健康检查连续失败多少次后,将后端服务器的健康检查状态由成功判定为失败

取值:2~10

默认值:3

StickySessionConfig Object

会话保持配置结构体。

说明 ServerGroupType取值为InstanceIp时,该参数必传。
Cookie String B490B5EBF6F3CD402E515D22BCDA****

服务器上配置的Cookie。

长度为1~200个字符,只能包含ASCII英文字母和数字字符,不能包含半角逗号(,)、半角分号(;)或空格,也不能以美元符号($)开头。

说明StickySessionOnStickySessionTypeserver时,该参数必传。
CookieTimeout Integer 1000

Cookie超时时间。单位:秒。

取值:1~86400

默认值:1000

说明StickySessionEnabledtrueStickySessionTypeInsert时,该参数必传。
StickySessionEnabled Boolean true

是否启用会话保持,取值:truefalse

说明 ServerGroupType取值为InstanceIp时,该参数必传。
StickySessionType String Insert

Cookie的处理方式。取值:

  • Insert(默认值):植入Cookie。

    客户端第一次访问时,负载均衡会在返回请求中植入Cookie(即在HTTP或HTTPS响应报文中插入SERVERID),下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。

  • Server:重写Cookie。

    负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。

说明StickySession的值为On时,该参数必传。
ClientToken String 5A2CFF0E-5718-45B5-9D4D-70B3FF3898

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

说明 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId可能不一样。
DryRun Boolean true

是否只预检此次请求,取值:

  • true:发送检查请求,不会创建资源。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码DryRunOperation
  • false(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。

返回数据

名称 类型 示例值 描述
JobId String 72dcd26b-f12d-4c27-b3af-18f6aed5****

异步任务ID

RequestId String 365F4154-92F6-4AE4-92F8-7FF34B540710

请求ID

ServerGroupId String sg-atstuj3rtoptyui****

服务器组ID

示例

请求示例

http(s)://[Endpoint]/?Action=CreateServerGroup
&ServerGroupName=sg-atstuj3rtoptyui****
&ServerGroupType=Instance
&VpcId=vpc-bp15zckdt37pq72zv****
&Scheduler=Wrr
&Protocol=HTTP
&ResourceGroupId=rg-atstuj3rtop****
&HealthCheckConfig={"HealthCheckConnectPort":80,"HealthCheckEnabled":true,"HealthCheckHost":"www.test.com","HealthCheckCodes":["200"],"HealthCheckHttpVersion":"HTTP1.0","HealthCheckInterval":5,"HealthCheckMethod":"HEAD","HealthCheckPath":"/test/index.html","HealthCheckProtocol":"HTTP","HealthCheckTimeout":3,"HealthyThreshold":4,"UnhealthyThreshold":4}
&StickySessionConfig={"Cookie":"B490B5EBF6F3CD402E515D22BCDA****","CookieTimeout":1000,"StickySessionEnabled":true,"StickySessionType":"Insert"}
&ClientToken=5A2CFF0E-5718-45B5-9D4D-70B3FF3898
&DryRun=true
&公共请求参数

正常返回示例

XML格式

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

<CreateServerGroupResponse>
    <JobId>72dcd26b-f12d-4c27-b3af-18f6aed5****</JobId>
    <RequestId>365F4154-92F6-4AE4-92F8-7FF34B540710</RequestId>
    <ServerGroupId>sg-atstuj3rtoptyui****</ServerGroupId>
</CreateServerGroupResponse>

JSON格式

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

{
  "JobId" : "72dcd26b-f12d-4c27-b3af-18f6aed5****",
  "RequestId" : "365F4154-92F6-4AE4-92F8-7FF34B540710",
  "ServerGroupId" : "sg-atstuj3rtoptyui****"
}

错误码

HttpCode 错误码 错误信息 描述
400 QuotaExceeded.ServerGroupsNum The quota of %s is exceeded, usage %s/%s. 配额%s已超额度限制,目前已使用%s,配额为%s。

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