diff --git a/v2.0/samples/loadbalancer/members-list-res.json b/v2.0/samples/loadbalancer/members-list-res.json
index a9062a6..30a118c 100644
--- a/v2.0/samples/loadbalancer/members-list-res.json
+++ b/v2.0/samples/loadbalancer/members-list-res.json
@@ -1,15 +1,24 @@
{
"members":[
{
- "status":"PENDING_CREATE",
- "protocol_port":8080,
+ "status":"ACTIVE",
"weight":1,
"admin_state_up":true,
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
- "pool_id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
- "address":"10.0.0.5",
- "status_description":null,
- "id":"48a471ea-64f1-4eb6-9be7-dae6bbe40a0f"
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
+ "pool_id":"72741b06-df4d-4715-b142-276b6bce75ab",
+ "address":"10.0.0.4",
+ "protocol_port":80,
+ "id":"701b531b-111a-4f21-ad85-4795b7b12af6"
+ },
+ {
+ "status":"ACTIVE",
+ "weight":1,
+ "admin_state_up":true,
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
+ "pool_id":"72741b06-df4d-4715-b142-276b6bce75ab",
+ "address":"10.0.0.3",
+ "protocol_port":80,
+ "id":"beb53b4d-230b-4abd-8118-575b8fa006ef"
}
]
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/pools-create-req.json b/v2.0/samples/loadbalancer/pools-create-req.json
index 7d75651..e826b51 100644
--- a/v2.0/samples/loadbalancer/pools-create-req.json
+++ b/v2.0/samples/loadbalancer/pools-create-req.json
@@ -1,9 +1,9 @@
{
"pool":{
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "lb_method":"SOURCE_IP",
- "protocol":"HTTP",
- "name":"mypool",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "lb_method":"ROUND_ROBIN",
+ "protocol":"TCP",
+ "name":"NewPool",
"admin_state_up":true
}
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/pools-create-res.json b/v2.0/samples/loadbalancer/pools-create-res.json
index 47c9b35..bcd850a 100644
--- a/v2.0/samples/loadbalancer/pools-create-res.json
+++ b/v2.0/samples/loadbalancer/pools-create-res.json
@@ -1,25 +1,20 @@
{
"pool":{
"status":"PENDING_CREATE",
- "lb_method":"SOURCE_IP",
- "protocol":"HTTP",
+ "lb_method":"STATIC_IP",
+ "protocol":"TCP",
"description":"",
"health_monitors":[
],
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
"admin_state_up":true,
- "name":"mypool",
- "health_monitors_status":[
-
- ],
+ "name":"NewPool",
"members":[
],
- "provider":"haproxy",
- "status_description":null,
- "id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
+ "id":"a224402b-794b-4c0c-9d08-d95640a6f5a1",
"vip_id":null
}
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/pools-list-res.json b/v2.0/samples/loadbalancer/pools-list-res.json
index 566b0ac..a67cad9 100644
--- a/v2.0/samples/loadbalancer/pools-list-res.json
+++ b/v2.0/samples/loadbalancer/pools-list-res.json
@@ -1,27 +1,24 @@
{
"pools":[
{
- "status":"PENDING_CREATE",
- "lb_method":"SOURCE_IP",
+ "status":"ACTIVE",
+ "lb_method":"ROUND_ROBIN",
"protocol":"HTTP",
"description":"",
"health_monitors":[
-
+ "466c8345-28d8-4f84-a246-e04380b0461d",
+ "5d4b5228-33b0-4e60-b225-9b727c1a20e7"
],
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
"admin_state_up":true,
- "name":"mypool",
- "health_monitors_status":[
-
- ],
+ "name":"app_pool",
"members":[
-
+ "701b531b-111a-4f21-ad85-4795b7b12af6",
+ "beb53b4d-230b-4abd-8118-575b8fa006ef"
],
- "provider":"haproxy",
- "status_description":null,
- "id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
- "vip_id":null
+ "id":"72741b06-df4d-4715-b142-276b6bce75ab",
+ "vip_id":"4ec89087-d057-4e2c-911f-60a3b47ee304"
}
]
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/pools-show-res.json b/v2.0/samples/loadbalancer/pools-show-res.json
index 47c9b35..5d64dc2 100644
--- a/v2.0/samples/loadbalancer/pools-show-res.json
+++ b/v2.0/samples/loadbalancer/pools-show-res.json
@@ -1,25 +1,22 @@
{
"pool":{
- "status":"PENDING_CREATE",
- "lb_method":"SOURCE_IP",
+ "status":"ACTIVE",
+ "lb_method":"ROUND_ROBIN",
"protocol":"HTTP",
"description":"",
"health_monitors":[
-
+ "466c8345-28d8-4f84-a246-e04380b0461d",
+ "5d4b5228-33b0-4e60-b225-9b727c1a20e7"
],
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
"admin_state_up":true,
- "name":"mypool",
- "health_monitors_status":[
-
- ],
+ "name":"app_pool",
"members":[
-
+ "701b531b-111a-4f21-ad85-4795b7b12af6",
+ "beb53b4d-230b-4abd-8118-575b8fa006ef"
],
- "provider":"haproxy",
- "status_description":null,
- "id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
- "vip_id":null
+ "id":"72741b06-df4d-4715-b142-276b6bce75ab",
+ "vip_id":"4ec89087-d057-4e2c-911f-60a3b47ee304"
}
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/pools-update-res.json b/v2.0/samples/loadbalancer/pools-update-res.json
index 60c13b9..3075ecd 100644
--- a/v2.0/samples/loadbalancer/pools-update-res.json
+++ b/v2.0/samples/loadbalancer/pools-update-res.json
@@ -1,25 +1,20 @@
{
"pool":{
"status":"PENDING_UPDATE",
- "lb_method":"SOURCE_IP",
- "protocol":"HTTP",
+ "lb_method":"ROUND_ROBIN",
+ "protocol":"TCP",
"description":"",
"health_monitors":[
],
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
"admin_state_up":true,
"name":"SuperPool",
- "health_monitors_status":[
-
- ],
"members":[
],
- "provider":"haproxy",
- "status_description":null,
- "id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
+ "id":"61b1f87a-7a21-4ad3-9dda-7f81d249944f",
"vip_id":null
}
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/vips-create-req.json b/v2.0/samples/loadbalancer/vips-create-req.json
index 045e431..ae1e7eb 100644
--- a/v2.0/samples/loadbalancer/vips-create-req.json
+++ b/v2.0/samples/loadbalancer/vips-create-req.json
@@ -1,10 +1,10 @@
{
"vip":{
"protocol":"HTTP",
- "name":"myvip",
+ "name":"NewVip",
"admin_state_up":true,
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "pool_id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "pool_id":"61b1f87a-7a21-4ad3-9dda-7f81d249944f",
"protocol_port":"80"
}
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/vips-create-res.json b/v2.0/samples/loadbalancer/vips-create-res.json
index 8c2c2f6..8fa7a06 100644
--- a/v2.0/samples/loadbalancer/vips-create-res.json
+++ b/v2.0/samples/loadbalancer/vips-create-res.json
@@ -1,18 +1,17 @@
{
"vip":{
"status":"PENDING_CREATE",
- "status_description":null,
"protocol":"HTTP",
"description":"",
"admin_state_up":true,
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
"connection_limit":-1,
- "pool_id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
- "address":"192.0.0.3",
+ "pool_id":"61b1f87a-7a21-4ad3-9dda-7f81d249944f",
+ "address":"10.0.0.11",
"protocol_port":80,
- "port_id":"36242e87-0bae-49d7-bc59-a0867476c69a",
- "id":"a54bc6e7-2e28-4c55-a676-6146a4c0f8b9",
- "name":"myvip"
+ "port_id":"f7e6fe6a-b8b5-43a8-8215-73456b32e0f5",
+ "id":"c987d2be-9a3c-4ac9-a046-e8716b1350e2",
+ "name":"NewVip"
}
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/vips-list-res.json b/v2.0/samples/loadbalancer/vips-list-res.json
index 3aebbab..b33d21e 100644
--- a/v2.0/samples/loadbalancer/vips-list-res.json
+++ b/v2.0/samples/loadbalancer/vips-list-res.json
@@ -2,19 +2,22 @@
"vips":[
{
"status":"ACTIVE",
- "status_description":null,
"protocol":"HTTP",
"description":"",
"admin_state_up":true,
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
- "connection_limit":-1,
- "pool_id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
- "address":"192.0.0.3",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
+ "connection_limit":1000,
+ "pool_id":"72741b06-df4d-4715-b142-276b6bce75ab",
+ "session_persistence":{
+ "cookie_name":"MyAppCookie",
+ "type":"APP_COOKIE"
+ },
+ "address":"10.0.0.10",
"protocol_port":80,
- "port_id":"36242e87-0bae-49d7-bc59-a0867476c69a",
- "id":"a54bc6e7-2e28-4c55-a676-6146a4c0f8b9",
- "name":"myvip"
+ "port_id":"b5a743d6-056b-468b-862d-fb13a9aa694e",
+ "id":"4ec89087-d057-4e2c-911f-60a3b47ee304",
+ "name":"my-vip"
}
]
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/vips-show-res.json b/v2.0/samples/loadbalancer/vips-show-res.json
index 04d9deb..ed825d0 100644
--- a/v2.0/samples/loadbalancer/vips-show-res.json
+++ b/v2.0/samples/loadbalancer/vips-show-res.json
@@ -1,18 +1,21 @@
{
"vip":{
"status":"ACTIVE",
- "status_description":null,
"protocol":"HTTP",
"description":"",
"admin_state_up":true,
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
- "connection_limit":-1,
- "pool_id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
- "address":"192.0.0.3",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
+ "connection_limit":1000,
+ "pool_id":"72741b06-df4d-4715-b142-276b6bce75ab",
+ "session_persistence":{
+ "cookie_name":"MyAppCookie",
+ "type":"APP_COOKIE"
+ },
+ "address":"10.0.0.10",
"protocol_port":80,
- "port_id":"36242e87-0bae-49d7-bc59-a0867476c69a",
- "id":"a54bc6e7-2e28-4c55-a676-6146a4c0f8b9",
- "name":"myvip"
+ "port_id":"b5a743d6-056b-468b-862d-fb13a9aa694e",
+ "id":"4ec89087-d057-4e2c-911f-60a3b47ee304",
+ "name":"my-vip"
}
}
\ No newline at end of file
diff --git a/v2.0/samples/loadbalancer/vips-update-res.json b/v2.0/samples/loadbalancer/vips-update-res.json
index 9be4cdb..66bb39d 100644
--- a/v2.0/samples/loadbalancer/vips-update-res.json
+++ b/v2.0/samples/loadbalancer/vips-update-res.json
@@ -1,18 +1,17 @@
{
"vip":{
"status":"PENDING_UPDATE",
- "status_description":null,
"protocol":"HTTP",
"description":"",
"admin_state_up":true,
- "subnet_id":"54d6f61d-db07-451c-9ab3-b9609b6b6f0b",
- "tenant_id":"4fd44f30292945e481c7b8a0c8908869",
+ "subnet_id":"8032909d-47a1-4715-90af-5153ffe39861",
+ "tenant_id":"83657cfcdfe44cd5920adaf26c48ceea",
"connection_limit":1000,
- "pool_id":"7803631d-f181-4500-b3a2-1b68ba2a75fd",
- "address":"192.0.0.3",
+ "pool_id":"61b1f87a-7a21-4ad3-9dda-7f81d249944f",
+ "address":"10.0.0.11",
"protocol_port":80,
- "port_id":"36242e87-0bae-49d7-bc59-a0867476c69a",
- "id":"a54bc6e7-2e28-4c55-a676-6146a4c0f8b9",
- "name":"myvip"
+ "port_id":"f7e6fe6a-b8b5-43a8-8215-73456b32e0f5",
+ "id":"c987d2be-9a3c-4ac9-a046-e8716b1350e2",
+ "name":"NewVip"
}
}
\ No newline at end of file
diff --git a/v2.0/section_neutron-loadbalancer-ext.xml b/v2.0/section_neutron-loadbalancer-ext.xml
index a88974e..94c49d0 100644
--- a/v2.0/section_neutron-loadbalancer-ext.xml
+++ b/v2.0/section_neutron-loadbalancer-ext.xml
@@ -1,6 +1,5 @@
GET'>
PUT'>
POST'>
@@ -14,157 +13,181 @@
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns:db="http://docbook.org/ns/docbook" version="5.0"
status="final" xml:id="lbaas_ext">
-
The Load Balancer as a Service (LBaaS) Extension
- The LBaaS extension provides OpenStack tenants with a
- feature of balancing traffic to their VMs. The capabilities
- provided by the LBaaS extension are:
+ The Load Balancer as a Service (LBaaS) extension
+ The LBaaS extension enables OpenStack tenants to
+ load-balance their VM traffic. The extension enables you
+ to:
- Load balancing client traffic coming from one
- network to application services, such as VMs, on the same
- or a different network.
+ Load-balance client traffic from one network to
+ application services, such as VMs, on the same or a
+ different network.
- Supporting load balancing for several protocols
- (TCP, HTTP).
+ Load-balance several protocols, such as TCP and
+ HTTP.
- Supporting session persistence.
+ Monitor the health of application services.
- Monitoring the health of the application
- services.
-
-
- This extension introduces new resources:
-
-
- vip, is the primary
- load balancing configuration object that specifies the
- virtual IP address and port on which client traffic is
- received.
-
-
- pool, a load
- balancing pool is a logical set of members, such as
- web servers, that you group together to receive and
- process traffic.
-
-
- member, a
- representation of the application running on back end
- server.
-
-
- health_monitor,
- which is used to determine whether or not back end
- members of the pool are usable for processing traffic.
+ Support session persistence.
Concepts
- A VIP is the primary
- load balancing configuration object that specifies the
- virtual IP address and port on which client traffic is
- received, as well as other details such as the load
- balancing method to be used, protocol, etc. This entity is
- sometimes known in LB products as a "virtual server", a
- "vserver" or a "listener".
- A Pool is a logical set
- of devices, such as web servers, that you group together
- to receive and process traffic. The load balancing
- function chooses a member of the pool according to the
- configured load balancing method to handle the new
- requests or connections received on the VIP address. There
- is only one pool for a VIP.
- A pool member
- represents the application running on the back end
- server.
- A Health Monitor is
- used to determine whether or not back end members of the
- VIP pool are usable for processing a request. A pool can
- have several health monitors associated with it. There are
- different types of health monitors supported by the LBaaS
- extension:
-
-
- PING: pings the members by
- using ICMP.
-
-
- TCP: connects to the
- members by using TCP.
-
-
- HTTP: sends an HTTP request
- to the member.
-
-
- HTTPS: sends a secure HTTP
- request to the member.
-
-
- When a pool has several monitors associated with it,
- each member of the pool is monitored by all these
- monitors. If any monitor declares the member as unhealthy,
- then the member status is changed to
- inactive and the member won't
- participate in its pool's load balancing. In other words,
- all monitors must declare the member to be healthy for it
- to stay active.
- Session persistence is a feature of the load balancing
- service. It attempts to force connections or requests in
- the same session to be processed by the same member as
- long as it is active. The LBaaS extension supports three
- types of persistence:
-
-
- SOURCE_IP: With this
- persistence mode, all connections originating from
- the same source IP address are handled by the same
- member of the pool.
-
-
- HTTP_COOKIE: With this
- persistence mode, the load balancing function
- creates a cookie on the first request from a
- client. Subsequent requests containing the same
- cookie value will be handled by the same member of
- the pool.
-
-
- APP_COOKIE: With this
- persistence mode, the load balancing function
- relies on a cookie established by the back end
- application. All requests carrying the same cookie
- value is handled by the same member of the pool.
-
-
+ This extension introduces these concepts:
+
+
+ VIP
+
+ The primary load balancing configuration
+ object. Specifies the virtual IP address and
+ port where client traffic is received. Also
+ defines other details such as the load
+ balancing method to be used, protocol, and so
+ on.
+ This entity is sometimes known in
+ load-balancing products as a
+ virtual server,
+ vserver, or
+ listener.
+
+
+
+ pool
+
+ A logical set of devices, such as web
+ servers, that you group together to receive
+ and process traffic.
+ The load balancing function chooses which
+ member of the pool handles the new requests or
+ connections received on the VIP address. Each
+ VIP has one pool.
+
+
+
+ pool member
+
+ The application that runs on the back-end
+ server.
+
+
+
+ health monitor
+
+ Determines whether or not back-end members
+ of the VIP pool can process a request. A pool
+ can have several health monitors associated
+ with it.
+ The LBaaS extension supports these types of
+ health monitors:
+
+
+ PING. Pings the members
+ by using ICMP.
+
+
+ TCP. Connects to the
+ members by using TCP.
+
+
+ HTTP. Sends an HTTP
+ request to the member.
+
+
+ HTTPS. Sends a secure
+ HTTP request to the member.
+
+
+ When a pool has several monitors associated
+ with it, all monitors check each member of the
+ pool. If any monitor declares a member as
+ unhealthy, the member status is changed to
+ inactive
+ and the member does not participate in the
+ load balancing for the pool.
+ All monitors must declare the member to be
+ healthy for it to stay active.
+
+
+
+ session persistence
+
+ Forces connections or requests in the same
+ session to be processed by the same member as
+ long as it is active.
+ The LBaaS extension supports these types of
+ persistence:
+
+
+ SOURCE_IP. All
+ connections that originate from the
+ same source IP address are handled by
+ the same member of the pool.
+
+
+ HTTP_COOKIE. The load
+ balancing function creates a cookie on
+ the first request from a client.
+ Subsequent requests that contain the
+ same cookie value are handled by the
+ same member of the pool.
+
+
+ APP_COOKIE. The load
+ balancing function relies on a cookie
+ established by the back-end
+ application. All requests with the
+ same cookie value are handled by the
+ same member of the pool.
+
+
+ Absence of session_persistence
+ attribute means no session persistence
+ mechanism is used.
+ When no session persistence is used, the
+ session_persistence
attribute
+ does not appear in the API response, instead
+ of returning null.
+ You can clear session persistence for the
+ VIP by sending null
in
+ session_persistence
attribute
+ in a VIP update request.
+
+
+
- High-level flow
- The high-level task flow for using LBaaS API to
- configure load balancing is as follows:
+ High-level task flow
+ To use the LBaaS extension to configure load balancing,
+ you must complete these high-level tasks:
- The tenant creates a pool, which is initially
- empty
+ Create a pool, which is initially empty.
- The tenant creates one or several members in the
- pool
+ Create one or several members in the
+ pool.
- The tenant create one or several health
- monitors
+ Create one or several health monitors.
- The tenant associates the Health Monitors with
- the Pool
+ Associate the health monitors with the
+ pool.
- The tenant finally creates a VIP associated with
- the Pool
+ Create a VIP that is associated with the
+ pool.
@@ -173,7 +196,7 @@
This section discusses operations for managing load
balancer VIPs through the LBaaS extension.
- VIP Attributes
+ VIP attributes
@@ -225,7 +248,7 @@
R |
generated |
N/A |
- Unique identifier for the vip. |
+ Unique identifier for the VIP. |
tenant_id |
@@ -234,8 +257,9 @@
CR |
Derived from authentication token. |
N/A |
- Owner of the vip. Only an admin user can specify
- a tenant ID other than its own. |
+ Owner of the VIP. Only an admin user can
+ specify a tenant identifier other than its
+ own. |
name |
@@ -244,7 +268,7 @@
CRU |
None |
N/A |
- Human readable name for the vip. Does not have
+ | Human readable name for the VIP. Does not have
to be unique. |
@@ -254,7 +278,7 @@
CRU |
None |
N/A |
- Human readable description for the vip. |
+ Human readable description for the VIP. |
subnet_id |
@@ -263,7 +287,7 @@
CR |
None |
UUID pattern. |
- The subnet on which to allocate the vip
+ | The subnet on which to allocate the VIP
address. |
@@ -272,8 +296,8 @@
No |
CR |
None |
- IP address or null. |
- The IP address of the vip. |
+ IP address or null |
+ The IP address of the VIP. |
protocol |
@@ -282,7 +306,7 @@
CR |
None |
{ "TCP" | "HTTP" | "HTTPS" } |
- The protocol of the vip address. |
+ The protocol of the VIP address. |
protocol_port |
@@ -292,7 +316,7 @@
None |
[0..65535] |
The port on which to listen to client traffic
- that is associated with the vip address. |
+ that is associated with the VIP address.
pool_id |
@@ -301,7 +325,8 @@
CRU |
None |
UUID pattern. |
- The pool with which to associate the vip. |
+ The pool that the VIP
+ associated with. |
session_persistence |
@@ -329,7 +354,22 @@
- Session persistence parameters of the vip. |
+ Session persistence parameters of the
+ VIP.
+ Absence of
+ session_persistence
+ attribute means no session persistence
+ mechanism is used.
+ When no session persistence is used, the
+ session_persistence
+ attribute does not appear in the API
+ response, instead of returning
+ null.
+ You can clear session persistence for
+ the VIP by sending null in
+ session_persistence
+ attribute in a VIP update
+ request. |
connection_limit |
@@ -337,9 +377,10 @@
No |
CRU |
-1 |
- None. |
+ None |
The maximum number of connections allowed for
- the vip or -1 if the limit is not set. |
+ the VIP or -1
if the limit is not
+ set.
admin_state_up |
@@ -348,7 +389,7 @@
CRU |
true |
{true | false } |
- Administrative state of the vip. |
+ Administrative state of the VIP |
status |
@@ -357,18 +398,9 @@
R |
N/A |
N/A |
- Indicates whether or not a vip is currently
+ | Indicates whether a VIP is currently
operational. |
-
- status_description |
- String |
- N/A |
- CRU |
- null |
- |
- |
-
@@ -388,7 +420,7 @@
&GET; |
/lb/vips |
- Lists vips. |
+ Lists VIPs. |
@@ -403,9 +435,9 @@
This operation returns a response body.
List VIPs: HTTP request
- GET /v2.0/lb/vips.json HTTP/1.1
+ GET /v2.0/lb/vips.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
List VIPs: JSON response
@@ -445,9 +477,9 @@ Accept: application/json
This operation returns a response body.
Show VIP details: HTTP request
- GET /v2.0/lb/vips/a54bc6e7-2e28-4c55-a676-6146a4c0f8b9.json HTTP/1.1
+ GET /v2.0/lb/vips/4ec89087-d057-4e2c-911f-60a3b47ee304.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
Show VIP details: JSON response
@@ -475,7 +507,8 @@ Accept: application/json
- Normal Response Code: 201
+ Normal Response Code: 201
+
Error Response Codes: Unauthorized
(401), Bad Request
(400)
@@ -483,15 +516,15 @@ Accept: application/json
This operation returns a response body.
Create VIP: HTTP and JSON request
- POST /v2.0/lb/vips.json HTTP/1.1
+ POST /v2.0/lb/vips.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
Create VIP: HTTP and JSON response
- HTTP/1.1 201 Created
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 201 Created
+Content-Type: application/json; charset=UTF-8
@@ -512,7 +545,7 @@ Content-Type: application/json; charset=UTF-8
&PUT; |
/lb/vips/vip-id |
- Updates a load balancer vip. |
+ Updates a load balancer VIP. |
@@ -524,15 +557,15 @@ Content-Type: application/json; charset=UTF-8
(404)
Update VIP: HTTP and JSON request
- PUT /v2.0/lb/vips/a54bc6e7-2e28-4c55-a676-6146a4c0f8b9.json
+ PUT /v2.0/lb/vips/c987d2be-9a3c-4ac9-a046-e8716b1350e2.json
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
Update VIP: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
@@ -553,11 +586,12 @@ Content-Type: application/json; charset=UTF-8
&DELETE; |
/lb/vips/vip-id |
- Removes a load balancer vip. |
+ Removes a load balancer VIP. |
- Normal Response Code: 204
+ Normal Response Code: 204
+
Error Response Codes: Unauthorized
(401), Not Found
(404), Conflict
@@ -568,13 +602,13 @@ Content-Type: application/json; charset=UTF-8
body.
Delete VIP: HTTP request
- DELETE /v2.0/lb/vips/a54bc6e7-2e28-4c55-a676-6146a4c0f8b9.json HTTP/1.1
-Accept: application/json
+ DELETE /v2.0/lb/vips/c987d2be-9a3c-4ac9-a046-e8716b1350e2.json HTTP/1.1
+Accept: application/json
Delete VIP: HTTP response
- HTTP/1.1 204 No Content
-Content-Length: 0
+ HTTP/1.1 204 No Content
+Content-Length: 0
@@ -582,7 +616,8 @@ Content-Length: 0
Pool operations
This section discusses operations for managing load
- balancer pools through the LBaaS extension.
+ balancer pools through the Load balancing as a service
+ extension.
Pool Attributes
@@ -646,8 +681,8 @@ Content-Length: 0
Derived from authentication token. |
N/A |
Owner of the pool. Only an admin user can
- specify a tenant ID other than its
- own. |
+ specify a tenant identifier other than its
+ own
vip_id |
@@ -656,7 +691,8 @@ Content-Length: 0
R |
None |
UUID pattern. |
- The vip with which the pool is associated. |
+ The vip that the pool
+ associated with. |
name |
@@ -713,7 +749,7 @@ Content-Length: 0
None |
N/A |
List of health monitors to associate with the
- pool |
+ pool.
members |
@@ -722,7 +758,7 @@ Content-Length: 0
R |
None |
N/A |
- List of members that belong to the pool |
+ List of members that belong to the pool. |
admin_state_up |
@@ -731,7 +767,7 @@ Content-Length: 0
CRU |
true |
{true | false } |
- Administrative state of the pool |
+ Administrative state of the pool. |
status |
@@ -741,16 +777,7 @@ Content-Length: 0
N/A |
N/A |
Indicates whether a pool is currently
- operational or not |
-
-
- status_description |
- String |
- N/A |
- CRU |
- null |
- |
- |
+ operational or not.
@@ -786,19 +813,19 @@ Content-Length: 0
This operation returns a response body.
List pools: HTTP request
- GET /v2.0/lb/pools.json HTTP/1.1
+ GET /v2.0/lb/pools.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
List pools: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
- Show pool details
+ Show pool
@@ -814,7 +841,8 @@ Content-Type: application/json; charset=UTF-8
&GET; |
/lb/pools/pool-id |
- Shows details for a specified pool. |
+ Returns details about a specific
+ pool. |
@@ -830,19 +858,19 @@ Content-Type: application/json; charset=UTF-8
This operation returns a response body.
Show pool: HTTP request
- GET /v2.0/lb/pools/7803631d-f181-4500-b3a2-1b68ba2a75fd.json HTTP/1.1
+ GET /v2.0/lb/pools/72741b06-df4d-4715-b142-276b6bce75ab.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
Show pool: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
- Create pool
+ Create Pool
@@ -862,28 +890,29 @@ Content-Type: application/json; charset=UTF-8
- Normal Response Code: 201
+ Normal Response Code: 201
+
Error Response Codes: Unauthorized
(401), Bad Request
(400)
This operation requires a request body.
This operation returns a response body.
- Create pool: HTTP and JSON request
- POST /v2.0/lb/pools.json HTTP/1.1
+ Create pool: HTTP request
+ POST /v2.0/lb/pools.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
Create pool: HTTP and JSON response
- HTTP/1.1 201 Created
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 201 Created
+Content-Type: application/json; charset=UTF-8
- Update pool
+ Update Pool
@@ -911,15 +940,15 @@ Content-Type: application/json; charset=UTF-8
(404)
Update pool: HTTP and JSON request
- PUT /v2.0/lb/pools/7803631d-f181-4500-b3a2-1b68ba2a75fd.json
+ PUT /v2.0/lb/pools/61b1f87a-7a21-4ad3-9dda-7f81d249944f.json
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
Update pool: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
@@ -944,7 +973,8 @@ Content-Type: application/json; charset=UTF-8
- Normal Response Code: 204
+ Normal Response Code: 204
+
Error Response Codes: Unauthorized
(401), Not Found
(404), Conflict
@@ -955,13 +985,13 @@ Content-Type: application/json; charset=UTF-8
body.
Delete pool: HTTP request
- DELETE /v2.0/lb/pools/7803631d-f181-4500-b3a2-1b68ba2a75fd.json HTTP/1.1
-Accept: application/json
+ DELETE /v2.0/lb/pools/a224402b-794b-4c0c-9d08-d95640a6f5a1.json HTTP/1.1
+Accept: application/json
- Delete pool: JSON response
- HTTP/1.1 204 No Content
-Content-Length: 0
+ Delete pool: HTTP response
+ HTTP/1.1 204 No Content
+Content-Length: 0
@@ -969,7 +999,8 @@ Content-Length: 0
Member operations
This section discusses operations for managing pool
- members through the LBaaS extension.
+ members through the Load balancing as a service
+ extension.
Member Attributes
@@ -1033,7 +1064,7 @@ Content-Length: 0
Derived from authentication token. |
N/A |
Owner of the member. Only an admin user can
- specify a tenant ID other than its
+ specify a tenant identifier other than its
own. |
@@ -1043,7 +1074,8 @@ Content-Length: 0
CRU |
None |
UUID pattern. |
- The pool to which the member belongs. |
+ The pool that the member
+ belongs to. |
address |
@@ -1097,15 +1129,6 @@ Content-Length: 0
Indicates whether or not a member is currently
operational. |
-
- status_description |
- String |
- N/A |
- CRU |
- null |
- |
- |
-
@@ -1140,19 +1163,19 @@ Content-Length: 0
This operation returns a response body.
List members: HTTP request
- GET /v2.0/lb/members.json HTTP/1.1
+ GET /v2.0/lb/members.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
List members: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
- Show member details
+ Show member
@@ -1168,7 +1191,8 @@ Content-Type: application/json; charset=UTF-8
&GET; |
/lb/members/member-id |
- Shows details for a specified member. |
+ Returns details about a specific
+ member. |
@@ -1183,15 +1207,15 @@ Content-Type: application/json; charset=UTF-8
body.
This operation returns a response body.
- Show member details: HTTP request
- GET /v2.0/lb/members/48a471ea-64f1-4eb6-9be7-dae6bbe40a0f.json HTTP/1.1
+ Show member: HTTP request
+ GET /v2.0/lb/members/701b531b-111a-4f21-ad85-4795b7b12af6.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
- Show member details: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ Show member: HTTP and JSON response
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
@@ -1216,7 +1240,8 @@ Content-Type: application/json; charset=UTF-8
- Normal Response Code: 201
+ Normal Response Code: 201
+
Error Response Codes: Unauthorized
(401), Bad Request
(400)
@@ -1224,15 +1249,15 @@ Content-Type: application/json; charset=UTF-8
This operation returns a response body.
Create member: HTTP and JSON request
- POST /v2.0/lb/members.json HTTP/1.1
+ POST /v2.0/lb/members.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
Create member: HTTP and JSON response
- HTTP/1.1 201 Created
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 201 Created
+Content-Type: application/json; charset=UTF-8
@@ -1265,15 +1290,15 @@ Content-Type: application/json; charset=UTF-8
(404)
Update member: HTTP and JSON request
- PUT /v2.0/lb/members/48a471ea-64f1-4eb6-9be7-dae6bbe40a0f.json
+ PUT /v2.0/lb/members/b9a7012a-1097-45b2-a973-6572973619bc.json
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
Update member: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
@@ -1298,7 +1323,8 @@ Content-Type: application/json; charset=UTF-8
- Normal Response Code: 204
+ Normal Response Code: 204
+
Error Response Codes: Unauthorized
(401), Not Found
(404), Conflict
@@ -1309,13 +1335,13 @@ Content-Type: application/json; charset=UTF-8
body.
Delete member: HTTP request
- DELETE /v2.0/lb/members/48a471ea-64f1-4eb6-9be7-dae6bbe40a0f.json HTTP/1.1
-Accept: application/json
+ DELETE /v2.0/lb/members/b9a7012a-1097-45b2-a973-6572973619bc.json HTTP/1.1
+Accept: application/json
- Delete member: HTTP response
- HTTP/1.1 204 No Content
-Content-Length: 0
+ Delete member: HTTP and JSON response
+ HTTP/1.1 204 No Content
+Content-Length: 0
@@ -1326,7 +1352,7 @@ Content-Length: 0
balancer health monitors through the LBaaS
extension.
- Health Monitor Attributes
+ Health monitor attributes
@@ -1388,9 +1414,9 @@ Content-Length: 0
CR |
Derived from authentication token. |
N/A |
- Owner of the health monitor. Only an admin user
- can specify a tenant ID other than its
- own. |
+ Owner of the health monitor. Only an admin
+ user can specify a tenant identifier other
+ than its own. |
type |
@@ -1399,8 +1425,8 @@ Content-Length: 0
CR |
None |
{"PING" | "TCP" | "HTTP" | "HTTPS"} |
- The type of probe sent by load balancer to
- verify member state. |
+ The type of probe send by load balancer to
+ verify member state |
delay |
@@ -1432,7 +1458,7 @@ Content-Length: 0
None |
[1..10] |
Number of allowed connection failures before
- changing the status of the member to INACTIVE. |
+ changing the member's status to INACTIVE.
http_method |
@@ -1441,7 +1467,7 @@ Content-Length: 0
xml:id="lbaas_health_monitor_http_method">
Required if type
is HTTP or
- HTTPS
+ HTTPS.
CRU |
GET |
@@ -1457,10 +1483,10 @@ Content-Length: 0
/>
CRU |
/ |
- None. |
+ None |
The HTTP path of the request sent by the
- monitor to test the health of a member. This must
- be a string beginning with a / (forward
+ monitor to test a member's health. This must
+ be a string beginning with a / (forward
slash). |
@@ -1471,8 +1497,8 @@ Content-Length: 0
/>
CRU |
200 |
- Single value, such as 200, list, such as 200, 202,
- or range, such as 200-204. |
+ Single value, such as 200, list, such as 200,
+ 202, or range, such as 200-204. |
The list of HTTP status codes expected in
response from the member to declare it
healthy. |
@@ -1487,6 +1513,16 @@ Content-Length: 0
Administrative state of the health
monitor. |
+
+ status |
+ String |
+ N/A |
+ R |
+ N/A |
+ N/A |
+ Indicates whether or not a health monitor is
+ currently operational. |
+
@@ -1521,19 +1557,20 @@ Content-Length: 0
This operation returns a response body.
List health monitors: HTTP request
- GET /v2.0/lb/health_monitors.json HTTP/1.1
+ GET /v2.0/lb/health_monitors.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
- List health monitors: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ List health monitors: HTTP and JSON
+ response
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
- Show health monitor details
+ Show health monitor
@@ -1549,7 +1586,7 @@ Content-Type: application/json; charset=UTF-8
&GET; |
/lb/health_monitors/health_monitor-id |
- Returns details about a specific health
+ | Show details for a specified health
monitor. |
@@ -1565,15 +1602,16 @@ Content-Type: application/json; charset=UTF-8
body.
This operation returns a response body.
- Show health monitor details: HTTP request
- GET /v2.0/lb/health_monitors/5d4b5228-33b0-4e60-b225-9b727c1a20e7.json HTTP/1.1
+ Show health monitor: HTTP request
+ GET /v2.0/lb/health_monitors/701b531b-111a-4f21-ad85-4795b7b12af6.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
- Show health monitor details: HTTP and JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ Show health monitor: HTTP and JSON
+ response
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
@@ -1599,23 +1637,26 @@ Content-Type: application/json; charset=UTF-8
- Normal Response Code: 201
+ Normal Response Code: 201
+
Error Response Codes: Unauthorized
(401), Bad Request
(400)
This operation requires a request body.
This operation returns a response body.
- Create health monitor: HTTP and JSON request
- POST /v2.0/lb/health_monitors.json HTTP/1.1
+ Create health monitor: HTTP and JSON
+ request
+ POST /v2.0/lb/health_monitors.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
- Create health monitor: HTTP and JSON response
- HTTP/1.1 201 Created
-Content-Type: application/json; charset=UTF-8
+ Create health monitor: HTTP and JSON
+ response
+ HTTP/1.1 201 Created
+Content-Type: application/json; charset=UTF-8
@@ -1648,16 +1689,18 @@ Content-Type: application/json; charset=UTF-8
(400), Not Found
(404)
- Update health monitor: HTTP and JSON request
- PUT /v2.0/lb/health_monitors/b624decf-d5d3-4c66-9a3d-f047e7786181.json HTTP/1.1
+ Update health monitor: HTTP and JSON
+ request
+ PUT /v2.0/lb/health_monitors/466c8345-28d8-4f84-a246-e04380b0461d.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
- Update health monitor: JSON response
- HTTP/1.1 200 OK
-Content-Type: application/json; charset=UTF-8
+ Update health monitor: HTTP and JSON
+ response
+ HTTP/1.1 200 OK
+Content-Type: application/json; charset=UTF-8
@@ -1682,7 +1725,8 @@ Content-Type: application/json; charset=UTF-8
- Normal Response Code: 204
+ Normal Response Code: 204
+
Error Response Codes: Unauthorized
(401), Not Found
(404), Conflict
@@ -1693,17 +1737,17 @@ Content-Type: application/json; charset=UTF-8
body.
Delete health monitor: HTTP request
- DELETE /v2.0/lb/health_monitors/b624decf-d5d3-4c66-9a3d-f047e7786181.json HTTP/1.1
-Accept: application/json
+ DELETE /v2.0/lb/health_monitors/ada338f0-10d0-4326-b02e-cc123114f240.json HTTP/1.1
+Accept: application/json
Delete health monitor: HTTP response
- HTTP/1.1 204 No Content
-Content-Length: 0
+ HTTP/1.1 204 No Content
+Content-Length: 0
- Associate health monitor with pool
+ Associate health monitor with a pool
@@ -1719,7 +1763,7 @@ Content-Length: 0
&POST; |
/lb/pools/pool-id/health_monitors |
- Associates a health monitor with a
+ | Associate health monitor with the
pool. |
@@ -1731,21 +1775,23 @@ Content-Length: 0
(400), Not Found
(404)
- Associate health monitor with pool: HTTP and JSON request
- POST /v2.0/lb/pools/72741b06-df4d-4715-b142-276b6bce75ab/health_monitors.json HTTP/1.1
+ Associate health monitor: HTTP and JSON
+ request
+ POST /v2.0/lb/pools/72741b06-df4d-4715-b142-276b6bce75ab/health_monitors.json HTTP/1.1
User-Agent: python-neutronclient
-Accept: application/json
+Accept: application/json
- Associate health monitor with pool: HTTP and JSON response
- HTTP/1.1 201 Created
-Content-Type: application/json; charset=UTF-8
+ Associate health monitor: HTTP and JSON
+ response
+ HTTP/1.1 201 Created
+Content-Type: application/json; charset=UTF-8
- Disassociate health monitor from pool
+ Disassociate health monitor from a pool
@@ -1766,7 +1812,8 @@ Content-Type: application/json; charset=UTF-8
- Normal Response Code: 204
+ Normal Response Code: 204
+
Error Response Codes: Unauthorized
(401), Not Found
(404), Conflict
@@ -1776,14 +1823,16 @@ Content-Type: application/json; charset=UTF-8
This operation does not return a response
body.
- Disassociate health monitor from pool: HTTP request
- DELETE /v2.0/lb/pools/72741b06-df4d-4715-b142-276b6bce75ab/health_monitors/ada338f0-10d0-4326-b02e-cc123114f240.json HTTP/1.1
-Accept: application/json
+ Disassociate health monitor: HTTP
+ request
+ DELETE /v2.0/lb/pools/72741b06-df4d-4715-b142-276b6bce75ab/health_monitors/ada338f0-10d0-4326-b02e-cc123114f240.json HTTP/1.1
+Accept: application/json
- Disassociate health monitor from pool: HTTP response
- HTTP/1.1 204 No Content
-Content-Length: 0
+ Disassociate health monitor: HTTP
+ response
+ HTTP/1.1 204 No Content
+Content-Length: 0