Modifies the configurations of a Network Load Balancer (NLB) server group.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
nlb:UpdateServerGroupAttribute | update |
|
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
ServerGroupId | string | Yes | The server group ID. | sgp-atstuj3rtoptyui**** |
ServerGroupName | string | No | The new 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. | NLB_ServerGroup1 |
ConnectionDrainEnabled | boolean | No | Specifies whether to enable connection draining. Valid values:
| false |
ConnectionDrainTimeout | integer | No | The timeout period of connection draining. Unit: seconds. Valid values: 10 to 900. | 10 |
Scheduler | string | No | The routing algorithm. Valid values:
Note
QUIC ID hashing is supported only when the backend protocol is set to UDP.
| Wrr |
PreserveClientIpEnabled | boolean | No | Specifies whether to enable client IP preservation. Valid values:
Note
You cannot set this parameter to true if PreserveClientIpEnabled is set to false and the server group is associated with a TCP/SSL listener.
| false |
HealthCheckConfig | object | No | The configuration of health checks. | |
HealthCheckEnabled | boolean | No | Specifies whether to enable the health check feature. Valid values:
| false |
HealthCheckType | string | No | The protocol that is used for health checks. Valid values:
| TCP |
HealthCheckConnectPort | integer | No | The backend port that is used for health checks. Valid values: 0 to 65535. If you set the value to 0, the port of a backend server is used for health checks. | 0 |
HealthyThreshold | integer | No | The number of times that an unhealthy backend server must consecutively pass health checks before it is declared healthy. In this case, the health status changes from fail to success. Valid values: 2 to 10. | 3 |
UnhealthyThreshold | integer | No | The number of times that a healthy backend server must consecutively fail health checks before it is declared unhealthy. In this case, the health status changes from success to fail. Valid values: 2 to 10. | 3 |
HealthCheckConnectTimeout | integer | No | The maximum timeout period of a health check. Unit: seconds Valid values: 1 to 300. Default value: 5**** | 100 |
HealthCheckInterval | integer | No | The interval at which health checks are performed. Unit: seconds. Default value: 5.****
| 5 |
HealthCheckDomain | string | No | The domain name that is used for health checks. Valid values:
Note
This parameter takes effect only if you set HealthCheckType to HTTP.
| $SERVER_IP |
HealthCheckUrl | string | No | The URL that is used for health checks. The URL must be 1 to 80 characters in length, and can contain letters, digits, and the following special characters: Note
This parameter takes effect only if you set HealthCheckType to HTTP.
| /test/index.html |
HealthCheckHttpCode | array | No | The HTTP status codes to return for health checks. Separate multiple HTTP status codes with commas (,). Valid values: http_2xx (default), http_3xx, http_4xx, and http_5xx. Note
This parameter takes effect only if you set HealthCheckType to HTTP.
| |
HealthCheckHttpCode | string | No | The HTTP status code to return for health checks. Separate multiple HTTP status codes with commas (,). Valid values: http_2xx (default), http_3xx, http_4xx, and http_5xx. Note
This parameter takes effect only if you set HealthCheckType to HTTP.
| http_2xx |
HttpCheckMethod | string | No | The HTTP method that is used for health checks. Valid values: GET and HEAD. Note
This parameter takes effect only if you set HealthCheckType to HTTP.
| GET |
HealthCheckReq | string | No | The request string of UDP health checks. The string must be 1 to 512 characters in length, and can contain letters and digits. | hello |
HealthCheckExp | string | No | The response string of UDP health checks. The string must be 1 to 512 characters in length, and can contain letters and digits. | ok |
RegionId | string | No | The region ID of the NLB instance. You can call the DescribeRegions operation to obtain the region ID. | cn-hangzhou |
DryRun | boolean | No | Specifies whether to perform only a dry run, without performing the actual request. Valid values:
| false |
ClientToken | string | No | The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters. Note
If you do not specify this parameter, the system automatically uses the request ID as the client token. The request ID may be different for each request.
| 123e4567-e89b-12d3-a456-426655440000 |
Response parameters
Examples
Sample success responses
JSON
format
{
"RequestId": "54B48E3D-DF70-471B-AA93-08E683A1B45",
"ServerGroupId": "sgp-atstuj3rtoptyui****",
"JobId": "72dcd26b-f12d-4c27-b3af-18f6aed5****"
}
Error codes
HTTP status code | Error code | Error message | Description |
---|---|---|---|
400 | IllegalParam.%s | The param of %s is illegal. | - |
400 | SystemBusy | System is busy, please try again later. | - |
400 | IllegalParam.healthCheckDomain | The parameter of healthCheckConfig.healthCheckDomain is illegal. | The healthCheckDomain in the health check configuration is invalid. Check the input parameters. |
400 | IlleagalParam.healthCheckUrl | The parameter of healthCheckUrl in healthCheckConfig is illegal. | The URL of the health check used in the health check setting is invalid. |
400 | OperationDenied.UidNotAllowQuic29 | The operation is not allowed because of uid not allow quic29 version. | - |
400 | IllegalParam | The param of %s is illegal. | - |
400 | DryRunOperation | Request validation has been passed with DryRun flag set. | Request validation has been passed with DryRun flag set. |
400 | IllegalParam.ServerGroupName | The param of ServerGroupName is illegal. | - |
400 | IllegalParam.PreserveClientIpSwitch | The server group associated with the tcpssl listener does not support enabling PreserveClientIp. | The server group associated with the tcpssl listener does not support enabling PreserveClientIp. |
403 | Forbidden.NoPermission | Authentication is failed for NoPermission. | Authentication is failed for NoPermission. |
404 | ResourceNotFound.serverGroup | The specified resource of serverGroup is not found. | The specified resource of serverGroup is not found. Please check the input parameters. |
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|---|---|
2024-06-25 | The Error code has changed | View Change Details |
2024-03-14 | The Error code has changed | View Change Details |
2023-12-28 | The Error code has changed | View Change Details |
2023-12-18 | The Error code has changed | View Change Details |
2023-10-09 | The Error code has changed | View Change Details |
2023-10-07 | The Error code has changed | View Change Details |
2023-09-27 | The Error code has changed. The request parameters of the API has changed | View Change Details |
2023-09-26 | The Error code has changed | View Change Details |
2023-09-18 | The request parameters of the API has changed | View Change Details |