列举负载均衡器
功能介绍
列出项目的所有负载均衡器。
URI
GET /v2.0/lbaas/loadbalancers
请求消息
无
请求示例
无
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
loadbalancers | array | 负载均衡器的对象列表。 |
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
description | String | 人类可读的资源描述。 |
id | String | 负载均衡器的ID。 |
listeners | array | 关联的侦听器id列表。 |
name | String | 资源的人类可读名称。 |
operating_status | String | 资源的运行状态。 |
pools | array | 关联的资源池id列表。 |
provider | String | 负载均衡器的提供者名称。 |
provisioning_status | String | 资源的提供状态。 |
vip_address | String | 虚拟IP (VIP)的IP地址。 |
vip_port_id | String | 虚拟IP (VIP)端口的ID。 |
vip_subnet_id | String | 虚拟IP (VIP)的子网ID。 |
stats_port | String | 负载均衡器的Stats端口。默认值:10000 |
tenant_id | String | 该资源所属的项目ID。 |
enable_stats | boolean | 开启/关闭负载均衡器统计页面。默认值:false |
create_time | String | 创建资源时的UTC日期和时间戳。 |
availability_zones | array | 可用分区列表。 |
ha | boolean | 负载均衡器是否高可用。 |
响应示例
{
"loadbalancers": [{
"stats_port": 10000,
"description": "",
"provisioning_status": "ACTIVE",
"tenant_id": "870c5414baee43a4ba7adfb253e46018",
"admin_state_up": true,
"provider": "haproxy",
"enable_stats": false,
"pools": [{
"id": "3093f02c-1e0a-4e83-8aca-20b5ce6b3508"
}],
"listeners": [{
"id": "6df0bcbe-91f1-403c-8df2-b415da3152f5"
}],
"create_time": "2021-02-23T03:21:39Z",
"vip_port_id": "946b2d42-9cb2-45e2-ab55-895c47a50e14",
"vip_address": "192.168.0.23",
"vip_subnet_id": "8d7c7cfd-f288-45eb-80a8-f9e64b81c0b8",
"availability_zones": ["default-az"],
"ha": true,
"id": "8c040a5d-05b4-4a7e-a1ea-3e66839248f3",
"operating_status": "ONLINE",
"name": "LB-TEST"
}]
}
正常响应代码
200
错误码
400,401,500
显示负载均衡器的详细信息
功能介绍
显示负载均衡器的详细信息。
前提条件
该负载均衡器存在。
URI
GET /v2.0/lbaas/loadbalancers/{loadbalancer_id}
参数 | 是否必选 | 描述 |
---|---|---|
loadbalancer_id | String | 负载均衡器的ID。 |
请求消息
无
请求示例
无
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
loadbalancers | array | 负载均衡器的对象列表。 |
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
description | String | 人类可读的资源描述。 |
id | String | 负载均衡器的ID。 |
listeners | array | 关联的侦听器id列表。 |
name | String | 资源的人类可读名称。 |
operating_status | String | 资源的运行状态。 |
pools | array | 关联的资源池id列表。 |
provider | String | 负载均衡器的提供者名称。 |
provisioning_status | String | 资源的提供状态。 |
vip_address | String | 虚拟IP (VIP)的IP地址。 |
vip_port_id | String | 虚拟IP (VIP)端口的ID。 |
vip_subnet_id | String | 虚拟IP (VIP)的子网ID。 |
stats_port | String | 负载均衡器的Stats端口。默认值:10000 |
tenant_id | String | 该资源所属的项目ID。 |
enable_stats | boolean | 开启/关闭负载均衡器统计页面。默认值:false |
create_time | String | 创建资源时的UTC日期和时间戳。 |
availability_zones | array | 可用分区列表。 |
ha | boolean | 负载均衡器是否高可用。 |
availability_zone_hints | String | 负载均衡器的可用分区列表(需要可用分区扩展)。 |
响应示例
{
"loadbalancer": {
"availability_zone_hints": "",
"availability_zones": ["default-az"],
"description": "",
"provisioning_status": "ACTIVE",
"tenant_id": "870c5414baee43a4ba7adfb253e46018",
"admin_state_up": true,
"stats_port": 10000,
"listeners": [{
"id": "6df0bcbe-91f1-403c-8df2-b415da3152f5"
}],
"enable_stats": false,
"pools": [{
"id": "3093f02c-1e0a-4e83-8aca-20b5ce6b3508"
}],
"vip_address": "192.168.0.23",
"create_time": "2021-02-23T03:21:39Z",
"vip_port_id": "946b2d42-9cb2-45e2-ab55-895c47a50e14",
"provider": "haproxy",
"vip_subnet_id": "8d7c7cfd-f288-45eb-80a8-f9e64b81c0b8",
"ha": true,
"id": "8c040a5d-05b4-4a7e-a1ea-3e66839248f3",
"operating_status": "ONLINE",
"name": "LB-TEST"
}
}
正常响应代码
200
错误码
401,403,404,500
创建负载均衡器
功能介绍
创建一个负载均衡器。
前提条件
有相应的负载均衡器的配额。
URI
POST /v2.0/lbaas/loadbalancers
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
availability_zone_hint | String | 否 | 负载均衡器的可用分区(需要可用分区扩展)。 |
name | String | 否 | 资源的人类可读名称。 |
description | String | 否 | 资源的人类可读描述。 |
vip_subnet_id | String | 是 | 虚拟IP (VIP)的子网ID。 |
vip_address | String | 否 | 虚拟IP (VIP)的IP地址。 |
请求示例
{
"loadbalancer": {
"availability_zone_hint": "default-az",
"name": "",
"description": "",
"vip_subnet_id": "008d3711-7978-439f-a340-707cb091aa85",
"vip_address": "192.168.1.6"
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
loadbalancers | array | 负载均衡器的对象列表。 |
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
description | String | 人类可读的资源描述。 |
id | String | 负载均衡器的ID。 |
listeners | array | 关联的侦听器id列表。 |
name | String | 资源的人类可读名称。 |
operating_status | String | 资源的运行状态。 |
pools | array | 关联的资源池id列表。 |
provider | String | 负载均衡器的提供者名称。 |
provisioning_status | String | 资源的提供状态。 |
vip_address | String | 虚拟IP (VIP)的IP地址。 |
vip_port_id | String | 虚拟IP (VIP)端口的ID。 |
vip_subnet_id | String | 虚拟IP (VIP)的子网ID。 |
stats_port | String | 负载均衡器的Stats端口。默认值:10000 |
tenant_id | String | 该资源所属的项目ID。 |
enable_stats | boolean | 开启/关闭负载均衡器统计页面。默认值:false |
create_time | String | 创建资源时的UTC日期和时间戳。 |
availability_zones | array | 可用分区列表。 |
ha | boolean | 负载均衡器是否高可用。 |
availability_zone_hints | String | 负载均衡器的可用分区列表(需要可用分区扩展)。 |
响应示例Forbidden
{
"loadbalancer": {
"availability_zone_hints": "",
"availability_zones": ["default-az"],
"description": "",
"provisioning_status": "PENDING_CREATE",
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"admin_state_up": true,
"stats_port": 10000,
"listeners": [],
"enable_stats": false,
"pools": [],
"vip_address": "192.168.1.6",
"create_time": "2021-02-25T08:02:52Z",
"vip_port_id": "7f9ad59a-8bb5-4006-b2b8-78fc5ea5ff2e",
"provider": "haproxy",
"vip_subnet_id": "008d3711-7978-439f-a340-707cb091aa85",
"ha": true,
"id": "63ace3e4-997b-448f-9d57-654a39ffbbd3",
"operating_status": "OFFLINE",
"name": ""
}
}
正常响应代码
201
错误码
400,401,403,404,500,503
更新负载均衡器
功能介绍
更新负载均衡器。
前提条件
该负载均衡器存在。
URI
PUT /v2.0/lbaas/loadbalancers/{loadbalancer_id}
参数 | 是否必选 | 描述 |
---|---|---|
loadbalancer_id | String | 负载均衡器的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
name | String | 否 | 资源的人类可读名称。 |
请求示例
{
"loadbalancer": {
"name": "new_lb"
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
loadbalancers | array | 负载均衡器的对象列表。 |
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
description | String | 人类可读的资源描述。 |
id | String | 负载均衡器的ID。 |
listeners | array | 关联的侦听器id列表。 |
name | String | 资源的人类可读名称。 |
operating_status | String | 资源的运行状态。 |
pools | array | 关联的资源池id列表。 |
provider | String | 负载均衡器的提供者名称。 |
provisioning_status | String | 资源的提供状态。 |
vip_address | String | 虚拟IP (VIP)的IP地址。 |
vip_port_id | String | 虚拟IP (VIP)端口的ID。 |
vip_subnet_id | String | 虚拟IP (VIP)的子网ID。 |
stats_port | String | 负载均衡器的Stats端口。默认值:10000 |
tenant_id | String | 该资源所属的项目ID。 |
enable_stats | boolean | 开启/关闭负载均衡器统计页面。默认值:false |
create_time | String | 创建资源时的UTC日期和时间戳。 |
availability_zones | array | 可用分区列表。 |
ha | boolean | 负载均衡器是否高可用。 |
availability_zone_hints | String | 负载均衡器的可用分区列表(需要可用分区扩展)。 |
响应示例
{
"loadbalancer": {
"availability_zone_hints": "",
"availability_zones": ["default-az"],
"description": "",
"provisioning_status": "PENDING_UPDATE",
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"admin_state_up": true,
"stats_port": 10000,
"listeners": [],
"enable_stats": false,
"pools": [],
"vip_address": "192.168.1.6",
"create_time": "2021-02-25T08:02:52Z",
"vip_port_id": "7f9ad59a-8bb5-4006-b2b8-78fc5ea5ff2e",
"provider": "haproxy",
"vip_subnet_id": "008d3711-7978-439f-a340-707cb091aa85",
"ha": true,
"id": "63ace3e4-997b-448f-9d57-654a39ffbbd3",
"operating_status": "ONLINE",
"name": "new_lb"
}
}
正常响应代码
202
错误码
400,401,403,404,409,500
删除负载均衡器
功能介绍
删除负载均衡器。
前提条件
该负载均衡器存在。
URI
DELETE /v2.0/lbaas/loadbalancers/{loadbalancer_id}
参数 | 是否必选 | 描述 |
---|---|---|
loadbalancer_id | String | 负载均衡器的ID。 |
请求消息
无
请求示例
无
响应消息
无
响应示例
无
正常响应代码
204
错误码
400,401,403,404,409,500
列举监听器
功能介绍
列举监听器。
前提条件
无服务出了一些问题,这阻止了它完成请求。
URI
GET /v2.0/lbaas/listeners
请求消息
无
请求示例
示例:列举监听器GET /v2.0/baas/listeners
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
listener | array | 监听器列表 |
admin_state_up | boolean | 监听器资源的admin状态,取值true或者false。 |
connection_limit | integer | 最大的连接数,默认是-1表示无穷大。 |
create_time | String | 监听器的创建时间 (in UTC ISO8601 format)。 |
default_pool_id | String | 关联监听器的资源池ID |
default_tls_container_ref | String | 引用一个容纳TLS秘密的容器。 如果你也指定了sni_container_refs ,这个容器是默认的。 该参数对于“TERMINATED_HTTPS”协议是必需的 |
description | String | 用户描述。 |
id | String | 监听器ID。 |
loadbalancers | array | 监听器关联的负载均衡器列表。 |
name | String | 监听器的名称。 |
protocol | String | 监听的协议类型,必须是“HTTP”,“HTTPS”,“TCP”或“TERMINATED_HTTPS”。 |
protocol_port | String | 监听的协议端口号。 |
sni_container_refs | String | 对于容纳服务器名称指示(SNI)的TLS秘密的容器的引用列表。 该参数对于“TERMINATED_HTTPS”协议是必需的。 |
tenant_id | String | 所属租户ID |
响应示例
{
"listeners": [
{
"admin_state_up": true,
"connection_limit": 2000,
"default_pool_id": "3093f02c-1e0a-4e83-8aca-20b5ce6b3508",
"default_tls_container_ref": null,
"description": "",
"id": "6df0bcbe-91f1-403c-8df2-b415da3152f5",
"loadbalancers": [
{
"id": "8c040a5d-05b4-4a7e-a1ea-3e66839248f3"
}
],
"name": "listenerforLB-TEST",
"protocol": "HTTP",
"protocol_port": 80,
"sni_container_refs": [],
"tenant_id": "870c5414baee43a4ba7adfb253e46018"
},
{
"admin_state_up": true,
"connection_limit": 2000,
"default_pool_id": "b6cef254-955e-412f-8f40-385ceb15c24f",
"default_tls_container_ref": null,
"description": "",
"id": "7d9957d5-0246-41c8-b5a7-162a0de377cb",
"loadbalancers": [
{
"id": "e37b2efd-fa55-4671-8412-9c01b652af00"
}
],
"name": "Listener",
"protocol": "HTTP",
"protocol_port": 80,
"sni_container_refs": [],
"tenant_id": "870c5414baee43a4ba7adfb253e46018"
}
]
}
正常响应代码
200
错误码
400,401,403,404,409,413
创建监听器
功能介绍
创建负载均衡的监听器。
URI
POST /v2.0/lbaas/listeners
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
listener | object | 是 | 监听器对象 |
admin_state_up | boolean | 否 | 监听器资源的admin状态,取值true或者false。 |
connection_limit | integer | 否 | 最大的连接数,默认是-1表示无穷大。 |
description | String | 否 | 用户描述。 |
loadbalancer_id | String | 是 | 监听器关联的负载均衡器ID。 |
name | String | 是 | 监听器的名称。 |
protocol | String | 是 | 监听的协议类型,必须是“HTTP”,“HTTPS”,“TCP”或“TERMINATED_HTTPS”。 |
protocol_port | String | 是 | 监听的协议端口号。 |
tenant_id | String | 是 | 所属租户ID。 |
请求示例
示例:创建监听器POST /v2.0/baas/listeners
{
"listener": {
"admin_state_up": true,
"connection_limit": 100,
"loadbalancer_id": "8c040a5d-05b4-4a7e-a1ea-3e66839248f3",
"protocol": "TCP",
"protocol_port": "880"
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
listener | object | 监听器对象。 |
admin_state_up | boolean | 监听器资源的admin状态,取值true或者false。 |
connection_limit | integer | 最大的连接数,默认是-1表示无穷大。 |
created_time | String | 监听器的创建时间 (in UTC ISO8601 format)。 |
default_pool_id | String | 关联监听器的资源池ID |
default_tls_container_ref | String | 引用一个容纳TLS秘密的容器。 如果你也指定了sni_container_refs ,这个容器是默认的。 该参数对于“TERMINATED_HTTPS”协议是必需的 |
description | String | 用户描述。 |
id | String | 监听器ID。 |
loadbalancers | array | 监听器关联的负载均衡器列表。 |
name | String | 监听器的名称。 |
protocol | String | 监听的协议类型,必须是“HTTP”,“HTTPS”,“TCP”或“TERMINATED_HTTPS”。 |
protocol_port | String | 监听的协议端口号。 |
sni_container_refs | String | 对于容纳服务器名称指示(SNI)的TLS秘密的容器的引用列表。 该参数对于“TERMINATED_HTTPS”协议是必需的。 |
tenant_id | String | 所属租户ID |
响应示例
{
"listener": {
"admin_state_up": true,
"connection_limit": 100,
"create_time": "2021-02-25T09:09:24Z",
"default_pool_id": null,
"default_tls_container_ref": null,
"description": "",
"id": "ab244001-6cf3-4df4-ace6-d5922fc62c96",
"loadbalancers": [
{
"id": "8c040a5d-05b4-4a7e-a1ea-3e66839248f3"
}
],
"name": "",
"protocol": "TCP",
"protocol_port": 880,
"sni_container_refs": [],
"tenant_id": "89f60564953c48068513503e4cf4b12f"
}
}
正常响应代码
201
错误码
400,401,403,404,409,413
显示监听器详情
功能介绍
显示指定监听器详情。
URI
GET /v2.0/lbaas/listeners/{listener_id}
参数 | 是否必选 | 描述 |
---|---|---|
listener_id} | 是 | 监听器ID |
请求消息
无
请求示例
示例:显示监听器GET /v2.0/baas/listeners/ab244001-6cf3-4df4-ace6-d5922fc62c96
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
listener | object | 监听器对象 |
admin_state_up | boolean | 监听器资源的admin状态,取值true或者false。 |
connection_limit | integer | 最大的连接数,默认是-1表示无穷大。 |
create_time | String | 监听器的创建时间 (in UTC ISO8601 format)。 |
default_pool_id | String | 关联监听器的资源池ID |
default_tls_container_ref | String | 引用一个容纳TLS秘密的容器。 如果你也指定了sni_container_refs ,这个容器是默认的。 该参数对于“TERMINATED_HTTPS”协议是必需的 |
description | String | 用户描述 |
id | String | 监听器ID |
loadbalancers | array | 监听器关联的负载均衡器列表 |
name | String | 监听器的名称 |
protocol | String | 监听的协议类型,必须是“HTTP”,“HTTPS”,“TCP”或“TERMINATED_HTTPS”。 |
protocol_port | String | 监听的协议端口号 |
sni_container_refs | String | 对于容纳服务器名称指示(SNI)的TLS秘密的容器的引用列表。 该参数对于“TERMINATED_HTTPS”协议是必需的。 |
tenant_id | String | 所属租户ID |
响应示例
{
"listener": {
"admin_state_up": true,
"connection_limit": 100,
"create_time": "2021-02-25T09:09:24Z",
"default_pool_id": null,
"default_tls_container_ref": null,
"description": "",
"id": "ab244001-6cf3-4df4-ace6-d5922fc62c96",
"loadbalancers": [
{
"id": "8c040a5d-05b4-4a7e-a1ea-3e66839248f3"
}
],
"name": "",
"protocol": "TCP",
"protocol_port": 880,
"sni_container_refs": [],
"tenant_id": "89f60564953c48068513503e4cf4b12f"
}
}
正常响应代码
201
错误码
400,401,403,404,409,413
更新监听器
功能介绍
更新指定的监听器。
URI
PUT /v2.0/lbaas/listeners/{listener_id}
参数 | 是否必选 | 描述 |
---|---|---|
listener_id | 是 | 监听器ID |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
listener | object | 是 | 监听器对象 |
admin_state_up | boolean | 否 | 监听器资源的admin状态,取值true或者false。 |
connection_limit | integer | 否 | 最大的连接数,默认是-1表示无穷大。 |
description | String | 否 | 用户描述 |
name | String | 否 | 监听器的名称 |
请求示例
示例:更新监听器连接数POST /v2.0/baas/listeners
{
"listener": {
"admin_state_up": true,
"connection_limit": 1000
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
listener | object | 监听器对象 |
admin_state_up | boolean | 监听器资源的admin状态,取值true或者false。 |
connection_limit | integer | 最大的连接数,默认是-1表示无穷大。 |
create_time | String | 监听器的创建时间 (in UTC ISO8601 format)。 |
default_pool_id | String | 关联监听器的资源池ID |
default_tls_container_ref | String | 引用一个容纳TLS秘密的容器。 如果你也指定了sni_container_refs ,这个容器是默认的。 该参数对于“TERMINATED_HTTPS”协议是必需的 |
description | String | 用户描述。 |
id | String | 监听器ID。 |
loadbalancers | array | 监听器关联的负载均衡器列表。 |
name | String | 监听器的名称。 |
protocol | String | 监听的协议类型,必须是“HTTP”,“HTTPS”,“TCP”或“TERMINATED_HTTPS”。 |
protocol_port | String | 监听的协议端口号 |
sni_container_refs | String | 对于容纳服务器名称指示(SNI)的TLS秘密的容器的引用列表。 该参数对于“TERMINATED_HTTPS”协议是必需的。 |
tenant_id | String | 所属租户ID |
响应示例
{
"listener": {
"admin_state_up": true,
"connection_limit": 1000,
"create_time": "2021-02-25T09:09:24Z",
"default_pool_id": null,
"default_tls_container_ref": null,
"description": "",
"id": "ab244001-6cf3-4df4-ace6-d5922fc62c96",
"loadbalancers": [
{
"id": "8c040a5d-05b4-4a7e-a1ea-3e66839248f3"
}
],
"name": "",
"protocol": "TCP",
"protocol_port": 880,
"sni_container_refs": [],
"tenant_id": "89f60564953c48068513503e4cf4b12f"
}
}
正常响应代码
202
错误码
400,401,403,404,409,413
删除监听器
功能介绍
删除指定监听器。
URI
DELETE /v2.0/lbaas/listeners/{listener_id}
参数 | 是否必选 | 描述 |
---|---|---|
listener_id | 是 | 监听器ID |
请求消息
无
请求示例
示例:删除监听器POST /v2.0/baas/listeners/ab244001-6cf3-4df4-ace6-d5922fc62c96
响应消息
无
响应示例
无
正常响应代码
204
错误码
400,401,403,404,409,413
列举l7策略
功能介绍
列出项目的所有L7策略。
URI
GET /v2.0/lbaas/l7policies
请求消息
无
请求示例
无
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
action | String | L7策略动作。REDIRECT_TO_POOL、REDIRECT_TO_URI或REJECT。 |
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
description | String | 资源的人类可读描述。 |
id | String | L7策略的ID。 |
listener_id | String | 监听器的ID。 |
name | String | L7策略的人类可读名字。 |
position | integer | 这一策略在监听器的位置。从1开始。 |
redirect_pool_id | String | 匹配此策略的请求将被重定向到该ID的资源池。只有当action为REDIRECT_TO_POOL时才有效。 |
redirect_URI | String | 匹配此策略的请求将被重定向到此URI。只有当action是REDIRECT_TO_URI时才有效。 |
rules | String | 关联的L7规则id列表。 |
tenant_id | String | 该资源所属项目的的ID。 |
listeners | String | 监听器的ID列表。 |
响应示例
{
"l7policies": [{
"redirect_pool_id": null,
"description": "",
"admin_state_up": true,
"rules": [],
"tenant_id": "870c5414baee43a4ba7adfb253e46018",
"listener_id": "bd9721e3-bfb2-45f2-bd6c-1b4cdd8ce82f",
"listeners": [{
"id": "bd9721e3-bfb2-45f2-bd6c-1b4cdd8ce82f"
}],
"redirect_URI": null,
"action": "REJECT",
"position": 1,
"id": "8ceb4ede-12ff-460f-a667-b44084635a48",
"name": "my_l7_policy"
}]
}
正常响应代码
200
错误码
400,401,500
显示l7策略详细信息
功能介绍
显示l7策略详细信息。
前提条件
该l7策略存在。
URI
GET /v2.0/lbaas/l7policies/{l7policy_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | String | L7策略的ID。 |
请求消息
无
请求示例
无
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
action | String | L7策略动作。REDIRECT_TO_POOL、REDIRECT_TO_URI或REJECT。 |
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
description | String | 资源的人类可读描述。 |
id | String | L7策略的ID。 |
listener_id | String | 监听器的ID。 |
name | String | L7策略的人类可读名字。 |
position | integer | 这一策略在监听器的位置。从1开始。 |
redirect_pool_id | String | 匹配此策略的请求将被重定向到该ID的资源池。只有当action为REDIRECT_TO_POOL时才有效。 |
redirect_URI | String | 匹配此策略的请求将被重定向到此URI。只有当action是REDIRECT_TO_URI时才有效。 |
rules | String | 关联的L7规则id列表。 |
tenant_id | String | 该资源所属项目的的ID。 |
listeners | String | 监听器的ID列表。 |
响应示例
{
"l7policy": {
"redirect_pool_id": null,
"description": "",
"admin_state_up": true,
"rules": [],
"tenant_id": "870c5414baee43a4ba7adfb253e46018",
"listener_id": "bd9721e3-bfb2-45f2-bd6c-1b4cdd8ce82f",
"listeners": [{
"id": "bd9721e3-bfb2-45f2-bd6c-1b4cdd8ce82f"
}],
"redirect_URI": null,
"action": "REJECT",
"position": 1,
"id": "8ceb4ede-12ff-460f-a667-b44084635a48",
"name": "my_l7_policy"
}
}
正常响应代码
201
错误码
400,401,403,404,409,500,509
创建l7策略
功能介绍
创建L7策略。
前提条件
存在可用的监听器。
URI
POST /v2.0/lbaas/l7policies
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
description | String | 否 | 资源的人类可读描述。 |
listener_id | String | 是 | 监听器的ID。 |
redirect_URI | String | 否 | 匹配此策略的请求将被重定向到此URI。只有当action是REDIRECT_TO_URI时才有效。 |
redirect_pool_id | String | 否 | 匹配此策略的请求将被重定向到该ID的资源池。只有当action为REDIRECT_TO_POOL时才有效。 |
name | String | 否 | L7策略的人类可读名字。 |
action | String | 是 | L7策略动作。REDIRECT_TO_POOL、REDIRECT_TO_URI或REJECT。 |
请求示例
{
"l7policy": {
"description": "Redirect requests to example.com",
"listener_id": "bd9721e3-bfb2-45f2-bd6c-1b4cdd8ce82f",
"redirect_URI": "http://www.example.com",
"name": "redirect-example.com",
"action": "REDIRECT_TO_URI"
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
action | String | L7策略动作。REDIRECT_TO_POOL、REDIRECT_TO_URI或REJECT。 |
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
description | String | 资源的人类可读描述。 |
id | String | L7策略的ID。 |
listener_id | String | 监听器的ID。 |
name | String | L7策略的人类可读名字。 |
position | integer | 这一策略在监听器的位置。从1开始。 |
redirect_pool_id | String | 匹配此策略的请求将被重定向到该ID的资源池。只有当action为REDIRECT_TO_POOL时才有效。 |
redirect_URI | String | 匹配此策略的请求将被重定向到此URI。只有当action是REDIRECT_TO_URI时才有效。 |
rules | String | 关联的L7规则id列表。 |
tenant_id | String | 该资源所属项目的的ID。 |
listeners | String | 监听器的ID列表。 |
响应示例
{
"l7policy": {
"redirect_pool_id": null,
"description": "Redirect requests to example.com",
"admin_state_up": true,
"rules": [],
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"listener_id": "bd9721e3-bfb2-45f2-bd6c-1b4cdd8ce82f",
"redirect_URI": "http://www.example.com",
"action": "REDIRECT_TO_URI",
"position": 2,
"id": "192da7a8-38fe-4b31-96b7-b2ea17ce701b",
"name": "redirect-example.com"
}
}
正常响应代码
201
错误码
400
更新l7策略
功能介绍
更新l7策略。
前提条件
该l7策略存在。
URI
PUT /v2.0/lbaas/l7policies/{l7policy_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | L7策略的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
description | String | 否 | 资源的人类可读描述。 |
listener_id | String | 否 | 监听器的ID。 |
redirect_URI | String | 否 | 匹配此策略的请求将被重定向到此URI。只有当action是REDIRECT_TO_URI时才有效。 |
redirect_pool_id | String | 否 | 匹配此策略的请求将被重定向到该ID的资源池。只有当action为REDIRECT_TO_POOL时才有效。 |
name | String | 否 | L7策略的人类可读名字。 |
action | String | 否 | L7策略动作。REDIRECT_TO_POOL、REDIRECT_TO_URI或REJECT。 |
position | integer | 否 | 这一策略所在监听器的位置。位置从1开始。 |
请求示例
{
"l7policy": {
"description": "update l7policy test",
"redirect_URI": "http://www.test.com",
"name": "update-test",
"action": "REDIRECT_TO_URI",
"position": 1
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
action | String | L7策略动作。REDIRECT_TO_POOL、REDIRECT_TO_URI或REJECT。 |
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
description | String | 资源的人类可读描述。 |
id | String | L7策略的ID。 |
listener_id | String | 监听器的ID。 |
name | String | L7策略的人类可读名字。 |
position | integer | 这一策略在监听器的位置。从1开始。 |
redirect_pool_id | String | 匹配此策略的请求将被重定向到该ID的资源池。只有当action为REDIRECT_TO_POOL时才有效。 |
redirect_URI | String | 匹配此策略的请求将被重定向到此URI。只有当action是REDIRECT_TO_URI时才有效。 |
rules | String | 关联的L7规则id列表。 |
tenant_id | String | 该资源所属项目的的ID。 |
listeners | String | 监听器的ID列表。 |
响应示例
{
"l7policy": {
"redirect_pool_id": null,
"description": "update l7policy test",
"admin_state_up": true,
"rules": [],
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"listener_id": "bd9721e3-bfb2-45f2-bd6c-1b4cdd8ce82f",
"listeners": [{
"id": "bd9721e3-bfb2-45f2-bd6c-1b4cdd8ce82f"
}],
"redirect_URI": "http://www.test.com",
"action": "REDIRECT_TO_URI",
"position": 1,
"id": "192da7a8-38fe-4b31-96b7-b2ea17ce701b",
"name": "update-test"
}
}
正常响应代码
202
错误码
400,401,403,404,409,500
删除l7策略
功能介绍
删除l7策略。
前提条件
该l7策略存在。
URI
DELETE /v2.0/lbaas/l7policies/{l7policy_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | String | L7策略的ID。 |
请求消息
无
请求示例
无
响应消息
无
响应示例
无
正常响应代码
204
错误码
400,401,403,404,409,500
列举l7策略的规则
功能介绍
列出指定l7策略的所有l7规则。
前提条件
该l7策略存在。
URI
GET /v2.0/lbaas/l7policies/{l7policy_id}/rules
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | L7策略的ID。 |
请求消息
无
请求示例
无
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
compare_type | String | L7规则的比较类型。CONTAINS、ENDS_WITH、EQUAL_TO、REGEX或STARTS_WITH 其中一个。 |
id | String | L7规则的ID。 |
invert | boolean | 当为true时,规则的逻辑就颠倒了。例如,如果取反,等于就会变成不等于。 |
key | String | 用于比较的键。例如,要对比的的cookie的名称。 |
type | String | L7规则类型。COOKIE, FILE_TYPE, HEADER, HOST_NAME, PATH 之一。 |
value | String | 用于比较的值。例如,要比较的文件类型。 |
tenant_id | String | 该资源所属项目的ID。 |
响应示例
{
"rules": [{
"compare_type": "REGEX",
"admin_state_up": true,
"tenant_id": "870c5414baee43a4ba7adfb253e46018",
"invert": false,
"value": "/test_rule",
"key": null,
"type": "PATH",
"id": "4b38ab37-c2db-456c-bb05-234e93298668"
}]
}
正常响应代码
200
错误码
400,401,500
显示l7策略规则的详细信息
功能介绍
显示指定l7策略下指定l7规则的详细信息。
前提条件
该l7策略和l7规则均存在,且该l7规则属于该l7策略。
URI
GET /v2.0/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | L7策略的ID。 |
l7rule_id | 是 | L7规则的ID。 |
请求消息
无
请求示例
无
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
compare_type | String | L7规则的比较类型。CONTAINS、ENDS_WITH、EQUAL_TO、REGEX或STARTS_WITH 其中一个。 |
id | String | L7规则的ID。 |
invert | boolean | 当为true时,规则的逻辑就颠倒了。例如,如果取反,等于就会变成不等于。 |
key | String | 用于比较的键。例如,要对比的的cookie的名称。 |
type | String | L7规则类型。COOKIE, FILE_TYPE, HEADER, HOST_NAME, PATH 之一。 |
value | String | 用于比较的值。例如,要比较的文件类型。 |
tenant_id | String | 该资源所属项目的ID。 |
响应示例
{
"rule": {
"compare_type": "REGEX",
"admin_state_up": true,
"tenant_id": "870c5414baee43a4ba7adfb253e46018",
"invert": false,
"value": "/test_rule",
"key": null,
"type": "PATH",
"id": "4b38ab37-c2db-456c-bb05-234e93298668"
}
}
正常响应代码
200
错误码
401,403,404,500
创建l7策略的规则
功能介绍
在指定l7策略下创建一个l7规则。
前提条件
该l7策略存在。
URI
POST /v2.0/lbaas/l7policies/{l7policy_id}/rules
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | L7策略的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
compare_type | String | 是 | L7规则的比较类型。CONTAINS、ENDS_WITH、EQUAL_TO、REGEX或STARTS_WITH 其中一个。 |
invert | boolean | 否 | 当为true时,规则的逻辑就颠倒了。例如,如果取反,等于就会变成不等于。 |
key | String | 否 | 用于比较的键。例如,要对比的的cookie的名称。 |
type | String | 是 | L7规则类型。COOKIE, FILE_TYPE, HEADER, HOST_NAME, PATH 之一。 |
value | String | 是 | 用于比较的值。例如,要比较的文件类型。 |
请求示例
{
"rule": {
"compare_type": "REGEX",
"invert": false,
"type": "PATH",
"value": "/rule_test*"
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
compare_type | String | L7规则的比较类型。CONTAINS、ENDS_WITH、EQUAL_TO、REGEX或STARTS_WITH 其中一个。 |
id | String | L7规则的ID。 |
invert | boolean | 当为true时,规则的逻辑就颠倒了。例如,如果取反,等于就会变成不等于。 |
key | String | 用于比较的键。例如,要对比的的cookie的名称。 |
type | String | L7规则类型。COOKIE, FILE_TYPE, HEADER, HOST_NAME, PATH 之一。 |
value | String | 用于比较的值。例如,要比较的文件类型。 |
tenant_id | String | 该资源所属项目的ID。 |
响应示例
{
"rule": {
"compare_type": "REGEX",
"admin_state_up": true,
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"invert": false,
"value": "/rule_test*",
"key": null,
"type": "PATH",
"id": "81eb8c35-7ed0-47be-aff2-54ba10a83a6f"
}
}
正常响应代码
201
错误码
400,401,403,404,409,500,503
更新l7策略的规则
功能介绍
更新指定l7策略下的指定l7规则。
前提条件
该l7策略和规则都存在,且该规则在该l7策略下。
URI
PUT /v2.0/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | L7策略的ID。 |
l7rule_id | 是 | L7规则的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
compare_type | String | 是 | L7规则的比较类型。CONTAINS、ENDS_WITH、EQUAL_TO、REGEX或STARTS_WITH 其中一个。 |
invert | boolean | 否 | 当为true时,规则的逻辑就颠倒了。例如,如果取反,等于就会变成不等于。 |
key | String | 否 | 用于比较的键。例如,要对比的的cookie的名称。 |
type | String | 是 | L7规则类型。COOKIE, FILE_TYPE, HEADER, HOST_NAME, PATH 之一。 |
value | String | 是 | 用于比较的值。例如,要比较的文件类型。 |
请求示例
{
"rule": {
"compare_type": "REGEX",
"invert": true,
"type": "PATH",
"value": "/update_rule*"
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 资源的管理状态,即up (true)或down (false)。 |
compare_type | String | L7规则的比较类型。CONTAINS、ENDS_WITH、EQUAL_TO、REGEX或STARTS_WITH 其中一个。 |
id | String | L7规则的ID。 |
invert | boolean | 当为true时,规则的逻辑就颠倒了。例如,如果取反,等于就会变成不等于。 |
key | String | 用于比较的键。例如,要对比的的cookie的名称。 |
type | String | L7规则类型。COOKIE, FILE_TYPE, HEADER, HOST_NAME, PATH 之一。 |
value | String | 用于比较的值。例如,要比较的文件类型。 |
tenant_id | String | 该资源所属项目的ID。 |
响应示例
{
"rule": {
"compare_type": "REGEX",
"admin_state_up": true,
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"invert": true,
"value": "/update_rule*",
"key": null,
"type": "PATH",
"id": "81eb8c35-7ed0-47be-aff2-54ba10a83a6f"
}
}
正常响应代码
201
错误码
400,401,403,404,409,500,503
删除l7策略的规则
功能介绍
删除指定l7策略下的指定l7规则。
前提条件
该l7策略和规则都存在,且该l7规则在该策略下。
URI
DELETE /v2/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | L7策略的ID。 |
l7rule_id | 是 | L7规则的ID。 |
请求消息
无
请求示例
无
响应消息
无
响应示例
无
正常响应代码
204
错误码
400,401,403,404,409,500
列举健康检查器
功能介绍
列举健康检查器。
URI
GET /v2.0/lbaas/health_monitors
请求消息
无
请求示例
示例:列举健康检查器GET /v2.0/baas/health_monitors
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
healthmonitors | object | 健康检查器对象 |
admin_state_up | boolean | 健康检查器资源的admin状态,取值true或者false。 |
delay | integer | 检查成员的间隔时间,秒为单位。 |
expected_codes | String | 检查成员状态健康的期望答复,默认200 |
http_method | String | 检查成员使用的http方法,connect,delete,get,head,options,patch,post,put,trace默认get。 |
loadbalancer_id | String | 监听器关联的负载均衡器ID。 |
max_retries | integer | 检查成员成功的最大尝试次数,达到次数置为OFFLINE,1~10次 |
max_retries_down | integer | 检查成员失败的最大尝试次数,超过次数就置为ERROR状态,1~10次默认3 |
name | String | 健康检查器的名称。 |
pools | String | 健康检查的pool 列表。 |
tenant_id | String | 所属租户ID。 |
timeout | integer | 检查的超时时间,秒为单位 |
type | String | 检查使用的协议类型,必须是HTTP,HTTPS,PING,TCP |
URI_path | String | 检查成员使用的URI path,默认是/ |
响应示例
{
"healthmonitors": [
{
"admin_state_up": true,
"delay": 3,
"expected_codes": "200",
"http_method": "GET",
"id": "b8958d32-e083-422f-badb-289e9a2b785f",
"max_retries": 3,
"max_retries_down": 3,
"name": "",
"pools": [
{
"id": "3093f02c-1e0a-4e83-8aca-20b5ce6b3508"
}
],
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"timeout": 5,
"type": "HTTP",
"URI_path": "/"
}
]
}
正常响应代码
200
错误码
400,401,403,404,409,413
列举lb资源池
功能介绍
列举lb资源池。
URI
GET /v2.0/lbaas/pools
请求示例
GET /v2.0/lbaas/pools
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
pools | array | pool对象列表 |
lb_algorithm | String | 负载均衡算法 |
protocol | String | 协议 |
description | String | 描述 |
loadbalancers | array | 负载均衡器列表 |
loadbalancers:id | String | 负载均衡器id |
tenant_id | String | 租户id |
session_persistence | object | session持久化 |
session_persistence:cookie_name | String | cookie名称 |
session_persistence:type | String | session类型 |
healthmonitor_id | String | 健康检查器id |
listeners | array | 监听器id列表 |
create_time | String | 创建时间 |
members | array | 资源member id列表 |
id | String | 资源池pool id |
name | String | 资源池pool名字 |
响应示例
{
"pools":[
{
"lb_algorithm":"ROUND_ROBIN",
"protocol":"HTTP",
"description":"",
"admin_state_up":true,
"loadbalancers":[
{
"id":"40365a08-31f3-4062-b6eb-4c46e9d45aa1"
}
],
"tenant_id":"2caf92e24f284a76be9cb54577ecebed",
"session_persistence":null,
"healthmonitor_id":"430f6b15-4ec0-4da7-a3fb-68314c6253ce",
"listeners":[
],
"create_time":"2021-02-25T08:11:20Z",
"members":[
],
"id":"96ecfd37-f5e9-4f0e-8722-481e27a34480",
"name":"ltest_compute"
}
]
}
显示lb资源池详情
功能介绍
显示lb资源池详情。
URI
GET /v2.0/lbaas/pools/[lb pool id]
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
pool_id | 否 | String | lb资源池id |
请求示例
GET /v2.0/lbaas/pools/96ecfd37-f5e9-4f0e-8722-481e27a34480
响应示例
{
"pool":{
"lb_algorithm":"ROUND_ROBIN",
"protocol":"HTTP",
"description":"",
"admin_state_up":true,
"loadbalancers":[
{
"id":"40365a08-31f3-4062-b6eb-4c46e9d45aa1"
}
],
"tenant_id":"2caf92e24f284a76be9cb54577ecebed",
"session_persistence":null,
"healthmonitor_id":"430f6b15-4ec0-4da7-a3fb-68314c6253ce",
"listeners":[
],
"create_time":"2021-02-25T08:11:20Z",
"members":[
],
"id":"96ecfd37-f5e9-4f0e-8722-481e27a34480",
"name":"ltest_compute"
}
}
创建lb资源池
功能介绍
创建资源池。
URI
POST /v2.0/lbaas/pools
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
name | 否 | String | lb资源池名称 |
lb_algorithm | 否 | String | 负载均衡策略ROUND_ROBIN,LEAST_CONNECTIONS,SOURCE_IP |
listener_id | 是 | String | lb监听器uuid(监听器或负载均衡器两个必须二选一) |
loadbalancer_id | 是 | String | 负载均衡器uuid(监听器或负载均衡器两个必须二选一) |
protocol | 否 | String | 负载均衡协议(HTTP,HTTPS,TCP,PROXY) |
session_persistence | 是 | object | 会话持久,type:session type,cookie_name: cookie名称 |
请求示例
POST /v2.0/lbaas/pools
{
"pool":{
"lb_algorithm":"ROUND_ROBIN",
"admin_state_up":true,
"protocol":"TCP",
"name":"test_pool",
"loadbalancer_id":"40365a08-31f3-4062-b6eb-4c46e9d45aa1"
}
}
响应示例
{
"pool":{
"lb_algorithm":"ROUND_ROBIN",
"protocol":"TCP",
"description":"",
"admin_state_up":true,
"loadbalancers":[
{
"id":"40365a08-31f3-4062-b6eb-4c46e9d45aa1"
}
],
"tenant_id":"cf8d21b7fc084813a0481fb9bf331357",
"session_persistence":null,
"healthmonitor_id":null,
"listeners":[
],
"create_time":"2021-02-25T08:42:41Z",
"members":[
],
"id":"e06613d5-af39-4aa7-a56c-590d05bf422e",
"name":"test_pool"
}
}
更新lb资源池
功能介绍
更新资源池。
URI
PUT /v2.0/lbaas/pools/[pool id]
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
pool_id | 否 | String | lb资源池pool id |
lb_algorithm | 否 | String | 负载均衡策略ROUND_ROBIN,LEAST_CONNECTIONS,SOURCE_IP |
请求示例
PUT /v2.0/lbaas/pools/96ecfd37-f5e9-4f0e-8722-481e27a34480
{
"pool":{
"lb_algorithm":"LEAST_CONNECTIONS"
}
}
响应示例
{
"pool":{
"lb_algorithm":"LEAST_CONNECTIONS",
"protocol":"TCP",
"description":"",
"admin_state_up":true,
"loadbalancers":[
{
"id":"40365a08-31f3-4062-b6eb-4c46e9d45aa1"
}
],
"tenant_id":"cf8d21b7fc084813a0481fb9bf331357",
"session_persistence":null,
"healthmonitor_id":null,
"listeners":[
],
"create_time":"2021-02-25T08:42:41Z",
"members":[
],
"id":"e06613d5-af39-4aa7-a56c-590d05bf422e",
"name":"test_pool"
}
}
删除lb资源池
功能介绍
删除资源池。
URI
DELETE /v2.0/lbaas/pools/[pool id]
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
pool_id | 否 | String | lb资源池pool id |
请求示例
DELETE /v2.0/lbaas/pools/ec55a14c-fac0-4d90-a90e-c12e41c6ea60
响应示例
204 No Content
列举lb资源池内所有资源
功能介绍
列举资源池内的的所有资源。
URI
GET /v2.0/lbaas/pools/[pool id]/members
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
pool_id | 否 | String | lb资源池uuid |
请求示例
GET /v2.0/lbaas/pools/96ecfd37-f5e9-4f0e-8722-481e27a34480/members
响应信息
参数 | 参数类型 | 描述 |
---|---|---|
members | array | 资源member对象列表 |
name | String | 资源名字 |
weight | integer | 权重0~256 |
admin_state_up | bool | admin状态 |
subnet_id | String | 资源所属子网id |
tenant_id | String | 租户id |
address | String | 资源ip地址 |
protocol_port | integer | 协议端口号 |
id | String | String |
operating_status | String | 资源操作状态:ACTIVE,DELETED,ERROR,PENDING_CREATE,PENDING_UPDATE,PENDING_DELETE |
响应示例
{
"members":[
{
"name":"",
"weight":100,
"admin_state_up":true,
"subnet_id":"d438e034-2daa-4d4d-a0cb-a02958738868",
"tenant_id":"cf8d21b7fc084813a0481fb9bf331357",
"address":"192.168.111.11",
"protocol_port":80,
"id":"58285122-3707-4abc-9a3a-635bf9bf9739",
"operating_status":"OFFLINE"
}
]
}
显示lb资源池内某个资源详情
功能介绍
现实资源池内某个资源的资源详情。
URI
GET /v2.0/lbaas/pools/[pool id]/members/[member id]
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
pool_id | 否 | String | lb资源池uuid |
member_id | 否 | String | lb资源池内member的uuid |
请求示例
GET /v2.0/lbaas/pools/96ecfd37-f5e9-4f0e-8722-481e27a34480/members/58285122-3707-4abc-9a3a-635bf9bf9739
lb资源池添加资源
功能介绍
资源池添加资源。
URI
POST /v2.0/lbaas/pools/[pool id]/members
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
pool_id | 否 | String | lb资源池uuid |
subnet_id | 否 | String | 资源所在子网uuid |
protocol_port | 否 | String | 协议端口 |
weight | 否 | String | 权重0~256 |
address | 否 | String | 资源在子网内的ip地址 |
请求示例
POST /v2.0/lbaas/pools/96ecfd37-f5e9-4f0e-8722-481e27a34480/members
{
"member":{
"subnet_id":"d438e034-2daa-4d4d-a0cb-a02958738868",
"protocol_port":"80",
"weight":"100",
"address":"192.168.111.11",
"admin_state_up":true
}
}
响应示例
{
"member":{
"name":"",
"weight":"100",
"admin_state_up":true,
"subnet_id":"d438e034-2daa-4d4d-a0cb-a02958738868",
"tenant_id":"cf8d21b7fc084813a0481fb9bf331357",
"address":"192.168.111.11",
"protocol_port":80,
"id":"58285122-3707-4abc-9a3a-635bf9bf9739",
"operating_status":"OFFLINE"
}
}
更新lb资源池内资源
功能介绍
更新资源池内资源。
URI
PUT /v2.0/lbaas/pools/[pool id]/members/[member id]
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
pool_id | 否 | String | lb资源池uuid |
member_id | 否 | String | lb资源池内member的uuid |
weight | 是 | String | 权重0~256 |
name | 是 | String | member名称 |
请求示例
PUT /v2.0/lbaas/pools/96ecfd37-f5e9-4f0e-8722-481e27a34480/members/4c33b76b-2989-4073-94aa-2558fd6c024a
{
"member":{
"name":"member_rename",
"weight":"101"
}
}
响应示例
{
"member":{
"name":"member_rename",
"weight":101,
"admin_state_up":true,
"subnet_id":"d438e034-2daa-4d4d-a0cb-a02958738868",
"tenant_id":"cf8d21b7fc084813a0481fb9bf331357",
"address":"192.168.111.11",
"protocol_port":80,
"id":"4c33b76b-2989-4073-94aa-2558fd6c024a",
"operating_status":"OFFLINE"
}
}
删除lb资源池内资源
功能介绍
删除资源池资源。
URI
DELETE /v2.0/lbaas/pools/[pool id]/members/[member id]
请求消息
参数 | 是否可选 | 参数类型 | 描述 |
---|---|---|---|
pool_id | 否 | String | lb资源池uuid |
member_id | 否 | String | lb资源池内member的uuid |
请求示例
DELETE /v2.0/lbaas/pools/96ecfd37-f5e9-4f0e-8722-481e27a34480/members/58285122-3707-4abc-9a3a-635bf9bf9739
响应示例
204 No Content
创建健康检查器
功能介绍
创建健康检查器,用于监控资源池成员状态。
URI
POST /v2.0/lbaas/health_monitors
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
healthmonitor | object | 是 | 健康检查器对象 |
admin_state_up | boolean | 否 | 健康检查器资源的admin状态,取值true或者false。 |
delay | integer | 是 | 检查成员的间隔时间,秒为单位 |
expected_codes | String | 否 | 检查成员状态健康的期望答复,默认200 |
http_method | String | 否 | 检查成员使用的http方法,connect,delete,get,head,options,patch,post,put,trace默认get |
loadbalancer_id | String | 是 | 监听器关联的负载均衡器ID。 |
max_retries | integer | 是 | 检查成员成功的最大尝试次数,达到次数置为OFFLINE,1~10次 |
max_retries_down | integer | 否 | 检查成员失败的最大尝试次数,超过次数就置为ERROR状态,1~10次默认3 |
name | String | 是 | 健康检查器的名称。 |
pool_id | String | 是 | 健康检查的pool ID |
tenant_id | String | 是 | 所属租户ID。 |
timeout | integer | 是 | 检查的超时时间,秒为单位 |
type | String | 是 | 检查使用的协议类型,必须是HTTP,HTTPS,PING,TCP |
URI_path | String | 否 | 检查成员使用的URI path,默认是/ |
请求示例
示例:创建健康检查器POST /v2.0/baas/health_monitors
{
"healthmonitor": {
"admin_state_up": true,
"delay": "3",
"expected_codes": "200",
"http_method": "GET",
"max_retries": "3",
"pool_id": "3093f02c-1e0a-4e83-8aca-20b5ce6b3508",
"timeout": "5",
"type": "HTTP"
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
healthmonitor | object | 健康检查器对象 |
admin_state_up | boolean | 健康检查器资源的admin状态,取值true或者false。 |
delay | integer | 检查成员的间隔时间,秒为单位 |
expected_codes | String | 检查成员状态健康的期望答复,默认200 |
http_method | String | 检查成员使用的http方法,connect,delete,get,head,options,patch,post,put,trace默认get |
loadbalancer_id | String | 监听器关联的负载均衡器ID。 |
max_retries | integer | 检查成员成功的最大尝试次数,达到次数置为OFFLINE,1~10次 |
max_retries_down | integer | 检查成员失败的最大尝试次数,超过次数就置为ERROR状态,1~10次默认3 |
name | String | 健康检查器的名称。 |
pools | String | 健康检查的pool 列表 |
tenant_id | String | 所属租户ID。 |
timeout | integer | 检查的超时时间,秒为单位 |
type | String | 检查使用的协议类型,必须是HTTP,HTTPS,PING,TCP |
URI_path | String | 检查成员使用的URI path,默认是/ |
响应示例
{
"healthmonitor": {
"admin_state_up": true,
"delay": 3,
"expected_codes": "200",
"http_method": "GET",
"id": "b8958d32-e083-422f-badb-289e9a2b785f",
"max_retries": 3,
"max_retries_down": 3,
"name": "",
"pools": [
{
"id": "3093f02c-1e0a-4e83-8aca-20b5ce6b3508"
}
],
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"timeout": 5,
"type": "HTTP",
"URI_path": "/"
}
}
正常响应代码
201
错误码
400,401,403,404,409,413
显示健康检查器详情
功能介绍
显示健康检查器。
URI
get /v2.0/lbaas/health_monitors/{health_monitor_id}
参数 | 是否必选 | 描述 |
---|---|---|
health_monitor_id | 是 | 健康检查器的ID |
请求消息
无
请求示例
示例:显示健康检查器GET /v2.0/baas/health_monitors/b8958d32-e083-422f-badb-289e9a2b785f
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
healthmonitor | object | 健康检查器对象 |
admin_state_up | boolean | 健康检查器资源的admin状态,取值true或者false。 |
delay | integer | 检查成员的间隔时间,秒为单位 |
expected_codes | String | 检查成员状态健康的期望答复,默认200 |
http_method | String | 检查成员使用的http方法,connect,delete,get,head,options,patch,post,put,trace默认get |
loadbalancer_id | String | 监听器关联的负载均衡器ID。 |
max_retries | integer | 检查成员成功的最大尝试次数,达到次数置为OFFLINE,1~10次 |
max_retries_down | integer | 检查成员失败的最大尝试次数,超过次数就置为ERROR状态,1~10次默认3 |
name | String | 健康检查器的名称。 |
pools | String | 健康检查的pool 列表 |
tenant_id | String | 所属租户ID。 |
timeout | integer | 检查的超时时间,秒为单位 |
type | String | 检查使用的协议类型,必须是HTTP,HTTPS,PING,TCP |
URI_path | String | 检查成员使用的URI path,默认是/ |
响应示例
{
"healthmonitor": {
"admin_state_up": true,
"delay": 3,
"expected_codes": "200",
"http_method": "GET",
"id": "b8958d32-e083-422f-badb-289e9a2b785f",
"max_retries": 3,
"max_retries_down": 3,
"name": "",
"pools": [
{
"id": "3093f02c-1e0a-4e83-8aca-20b5ce6b3508"
}
],
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"timeout": 5,
"type": "HTTP",
"URI_path": "/"
}
}
正常响应代码
200
错误码
400,401,403,404,409,413
更新健康检查器
功能介绍
更新健康检查器。
URI
PUT /v2.0/lbaas/health_monitors/{health_monitor_id}
参数 | 是否必选 | 描述 |
---|---|---|
health_monitor_id | 是 | 健康检查器的ID |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
healthmonitor | object | 是 | 健康检查器对象 |
admin_state_up | boolean | 否 | 健康检查器资源的admin状态,取值true或者false。 |
delay | integer | 是 | 检查成员的间隔时间,秒为单位 |
expected_codes | String | 否 | 检查成员状态健康的期望答复,默认200 |
http_method | String | 否 | 检查成员使用的http方法,connect,delete,get,head,options,patch,post,put,trace默认get |
max_retries | integer | 否 | 检查成员成功的最大尝试次数,达到次数置为OFFLINE,1~10次 |
max_retries_down | integer | 否 | 检查成员失败的最大尝试次数,超过次数就置为ERROR状态,1~10次默认3 |
name | String | 否 | 健康检查器的名称。 |
timeout | integer | 否 | 检查的超时时间,秒为单位 |
URI_path | String | 否 | 检查成员使用的URI path,默认是/ |
请求示例
示例:更新健康监听器POST /v2.0/baas/health_monitors
{
"healthmonitor": {
"delay": "4",
"max_retries": "4",
}
}
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
healthmonitor | object | 健康检查器对象 |
admin_state_up | boolean | 健康检查器资源的admin状态,取值true或者false。 |
delay | integer | 检查成员的间隔时间,秒为单位 |
expected_codes | String | 检查成员状态健康的期望答复,默认200 |
http_method | String | 检查成员使用的http方法,connect,delete,get,head,options,patch,post,put,trace默认get |
loadbalancer_id | String | 监听器关联的负载均衡器ID。 |
max_retries | integer | 检查成员成功的最大尝试次数,达到次数置为OFFLINE,1~10次 |
max_retries_down | integer | 检查成员失败的最大尝试次数,超过次数就置为ERROR状态,1~10次默认3 |
name | String | 健康检查器的名称。 |
pools | String | 健康检查的pool 列表 |
tenant_id | String | 所属租户ID。 |
timeout | integer | 检查的超时时间,秒为单位 |
type | String | 检查使用的协议类型,必须是HTTP,HTTPS,PING,TCP |
URI_path | String | 检查成员使用的URI path,默认是/ |
响应示例
{
"healthmonitor": {
"admin_state_up": true,
"delay": 4,
"expected_codes": "200",
"http_method": "GET",
"id": "b8958d32-e083-422f-badb-289e9a2b785f",
"max_retries": 4,
"max_retries_down": 3,
"name": "",
"pools": [
{
"id": "3093f02c-1e0a-4e83-8aca-20b5ce6b3508"
}
],
"tenant_id": "89f60564953c48068513503e4cf4b12f",
"timeout": 5,
"type": "HTTP",
"URI_path": "/"
}
}
正常响应代码
202
错误码
400,401,403,404,409,413
删除健康检查器
功能介绍
删除健康检查器。
URI
DELETE /v2.0/lbaas/health_monitors/{health_monitor_id}
参数 | 是否必选 | 描述 |
---|---|---|
health_monitor_id | 是 | 健康检查器的ID |
请求消息
无
请求示例
示例:删除健康检查器DELETE /v2.0/baas/health_monitors/b8958d32-e083-422f-badb-289e9a2b785f
响应消息
无
响应示例
无
正常响应代码
204
错误码
400,401,403,404,409,413