All Products
Search
Document Center

Server Load Balancer:DescribeRules

Last Updated:Mar 14, 2024

Queries the forwarding rules that are configured for a specified listener.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer.

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.
OperationAccess levelResource typeCondition keyAssociated operation
slb:DescribeRulesREAD
  • loadbalancer
    acs:slb:{#regionId}:{#accountId}:loadbalancer/{#loadbalancerId}
  • slb:tag
none

Request parameters

ParameterTypeRequiredDescriptionExample
RegionIdstringYes

The ID of the region where the SLB instance is deployed.

You can call the DescribeRegions operation to query the most recent region list.

cn-hangzhou
LoadBalancerIdstringYes

The ID of the SLB instance.

lb-bp1ca0zt07t934****
ListenerProtocolstringNo

The frontend listener protocol that is used by the SLB instance.

Note This parameter is required when listeners that use different protocols listen on the same port.
https
ListenerPortintegerYes

The frontend listener port that is used by the Server Load Balancer (SLB) instance.

Valid values: 1 to 65535.

90

Response parameters

ParameterTypeDescriptionExample
object
RequestIdstring

The ID of the request.

9DEC9C28-AB05-4DDF-9A78-6B08EC9CE18C
Rulesobject []

The list of forwarding rules.

HealthCheckHttpCodestring

The HTTP status code that indicates a successful health check. Multiple HTTP status codes are separated by commas (,). Default value: http_2xx.

Valid values: http_2xx, http_3xx, http_4xx, and http_5xx.

Note If you set the HealthCheck parameter to on, this parameter is required.
http_3xx
VServerGroupIdstring

The ID of the destination vServer group specified in the forwarding rule.

rsp-6cejjzl****
Domainstring

The requested domain name specified in the forwarding rule.

test.com
Cookiestring

The cookie that is configured on the backend server.

The value must be 1 to 200 characters in length, and can contain only ASCII letters and digits. It cannot contain commas (,), semicolons (;), or spaces. It cannot start with a dollar sign ($).

Note If you set the StickySession parameter to on and the StickySessionType parameter to server, this parameter is required.
23
HealthCheckIntervalinteger

The time interval between two consecutive health checks.

Valid values: 1 to 50. Unit: seconds.

Note If you set the HealthCheck parameter to on, this parameter is required.
5
Urlstring

The requested path specified in the forwarding rule.

/cache
HealthCheckURIstring

The URI that is used for health checks.

Note If you set the HealthCheck parameter to on, this parameter is required.
/example
StickySessionTypestring

The method that is used to handle a cookie. Valid values:

  • insert: inserts a cookie into the response. SLB inserts a cookie (SERVERID) into the first HTTP or HTTPS response packet that is sent to a client. The next request from the client will contain this cookie, and the listener will distribute this request to the recorded backend server.
  • server: rewrites a cookie. When SLB detects a user-defined cookie, SLB overwrites the original cookie with the user-defined cookie. The next request from the client contains the user-defined cookie, and the listener distributes the request to the recorded backend server.
Note If you set the StickySession parameter to on, this parameter is required.
insert
RuleNamestring

The name of the forwarding rule. The name must be 1 to 80 characters in length, and can contain only letters, digits, hyphens (-), forward slashes (/), periods (.),and underscores (_).

Note The name of each forwarding rule must be unique within a listener.
Rule2
RuleIdstring

The ID of the forwarding rule.

rule-tybqi6****
HealthCheckConnectPortinteger

The port of the backend server that is used for health check.

Valid values: 1 to 65535.

Note If you set the HealthCheck parameter to on, this parameter is required. If you left this parameter empty and the HealthCheck parameter is set to on, the backend port configuration of the listener is used by default.
45
Schedulerstring

The scheduling algorithm. Valid values:

  • wrr (default): Backend servers that have higher weights receive more requests than backend servers that have lower weights.
  • rr: Requests are distributed to backend servers in sequence.
Note If you set the ListenerSync parameter to off, this parameter is required. If you set the parameter to on, the configuration of the listener is used.
wrr
HealthCheckTimeoutinteger

The timeout period for a health check response. If the backend Elastic Compute Service (ECS) instance does not send an expected response within the specified period of time, the health check fails.

Valid values: 1 to 300. Unit: seconds.

Note If the value of the HealthCHeckTimeout parameter is smaller than that of the HealthCheckInterval parameter, the value of the HealthCHeckTimeout parameter is ignored and the value of the HealthCheckInterval parameter is regarded as the waiting period. If you set the HealthCheck parameter to on, this parameter is required.
34
ListenerSyncstring

Indicates whether the forwarding rule uses the scheduling algorithm, session persistence, and health check configurations of the listener.

Valid values: on and off.

  • off: does not use the configurations of the listener. You can customize health check and session persistence configurations for the forwarding rule.
  • on: uses the configurations of the listener.
off
HealthyThresholdinteger

Specifies the number of successful health checks that must be consecutively performed before a backend server can be declared healthy (from fail to success).

Valid values: 2 to 10.

Note If you set the HealthCheck parameter to on, this parameter is required.
5
CookieTimeoutinteger

The timeout period of a cookie. Valid values: 1 to 86400. Unit: seconds.

Note If you set the StickySession parameter to on and the StickySessionType parameter to insert, this parameter is required.
56
HealthCheckDomainstring

The domain name that is used for health checks. Valid values:

  • $_ip: The private IP address of the backend server.

    If you do not set this parameter or set the parameter to $_ip, the SLB instance uses the private IP address of each backend server as the domain name for health checks.

  • domain: The domain name must be 1 to 80 characters in length. The domain name can contain only letters, digits, periods (.),and hyphens (-).

Note If you set the HealthCheck parameter to on, this parameter is required.
www.domain.com
UnhealthyThresholdinteger

Specifies the number of times that a healthy backend server must consecutively fail health checks before it is declared unhealthy (from success to fail).

Valid values: 2 to 10

Note If you set the HealthCheck parameter to on, this parameter is required.
2
StickySessionstring

Specifies whether to enable session persistence.

Valid values: on and off.

Note If you set the ListenerSync parameter to off, this parameter is required. If you set the parameter to on, the configuration of the listener is used.
off
HealthCheckstring

Indicates whether health checks are enabled.

Valid values: on and off.

Note If you set the ListenerSync parameter to off, this parameter is required. If you set the parameter to on, the configuration of the listener is used.
off

Examples

Sample success responses

JSONformat

{
  "RequestId": "9DEC9C28-AB05-4DDF-9A78-6B08EC9CE18C",
  "Rules": {
    "Rule": [
      {
        "HealthCheckHttpCode": "http_3xx",
        "VServerGroupId": "rsp-6cejjzl****",
        "Domain": "test.com",
        "Cookie": "23",
        "HealthCheckInterval": 5,
        "Url": "/cache",
        "HealthCheckURI": "/example",
        "StickySessionType": "insert",
        "RuleName": "Rule2",
        "RuleId": "rule-tybqi6****",
        "HealthCheckConnectPort": 45,
        "Scheduler": "wrr",
        "HealthCheckTimeout": 34,
        "ListenerSync": "off",
        "HealthyThreshold": 5,
        "CookieTimeout": 56,
        "HealthCheckDomain": "www.domain.com",
        "UnhealthyThreshold": 2,
        "StickySession": "off",
        "HealthCheck": "off"
      }
    ]
  }
}

Error codes

HTTP status codeError codeError message
400TooManyListenersMore than 1 listener is found, please be more specified.

For a list of error codes, visit the Service error codes.