All Products
Search
Document Center

Server Load Balancer:DescribeRules

Last Updated:Oct 15, 2024

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

Debugging

You can run this interface directly in OpenAPI Explorer, saving you the trouble of calculating signatures. After running successfully, OpenAPI Explorer can automatically generate SDK code samples.

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:DescribeRulesget
  • 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
Rulesarray<object>

The forwarding rules.

Ruleobject
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 backend port that is used for health checks.

Valid values: 1 to 65535.

Note If you set the HealthCheck parameter to on, this parameter is required. If this parameter is empty but HealthCheck is set to on, the listener port is used for health checks.
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 of a health check response. If a backend ECS instance does not respond within the specified timeout period, the ECS instance fails the health check. Unit: seconds

Valid values: 1 to 300.

Note When you set the HealthCheck parameter to on, this parameter takes effect.
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.