Algorithms¶
All load balancers utilize an algorithm that defines how traffic should
be directed between back-end nodes. The default algorithm for newly
created load balancers is RANDOM, which can be overridden at
creation time or changed after the load balancer has been initially
provisioned. The algorithm name is to be constant within a major
revision of the load balancing API, though new algorithms may be created
with a unique algorithm name within a given major revision of the
service API.
Table. Load balancing algorithms
Name |
Description |
|---|---|
|
The node with the lowest number of connections receives requests. |
|
Back-end servers are selected at random. |
|
Connections are routed to each of the back-end servers in turn. |
|
Each request is assigned to a node based on the number of concurrent connections to the node and its weight. |
|
A round robin algorithm, but with different proportions of traffic beingdirected to the back-end nodes. Weights must be defined as part of the load balancer’s node configuration. |
List load balancing algorithms¶
GET /v1.0/{account}/loadbalancers/algorithms
Lists all supported load balancing algorithms.
The following table shows the possible response codes for this operation:
Response Code |
Name |
Description |
|---|---|---|
200 |
Success |
Request succeeded. |
400 |
Bad Request |
The request is missing one or more elements, or the values of some elements are invalid. |
401 |
Unauthorized |
You are not authorized to complete this operation. This error can occur if the request is submitted with an invalid authentication token. |
404 |
Not Found |
The requested item was not found. |
413 |
Over Limit |
The number of items returned is above the allowed limit. |
422 |
ImmutableEntity |
This fault is returned when a user attempts to modify an item that is not currently in a state that allows modification. For example, load balancers in a status of PENDING_UPDATE,BUILD, or DELETED may not be modified. |
500 |
Load Balancer Fault |
The load balancer has experienced a fault. |
503 |
Service Unavailable |
The service is not available. |
Request¶
The following table shows the URI parameters for the request:
Name |
Type |
Description |
|---|---|---|
{account} |
String |
The ID for the tenant or account in a multi- tenancy cloud. |
This operation does not accept a request body.
Response¶
Example List load balancing algorithms: JSON response
{"algorithms": [
{
"name": "LEAST_CONNECTIONS"
},
{
"name": "RANDOM"
},
{
"name": "ROUND_ROBIN"
},
{
"name": "WEIGHTED_LEAST_CONNECTIONS"
},
{
"name": "WEIGHTED_ROUND_ROBIN"
}
]
}
Example List load balancing algorithms: XML response
<algorithms xmlns="http://docs.openstack.org/loadbalancers/api/v1.0">
<algorithm name="LEAST_CONNECTIONS" />
<algorithm name="RANDOM" />
<algorithm name="ROUND_ROBIN" />
<algorithm name="WEIGHTED_LEAST_CONNECTIONS" />
<algorithm name="WEIGHTED_ROUND_ROBIN" />
</algorithms>