Updated on 2024-06-20 GMT+08:00

Creating a Backend Server Group

Scenario

To route requests, you need to associate at least one backend server group to each listener.

You can create a backend server group for a load balancer in any of the ways described in Table 1.

Table 1 Creating a backend server group

Scenario

Procedure

Creating a backend server group and associating it with a load balancer

Procedure

Creating a backend server group when adding a listener

You can add listeners using different protocols as required. For details, see Listener Overview.

References are as follows:

Changing the backend server group associated with the listener

Changing a Backend Server Group

Constraints

The backend protocol of the new backend server group must match the frontend protocol of the listener as described in Table 2.

Table 2 The frontend and backend protocol

Frontend Protocol

Backend Protocol

TCP

TCP

UDP

  • UDP
  • QUIC

HTTP

HTTP

HTTPS

  • HTTP
  • HTTPS

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Click in the upper left corner to display Service List and choose Networking > Elastic Load Balance.
  4. In the navigation pane on the left, choose Elastic Load Balance > Backend Server Groups.
  5. Click Create Backend Server Group in the upper right corner.
  6. Configure the routing policy based on Table 3.
    Table 3 Parameters required for configuring a routing policy

    Parameter

    Description

    Load Balancing Type

    Specifies the type of load balancers that can use the backend server group. Select Dedicated.

    Load Balancer

    Specifies whether to associate a load balancer.

    You can associate an existing dedicated load balancer when you create a backend server group or associate one later.

    • Associate later
    • Associate existing

    Forwarding Mode

    Specifies the forwarding mode to distribute traffic. There are two options: Load balancing and Active/Standby.

    • Load balancing: You can add one or more backend servers to the backend server group.
    • Active/Standby: You can add only two backend servers to the backend server group, one acting as the active server and the other as the standby server. If the active server is faulty, traffic is forwarded to the standby server, improving service reliability.

    Backend Server Group Type

    Specifies the type of the backend server group.

    • Hybrid: You can add ECSs and supplementary network interfaces as backend servers, or add IP addresses as servers when IP as a Backend is enabled.

      When you create a hybrid backend server group, you must specify a VPC and associate the backend server group with a load balancer in this VPC.

    • IP as a backend server: You can add IP addresses as backend servers only when you enable IP as a Backend.

    Backend Server Group Name

    Specifies the name of the backend server group.

    VPC

    Specifies the VPC where the backend server group works. You can associate the backend server group with a load balancer in this VPC.

    This parameter is mandatory if you select Hybrid for Backend Server Group Type.

    You can select an existing VPC or create a new one.

    For more information about VPC, see the Virtual Private Cloud User Guide.

    Backend Protocol

    Specifies the protocol that backend servers in the backend server group use to receive requests from the listeners. The protocol varies depending on the forwarding mode:

    • Load balancing: HTTP, HTTPS, gRPC, TCP, UDP, and QUIC
    • Active/Standby: TCP, UDP, and QUIC

    Forward to Same Port

    If this option is enabled, you do not need to specify a backend port when you add a backend server. The listener routes the requests to the backend server over the same port as the frontend port.

    This option cannot be disabled after being enabled.

    NOTE:

    This option is available only for TCP, UDP, or QUIC backend server groups associated with a dedicated load balancer.

    Load Balancing Algorithm

    Specifies the algorithm used by the load balancer to distribute traffic. The following options are available:

    • Weighted round robin: Requests are routed to different servers based on their weights. Backend servers with higher weights receive proportionately more requests, whereas equal-weighted servers receive the same number of requests.
    • Weighted least connections: In addition to the number of connections, each server is assigned a weight based on its capacity. Requests are routed to the server with the lowest connections-to-weight ratio.
    • Source IP hash: Allows requests from different clients to be routed based on source IP addresses and ensures that requests from the same client are forwarded to the same server.
    • Connection ID: This algorithm is available when you have selected QUIC for Backend Protocol. This algorithm allows requests with different connection IDs to be routed to different backend servers and ensures that requests with the same connection ID are routed to the same backend server.

    For more information about load balancing algorithms, see Load Balancing Algorithms.

    Sticky Session

    Specifies whether to enable sticky sessions if you have selected Weighted round robin, Connection ID, or Weighted least connections for Load Balancing Algorithm.

    If you enable sticky sessions, all requests from the same client during one session are sent to the same backend server.

    For more information about sticky sessions, see Sticky Session.

    NOTE:

    TLS backend server groups do not support sticky sessions.

    Sticky Session Type

    Specifies the sticky session type.

    This parameter is mandatory if Sticky Session is enabled. You can select one of the following type:

    • Source IP address: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The system allocates the client to a particular server based on the generated key. This allows requests from the same IP address are forwarded to the same backend server.
    • Load balancer cookie: The load balancer generates a cookie after receiving a request from the client. All subsequent requests with the cookie are routed to the same backend server.
    NOTE:
    • Source IP address is available when you have selected TCP, QUIC, or UDP for Backend Protocol.
    • Load balancer cookie is available when you have selected HTTP or HTTPS for Backend Protocol.

    Stickiness Duration (min)

    Specifies the minutes that sticky sessions are maintained. This parameter is mandatory if Sticky Session is enabled.

    • Sticky sessions at Layer 4: 1 to 60
    • Sticky sessions at Layer 7: 1 to 1440

    Slow Start

    Specifies whether to enable slow start. This parameter is optional if you have selected Weighted round robin for Load Balancing Algorithm.

    After you enable this option, the load balancer linearly increases the proportion of requests to backend servers in this mode.

    When the slow start duration elapses, the load balancer sends full share of requests to backend servers and exits the slow start mode.

    NOTE:

    Slow start is only available for HTTP and HTTPS backend server groups of dedicated load balancers.

    For more information about the slow start, see Slow Start (Dedicated Load Balancers).

    Slow Start Duration (s)

    Specifies how long the slow start will last, in seconds.

    This parameter is mandatory if Slow Start is enabled.

    Description

    Provides supplementary information about the backend server group.

  7. Click Next to add backend servers and configure health check.

    Add cloud servers, supplementary network interfaces, or IP addresses to this backend server group. For details, see Backend Server Overview.

    Configure health check for the backend server group based on Table 4. For more information about health checks, see Health Check.
    Table 4 Parameters required for configuring a health check

    Parameter

    Description

    Health Check

    Specifies whether to enable health checks.

    If the health check is enabled, click next to Advanced Settings to set health check parameters.

    Health Check Protocol

    Specifies the protocol that will be used by the load balancer to check the health of backend servers.

    • The backend protocol can be TCP, HTTP, or HTTPS.
    • If the protocol of the backend server group is UDP and QUIC, the health check protocol is UDP by default and cannot be changed.

    Domain Name

    Specifies the domain name that will be used for health checks.

    This parameter is mandatory if the health check protocol is HTTP or HTTPS.

    • By default, the private IP address of each backend server is used.
    • You can also specify a domain name that consists of at least two labels separated by periods (.). Use only letters, digits, and hyphens (-). Do not start or end strings with a hyphen. Max total: 100 characters. Max label: 63 characters.

    Health Check Port

    Specifies the port that will be used by the load balancer to check the health of backend servers. The port number ranges from 1 to 65535.

    NOTE:

    By default, the service port on each backend server is used. You can also specify a port for health checks.

    Path

    Specifies the health check URL, which is the destination on backend servers for health checks. This parameter is mandatory if the health check protocol is HTTP or HTTPS.

    The path can contain 1 to 80 characters and must start with a slash (/).

    The path can contain letters, digits, hyphens (-), slashes (/), periods (.), question marks (?), number signs (#), percent signs (%), ampersands (&), and extended character sets _;~!. () *[]@$^:',+

    Interval (s)

    Specifies the maximum time between two consecutive health checks, in seconds.

    The interval ranges from 1 to 50.

    Timeout (s)

    Specifies the maximum time required for waiting for a response from the health check, in seconds. The value ranges from 1 to 50.

    Healthy Threshold

    Specifies the number of consecutive successful health checks required for declaring a backend server healthy. The value ranges from 1 to 10.

    Unhealthy Threshold

    Specifies the number of consecutive failed health checks required for declaring a backend server unhealthy. The value ranges from 1 to 10.

    Status Code

    Specifies the status codes that will be returned to the load balancer to indicate the health of backend servers. This parameter is available only when you set the health check protocol to HTTP or HTTPS.

    You can enter a unique number or a positive number range within the status code range, for example, 0-10 and 200-300. A maximum of five HTTP status codes are supported. If there is more than one status code, press Enter to separate them.

    • If the health check protocol is HTTP or HTTPS, the status code ranges from 200 to 599.
    • When the gRPC protocol is used, the status code ranges from 0 to 99.
    NOTE:

    This feature will be available in more regions. See details on the management console.

  8. Click Next.
  9. Confirm the specifications and click Create Now.

Related Operations

You can associate the backend server group with the listener of a dedicated load balancer in either ways listed in Table 1.