Load balancer pools#
Load balancer pools must be configured in advance by your Network Security team to be eligible for use with RackConnect. If you do not see a pool that you expect to see, contact your Support team for assistance.
The load_balancer_pool_id returned by these calls is automatically generated by the RackConnect automation and remains constant unless the load balancer pool is renamed on your hardware load balancer.
All load balancer pools currently return a status of ACTIVE. Future features might introduce additional statuses.
List all load balancer pools#
GET /v3/{tenant_id}/load_balancer_pools
This operation lists details for all load balancer pools available to the specified tenant_id
.
This table shows the possible response codes for this operation:
Response Code |
Name |
Description |
---|---|---|
200 |
OK |
Success. |
400 |
Bad request |
The input was not in the correct format. |
404 |
Not found |
The requested item was not found. |
500 |
Internal server error |
An unexpected error has occurred. |
Request#
This table shows the URI parameters for the request:
Name |
Type |
Description |
---|---|---|
{tenant_id} |
String (Required) |
Specifies the unique identifier of the tenant or account in a multi- tenancy cloud. |
Example List all load balancer pools: JSON request
curl --include \
'http://dfw.rackconnect.api.rackspacecloud.com/v3/{tenant_id}/load_balancer_pools'
Response#
Example List all load balancer pools: JSON response
200 (OK)
Content-Type: application/json
[
{
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2",
"name": "RCv3Test",
"node_counts": {
"cloud_servers": 3,
"external": 4,
"total": 7
},
"port": 80,
"status": "ACTIVE",
"status_detail": null,
"virtual_ip": "203.0.113.5"
},
{
"id": "33021100-4abf-4836-9080-465a6d87ab68",
"name": "RCv3Test2",
"node_counts": {
"cloud_servers": 1,
"external": 0,
"total": 1
},
"port": 80,
"status": "ACTIVE",
"status_detail": null,
"virtual_ip": "203.0.113.7"
},
{
"id": "b644350a-301b-47b5-a411-c6e0f933c347",
"name": "RCv3Test3",
"node_counts": {
"cloud_servers": 2,
"external": 3,
"total": 5
},
"port": 443,
"status": "ACTIVE,
"status_detail": null",
"virtual_ip": "203.0.113.15"
}
]
List one load balancer pool#
GET /v3/{tenant_id}/load_balancer_pools/{load_balancer_pool_id}
This operation provides basic information about the load balancer pool
identified by the specified load_balancer_pool_id
.
This table shows the possible response codes for this operation:
Response Code |
Name |
Description |
---|---|---|
200 |
OK |
Success. |
400 |
Bad request |
The input was not in the correct format. |
404 |
Not found |
The requested item was not found. |
500 |
Internal server error |
An unexpected error has occurred. |
Request#
This table shows the URI parameters for the request:
Name |
Type |
Description |
---|---|---|
{tenant_id} |
String (Required) |
Specifies the unique identifier of the tenant or account in a multi- tenancy cloud. |
{load_balancer_pool_id} |
String (Optional) |
Specifies the unique identifier of a load balancer pool. |
Example List one load balancer pool: JSON request
curl --include \
'https://dfw.rackconnect.api.rackspacecloud.com/v3/{tenant_id}/load_balancer_pools/{id}'
Response#
Example List one load balancer pool: JSON response
200 (OK)
Content-Type: application/json
[
{
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2",
"name": "RCv3Test",
"node_counts": {
"cloud_servers": 3,
"external": 4,
"total": 7
},
"port": 80,
"status": "ACTIVE",
"status_detail": null,
"virtual_ip": "203.0.113.5"
}
]
List the nodes in one load balancer pool#
GET /v3/{tenant_id}/load_balancer_pools/nodes
This operation lists the nodes in one load balancer pool identified by load_balancer_pool_id
.
This table shows the possible response codes for this operation:
Response Code |
Name |
Description |
---|---|---|
200 |
OK |
Success. |
Request#
This table shows the URI parameters for the request:
Name |
Type |
Description |
---|---|---|
{tenant_id} |
String (Required) |
Specifies the unique identifier of the tenant or account in a multi- tenancy cloud. |
Example List the nodes in one load balancer pool: JSON request
curl --include \
'https://dfw.rackconnect.api.rackspacecloud.com/v3/{tenant_id}/load_balancer_pools/{load_balancer_pool_id}/nodes'
Response#
Example List the nodes in one load balancer pool: JSON response
200 (OK)
Content-Type: application/json
[
{
"created": "2014-05-30T03:23:42Z",
"cloud_server": {
"id": "d95ae0c4-6ab8-4873-b82f-f8433840cff2"
},
"id": "1860451d-fb89-45b8-b54e-151afceb50e5",
"load_balancer_pool": {
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2"
},
"status": "ACTIVE",
"status_detail": null,
"updated": "2014-05-30T03:24:18Z"
},
{
"created": "2014-05-31T08:23:12Z",
"cloud_server": {
"id": "f28b870f-a063-498a-8b12-7025e5b1caa6"
},
"id": "b70481dd-7edf-4dbb-a44b-41cc7679d4fb",
"load_balancer_pool": {
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2"
},
"status": "ADDING",
"status_detail": null,
"updated": "2014-05-31T08:23:26Z"
},
{
"created": "2014-05-31T08:23:18Z",
"cloud_server": {
"id": "a3d3a6b3-e4e4-496f-9a3d-5c987163e458"
},
"id": "ced9ddc8-6fae-4e72-9457-16ead52b5515",
"load_balancer_pool": {
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2"
},
"status": "ADD_FAILED",
"status_detail": "Unable to communicate with network device",
"updated": "2014-05-31T08:24:36Z"
}
]
Show details for one load balancer pool#
GET /v3/{tenant_id}/load_balancer_pools/details
This operation provides detailed information about all the nodes in one load balancer pool
identified by load_balancer_pool_id
.
This table shows the possible response codes for this operation:
Response Code |
Name |
Description |
---|---|---|
200 |
OK |
Success. |
400 |
Bad request |
The input was not in the correct format. |
404 |
Not found |
The requested item was not found. |
500 |
Internal server error |
An unexpected error has occurred. |
Request#
This table shows the URI parameters for the request:
Name |
Type |
Description |
---|---|---|
{tenant_id} |
String (Required) |
Specifies the unique identifier of the tenant or account in a multi- tenancy cloud. |
Example Show details for one load balancer pool: JSON request
curl --include \
'https://dfw.rackconnect.api.rackspacecloud.com/v3/{tenant_id}/load_balancer_pools/{load_balancer_pool_id}/nodes/details'
Response#
Example Show details for one load balancer pool: JSON response
200 (OK)
Content-Type: application/json
[
{
"created": "2014-05-30T03:23:42Z",
"cloud_server": {
"cloud_network": {
"cidr": "192.168.100.0/24",
"created": "2014-05-25T01:23:42Z",
"id": "07426958-1ebf-4c38-b032-d456820ca21a",
"name": "RC-CLOUD",
"private_ip_v4": "192.168.100.5",
"updated": "2014-05-25T02:28:44Z"
},
"created": "2014-05-30T02:18:42Z",
"id": "d95ae0c4-6ab8-4873-b82f-f8433840cff2",
"name": "RCv3TestServer1",
"updated": "2014-05-30T02:19:18Z"
},
"id": "1860451d-fb89-45b8-b54e-151afceb50e5",
"load_balancer_pool": {
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2",
"name": "RCv3Test",
"node_counts": {
"cloud_servers": 3,
"external": 4,
"total": 7
},
"port": 80,
"status": "ACTIVE",
"status_detail": null,
"virtual_ip": "203.0.113.5"
},
"status": "ACTIVE",
"status_detail": null,
"updated": "2014-05-30T03:24:18Z"
},
{
"created": "2014-05-31T08:23:12Z",
"cloud_server": {
"cloud_network": {
"cidr": "192.168.100.0/24",
"created": "2014-05-25T01:23:42Z",
"id": "07426958-1ebf-4c38-b032-d456820ca21a",
"name": "RC-CLOUD",
"private_ip_v4": "192.168.100.5",
"updated": "2014-05-25T02:28:44Z"
},
"created": "2014-05-30T02:19:42Z",
"id": "f28b870f-a063-498a-8b12-7025e5b1caa6",
"name": "RCv3TestServer2",
"updated": "2014-05-30T02:20:18Z"
},
"id": "b70481dd-7edf-4dbb-a44b-41cc7679d4fb",
"load_balancer_pool": {
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2",
"name": "RCv3Test",
"node_counts": {
"cloud_servers": 3,
"external": 4,
"total": 7
},
"port": 80,
"status": "ACTIVE",
"status_detail": null,
"virtual_ip": "203.0.113.5"
},
"status": "ADDING",
"status_detail": null,
"updated": "2014-05-31T08:23:26Z"
},
{
"created": "2014-05-31T08:23:18Z",
"cloud_server": {
"cloud_network": {
"cidr": "192.168.100.0/24",
"created": "2014-05-25T01:23:42Z",
"id": "07426958-1ebf-4c38-b032-d456820ca21a",
"name": "RC-CLOUD",
"private_ip_v4": "192.168.100.5",
"updated": "2014-05-25T02:28:44Z"
},
"created": "2014-05-30T02:21:42Z",
"id": "a3d3a6b3-e4e4-496f-9a3d-5c987163e458",
"name": "RCv3TestServer3",
"updated": "2014-05-30T02:22:18Z"
},
"id": "ced9ddc8-6fae-4e72-9457-16ead52b5515",
"load_balancer_pool": {
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2",
"name": "RCv3Test",
"node_counts": {
"cloud_servers": 3,
"external": 4,
"total": 7
},
"port": 80,
"status": "ACTIVE",
"status_detail": null,
"virtual_ip": "203.0.113.5"
},
"status": "ADD_FAILED",
"status_detail": "Unable to communicate with network device",
"updated": "2014-05-31T08:24:36Z"
}
]
Add node to load balancer pool#
POST /v3/{tenant_id}/load_balancer_pools/nodes
This operation adds a node to one load balancer pool identified by load_balancer_pool_id
.
This table shows the possible response codes for this operation:
Response Code |
Name |
Description |
---|---|---|
201 |
OK |
Created |
400 |
Bad request |
The input was not in the correct format. |
409 |
Add node to load balancer pool |
Conflict Cloud Server {cloud_server_id} does not exist or Cloud Server {cloud_server_id} is already a member of Load Balancer Pool {load_balancer_pool_id} or Load Balancer Pool {load_balancer_pool_id} is not in an ACTIVE state |
500 |
Internal server error |
An unexpected error has occurred. |
Request#
This table shows the URI parameters for the request:
Name |
Type |
Description |
---|---|---|
{tenant_id} |
String (Required) |
Specifies the unique identifier of the tenant or account in a multi- tenancy cloud. |
Example Add node to load balancer pool: JSON request
{
"cloud_server": {
"id": "d95ae0c4-6ab8-4873-b82f-f8433840cff2"
}
}
Response#
Example Add node to load balancer pool: JSON response
201 (Created)
Content-Type: application/json
{
"created": "2014-05-30T03:23:42Z",
"cloud_server": {
"id": "d95ae0c4-6ab8-4873-b82f-f8433840cff2"
},
"id": "1860451d-fb89-45b8-b54e-151afceb50e5",
"load_balancer_pool": {
"id": "d6d3aa7c-dfa5-4e61-96ee-1d54ac1075d2"
},
"status": "ADDING",
"status_detail": null,
"updated": null
}