调用UpdateServerGroupAttribute更新服务器组的配置,例如健康检查、会话保持、名称、调度算法和协议等。

调试

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

请求参数

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

要执行的操作。取值:UpdateServerGroupAttribute

ServerGroupName String test

服务器组名称。

长度为2~128个英文或中文字符,必须以大小字母或中文开头,可包含数字,半角句号(.),下划线(_)和短划线(-)。

Scheduler String Wrr

调度算法。取值:

  • Wrr:权重值越高的后端服务器,被轮询到的次数(概率)也越高。
  • Wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。
  • Sch:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。
ClientToken String 5A2CFF0E-5718-45B5-9D4D-70B3FF3898

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

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

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

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

健康检查相关配置结构体

HealthCheckConnectPort Integer 80

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

取值:0~65535

设置为0时代表使用后端服务器的端口进行健康检查。

说明 当前服务器组HealthCheckEnabledtrue时,该参数配置生效。
HealthCheckEnabled Boolean true

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

  • true:启用
  • false:不启用
HealthCheckHost String example.com

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

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

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

  • http_2xx
  • http_3xx
  • http_4xx
  • http_5xx
说明 当前服务器组HealthCheckEnabledtrueHealthCheckProtocol设置为HTTP时该参数生效。
HealthCheckHttpVersion String HTTP1.1

健康检查HTTP协议版本。取值:

  • HTTP1.0
  • HTTP1.1
说明 当前服务器组HealthCheckEnabled为true且HealthCheckProtocol设置为HTTP时该参数生效。
HealthCheckInterval Integer 5

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

取值:1~50

说明 当前服务器组HealthCheckEnabledtrue时,该参数配置生效。
HealthCheckMethod String HEAD

健康检查方法。取值:

  • GET
  • HEAD
说明 当前服务器组HealthCheckEnabled为true且HealthCheckProtocol设置为HTTP时该参数生效。
HealthCheckPath String /test/index.html

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

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

说明 当前服务器组HealthCheckEnabledtrueHealthCheckProtocol设置为HTTP时该参数生效。
HealthCheckProtocol String HTTP

健康检查协议。取值:

  • HTTP
  • TCP
HealthCheckTimeout Integer 3

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

取值:1~300

说明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。
说明 当前服务器组HealthCheckEnabledtrue时,该参数配置生效。
HealthyThreshold Integer 4

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

取值:2~10

UnhealthyThreshold Integer 4

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

取值:2~10

StickySessionConfig Object

会话保持配置结构体

Cookie String B490B5EBF6F3CD402E515D22BCDA1598

服务器上配置的Cookie。

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

说明 当前服务器组StickySessionEnabledtrueStickySessionType配置为Server时,该参数生效。
CookieTimeout Integer 1000

Cookie超时时间。单位:秒。

取值:1~86400

说明 当前服务器组StickySessionEnabledtrueStickySessionType配置为Insert时,该参数生效。
StickySessionEnabled Boolean true

是否启用会话保持。取值:

  • true:是。
  • false:否。
StickySessionType String Insert

Cookie的处理方式。取值:

  • Insert:植入Cookie。

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

  • Server:重写Cookie。

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

说明 当前服务器组StickySessionEnabledtrue时,该参数生效。
ServerGroupId String sgp-atstuj3rtop****

服务器组ID

返回数据

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

异步任务ID

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

请求ID

示例

请求示例

http(s)://[Endpoint]/?Action=UpdateServerGroupAttribute
&ServerGroupName=test
&Scheduler=Wrr
&ClientToken=5A2CFF0E-5718-45B5-9D4D-70B3FF3898
&DryRun=true
&HealthCheckConfig={"HealthCheckConnectPort":80,"HealthCheckEnabled":true,"HealthCheckHost":"example.com","HealthCheckCodes":["200"],"HealthCheckHttpVersion":"HTTP1.1","HealthCheckInterval":5,"HealthCheckMethod":"HEAD","HealthCheckPath":"/test/index.html","HealthCheckProtocol":"HTTP","HealthCheckTimeout":3,"HealthyThreshold":4,"UnhealthyThreshold":4}
&StickySessionConfig={"Cookie":"B490B5EBF6F3CD402E515D22BCDA1598","CookieTimeout":1000,"StickySessionEnabled":true,"StickySessionType":"Insert"}
&ServerGroupId=sgp-atstuj3rtop****
&公共请求参数

正常返回示例

XML格式

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

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

JSON格式

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

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

错误码

HttpCode 错误码 错误信息 描述
400 IncorrectStatus.ServerGroup The status of %s [%s] is incorrect. 服务器组状态无效。
404 ResourceNotFound.ServerGroup The specified resource %s is not found. 资源%s不存在。

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