Modifies the configuration of a server group, such as the health checks, session persistence, name, scheduling algorithm, and protocol.
Debugging
Request parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
Action | String | Yes | UpdateServerGroupAttribute |
The operation that you want to perform. Set the value to UpdateServerGroupAttribute. |
ServerGroupName | String | No | test |
The name of the server group. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The name must start with a letter. |
Scheduler | String | No | Wrr |
The scheduling algorithm. Valid values:
|
ClientToken | String | No | 5A2CFF0E-5718-45B5-9D4D-70B3FF3898 |
The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. Note If you do not specify this parameter, the system automatically uses the request ID
as the client token. The ID of each request may be different.
|
DryRun | Boolean | No | true |
Specifies whether to only precheck the API request. Valid values:
|
HealthCheckConfig | Object | No |
The configuration of health checks. |
|
HealthCheckConnectPort | Integer | No | 80 |
The backend port that is used for health checks. Valid values: 0 to 65535. If you set the value to 0, the backend port is used for health checks. Note This parameter takes effect when the HealthCheckEnabled parameter is set to true.
|
HealthCheckEnabled | Boolean | No | true |
Specifies whether to enable the health check feature. Valid values:
|
HealthCheckHost | String | No | example.com |
The domain name that is used for health checks. The domain name must meet the following requirements:
Note This parameter takes effect when the HealthCheckEnabled parameter is set to true and the HealthCheckProtocol parameter is set to HTTP.
|
HealthCheckCodes | Array of String | No | 200 |
The HTTP status code for a successful health check. You can specify multiple HTTP status codes. Valid values:
Note This parameter takes effect when the HealthCheckEnabled parameter is set to true and the HealthCheckProtocol parameter is set to HTTP.
|
HealthCheckHttpVersion | String | No | HTTP1.1 |
The version of HTTP that is used for health checks. Valid values:
Note This parameter takes effect when the HealthCheckEnabled parameter is set to true and the HealthCheckProtocol parameter is set to HTTP.
|
HealthCheckInterval | Integer | No | 5 |
The interval between two consecutive health checks. Unit: seconds. Valid values: 1 to 50. Note This parameter takes effect when the HealthCheckEnabled parameter is set to true.
|
HealthCheckMethod | String | No | HEAD |
The HTTP method that is used for health checks. Valid values:
Note This parameter takes effect when the HealthCheckEnabled parameter is set to true and the HealthCheckProtocol parameter is set to HTTP.
|
HealthCheckPath | String | No | /test/index.html |
The path that is used for health checks. The path must be 1 to 80 characters in length, and can contain only letters, digits,
and the following special characters: Note This parameter takes effect when the HealthCheckEnabled parameter is set to true and the HealthCheckProtocol parameter is set to HTTP.
|
HealthCheckProtocol | String | No | HTTP |
The protocol that is used for health checks. Valid values:
|
HealthCheckTimeout | Integer | No | 3 |
The timeout period of a health check. If a backend server does not respond within the specified timeout period, the health check fails. Unit: seconds. Valid values: 1 to 300. Note If the value of the HealthCheckTimeout parameter is smaller than that of the HealthCheckInterval parameter, the timeout period specified by the HealthCheckTimeout parameter is ignored and the period of time specified by the HealthCheckInterval parameter is used as the timeout period.
Note This parameter takes effect when the HealthCheckEnabled parameter is set to true.
|
HealthyThreshold | Integer | No | 4 |
The number of times that an unhealthy backend server must consecutively pass health checks before it can be declared healthy (from fail to success). Valid values: 2 to 10. |
UnhealthyThreshold | Integer | No | 4 |
The number of times that a healthy backed server must consecutively pass health checks before it can be declared unhealthy (from success to fail). Valid values: 2 to 10. |
StickySessionConfig | Object | No |
The configuration of session persistence. |
|
Cookie | String | No | B490B5EBF6F3CD402E515D22BCDA1598 |
The cookie to be configured on the backend server. The cookie must be 1 to 200 characters in length, and can contain only ASCII characters and digits. It cannot contain commas (,), semicolons (;), or space characters. It cannot start with a dollar sign ($). Note This parameter takes effect when the StickySessionEnabled parameter is set to true and the StickySessionType parameter is set to Server.
|
CookieTimeout | Integer | No | 1000 |
The timeout period of the cookie. Unit: seconds. Valid values: 1 to 86400. Note This parameter takes effect when the StickySessionEnabled parameter is set to true and the StickySessionType parameter is set to Insert for the server group.
|
StickySessionEnabled | Boolean | No | true |
Specifies whether to enable session persistence. Valid values:
|
StickySessionType | String | No | Insert |
The method that is used to handle a cookie. Valid values:
Note This parameter takes effect when the StickySessionEnabled parameter is set to true for the server group.
|
ServerGroupId | String | Yes | sgp-atstuj3rtop**** |
The ID of the server group. |
Response parameters
Parameter | Type | Example | Description |
---|---|---|---|
JobId | String | 72dcd26b-f12d-4c27-b3af-18f6aed5**** |
The ID of the asynchronous task. |
RequestId | String | 365F4154-92F6-4AE4-92F8-7FF34B540710 |
The ID of the request. |
Examples
Sample requests
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****
&Common request parameters
Sample responses
XML
format
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
format
HTTP/1.1 200 OK
Content-Type:application/json
{
"JobId" : "72dcd26b-f12d-4c27-b3af-18f6aed5****",
"RequestId" : "365F4154-92F6-4AE4-92F8-7FF34B540710"
}
Error codes
HttpCode | Error code | Error message | Description |
---|---|---|---|
400 | IncorrectStatus.ServerGroup | The status of %s [%s] is incorrect. | The error message returned because the status of the server group is invalid. |
404 | ResourceNotFound.ServerGroup | The specified resource %s is not found. | The error message returned because the specified %s resource does not exist. |
For a list of error codes, visit the API Error Center.