监听器
列举监听器
功能介绍
查询监听器列表。
URI
GET /v2.0/lbaas/listeners
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
fields | string | 否 | 你想让服务器返回的字段。如果没有指定字段的查询参数,API会返回所有监听器的属性。通过使用fields 参数,API只返回请求的属性集。可以指定多个字段的参数。例如,如果您指定fields=id&fields=name 的请求URL,那么只有id 和name 属性将返回。 |
project_id | string | 否 | 指定项目ID进行查询。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 监听器的管理状态。true表示启用,false表示停用。 |
allowed_cidrs | array | 白名单,允许访问的IP列表。 |
alpn_protocols | array | ALPN协议列表。取值为:http/1.0、http/1.1或h2。 若监听器协议为TERMINATED_HTTPS,默认为[‘h2’, ‘http/1.1’, ‘http/1.0’]。 选择其余协议,此项默认为None。 此字段暂不支持产品化配置,请勿使用。 |
client_authentication | string | TLS客户端认证模式。取值为:NONE、OPTIONAL或MANDATORY。 此字段暂不支持产品化配置,请勿使用。 |
client_ca_tls_container_ref | string | 监听器使用的CA证书ID。对证书管理服务中客户端秘钥的引用。 此字段暂不支持产品化配置,请勿使用。 |
client_crl_container_ref | string | 监听器使用的CA证书吊销列表ID。证书管理服务中秘钥的URI。 此字段暂不支持产品化配置,请勿使用。 |
connection_limit | integer | 此监听器的最大连接数。默认值为-1,表示无连接数量限制。 |
created_at | string | 监听器的创建的时间。 |
default_pool_id | uuid | 监听器关联的默认资源池ID。默认资源池指没有L7策略匹配时使用的资源池。 |
default_tls_container_ref | string | 监听器使用的服务器证书ID。对证书管理服务中服务器秘钥的引用。对证书管理服务中服务器秘钥的引用。 |
description | string | 监听器的描述。 |
id | uuid | 监听器的ID。 |
insert_headers | object | 可选的HTTP头插入。在将请求发送到后端成员前,在请求中插入的字典值。Key和Value都必须是字符串。 |
l7policies | array | L7策略的ID列表。 |
listener | object | listener 对象。 |
loadbalancers | array | 监听器关联的负载均衡器的ID列表。 |
name | string | 监听器的名称。 |
operating_status | string | 监听器的运行状态。 |
project_id | string | 监听器所属项目的ID。 |
protocol | string | 监听器的协议。取值为:HTTP、TCP、FORWARD_TCP、TERMINATED_HTTPS或UDP。注释:界面中TCP对应TCP(标准模式),FORWARD_TCP对应TCP(性能模式),TERMINATED_HTTPS对应HTTPS。 |
protocol_port | integer | 监听器监听的端口号。 |
provisioning_status | string | 监听器的配置状态。 |
redirect_listener_id | string | HTTP重定向目的监听器的ID。只有此监听器的协议为HTTP时生效,为null时表示此监听器不重定向。选择非HTTP协议时此项固定为null。 |
tags | list | 标签。 |
timeout_client_data | integer | 客户端空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_member_connect | integer | 成员连接超时时间(以毫秒为单位)。默认值:5000。 |
timeout_member_data | integer | 成员空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_tcp_inspect | integer | 等待其他TCP数据包进行内容检查的时间(以毫秒为单位)。默认值:0。 |
tls_ciphers | string | OpenSSL密码列表(以冒号分隔)。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256。 选择其余协议,此项默认为None。 |
tls_versions | array | TLS协议版本列表。可用版本:SSLv3、TLSv1、TLSv1.1、TLSv1.2、TLSv1.3。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为[‘TLSv1.2’, ‘TLSv1.3’]。 选择其余协议,此项默认为None。 |
updated_at | string | 监听器最后一次更新的时间。 |
请求示例
curl -X GET http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/listeners -H "X-Auth-Token: <token>"
正常响应示例
{
"listeners": [
{
"description": "A great TLS listener",
"admin_state_up": true,
"project_id": "e3cd678b11784734bc366148aa37580e",
"protocol": "TERMINATED_HTTPS",
"protocol_port": 443,
"provisioning_status": "ACTIVE",
"default_tls_container_ref": "http://barbican.barbican.svc.cluster.local/v1/containers/a570068c-d295-4780-91d4-3046a325db51",
"loadbalancers": [
{
"id": "607226db-27ef-4d41-ae89-f2a800e9c2db"
}
],
"insert_headers": {
"X-Forwarded-Port": "true",
"X-Forwarded-For": "true"
},
"created_at": "2017-02-28T00:42:44",
"updated_at": "2017-02-28T00:44:30",
"id": "023f2e34-7806-443b-bfae-16c324569a3d",
"operating_status": "ONLINE",
"default_pool_id": "ddb2b28f-89e9-45d3-a329-a359c3e39e4a",
"sni_container_refs": [
"http://barbican.barbican.svc.cluster.local/v1/containers/a570068c-d295-4780-91d4-3046a325db51",
"http://barbican.barbican.svc.cluster.local/v1/containers/aaebb31e-7761-4826-8cb4-2b829caca3ee"
],
"l7policies": [
{
"id": "58284ac9-673e-47ff-9dcb-09871a1956c4",
"id": "5e618272-339d-4a80-8d14-dbc093091bb1"
}
],
"name": "great_tls_listener",
"timeout_client_data": 50000,
"timeout_member_connect": 5000,
"timeout_member_data": 50000,
"timeout_tcp_inspect": 0,
"tags": ["test_tag"],
"client_ca_tls_container_ref": "http://barbican.barbican.svc.cluster.local/v1/containers/35649991-49f3-4625-81ce-2465fe8932e5",
"client_authentication": "NONE",
"client_crl_container_ref": "http://barbican.barbican.svc.cluster.local/v1/containers/e222b065-b93b-4e2a-9a02-804b7a118c3c",
"allowed_cidrs": [
"192.0.2.0/24",
"198.51.100.0/24"
],
"tls_ciphers": "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256",
"tls_versions": ["TLSv1.2", "TLSv1.3"],
"alpn_protocols": ["http/1.1", "http/1.0"],
"redirect_listener_id": null
}
]
}
正常响应代码
200
错误码
401,403,404,500
创建监听器
功能介绍
创建一个监听器
URI
POST /v2.0/lbaas/listeners
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
admin_state_up | boolean | 否 | 监听器的管理状态。true表示启用,false表示停用。 |
allowed_cidrs | array | 否 | 白名单,允许访问的IP列表。 |
alpn_protocols | array | 否 | ALPN协议列表。取值为:http/1.0、http/1.1或h2。 若监听器协议为TERMINATED_HTTPS,默认为[‘h2’, ‘http/1.1’, ‘http/1.0’]。 选择其余协议,此项默认为None。 此字段暂不支持产品化配置,请勿使用。 |
client_authentication | string | 否 | TLS客户端认证模式。取值为:NONE、OPTIONAL或MANDATORY。 此字段暂不支持产品化配置,请勿使用。 |
client_ca_tls_container_ref | string | 否 | 监听器使用的CA证书ID。对证书管理服务中客户端秘钥的引用。 此字段暂不支持产品化配置,请勿使用。 |
client_crl_container_ref | string | 否 | 监听器使用的CA证书吊销列表。证书管理服务中秘钥的URI。 此字段暂不支持产品化配置,请勿使用。 |
connection_limit | integer | 否 | 此监听器的最大连接数。默认值为-1,表示无连接数量限制。 |
default_pool | object | 否 | 监听器的默认资源池对象。 |
default_pool_id | uuid | 否 | 监听器关联的默认资源池ID。默认资源池指没有L7策略匹配时使用的资源池。 |
default_tls_container_ref | string | 否 | 监听器使用的服务器证书ID。对证书管理服务中服务器秘钥的引用。 |
description | string | 否 | 监听器的描述。 |
insert_headers | object | 否 | 在将请求发送到后端成员前,在请求中插入的字典值。Key和Value都必须是指定的字符串。 |
l7policies | array | 否 | L7策略的ID列表。 |
listener | object | 是 | listener 对象。 |
loadbalancer_id | array | 是 | 监听器关联的负载均衡器ID。 |
name | string | 否 | 监听器的名称。 |
project_id | string | 否 | 监听器所属的项目ID。 |
protocol | string | 是 | 监听器的协议。取值为:HTTP、TCP、FORWARD_TCP、TERMINATED_HTTPS或UDP。注释:界面中TCP对应TCP(标准模式),FORWARD_TCP对应TCP(性能模式),TERMINATED_HTTPS对应HTTPS。 |
protocol_port | integer | 是 | 监听器监听的端口号。 |
sni_container_refs | array | 否 | 监听器使用的SNI证书(带域名的服务器证书)ID列表。 此字段暂不支持产品化配置,请勿使用。 |
redirect_listener_id | string | 否 | HTTP重定向目的监听器的ID。取值为:null或同属于此LB的HTTPS监听器ID。 只有该监听器的协议为HTTP时生效。为null时表示此监听器不重定向; 为HTTPS监听器ID时表示此端口收到HTTP请求时将返回301的状态码并重定向至指定的HTTPS端口。 |
tags | list | 否 | 标签。 |
timeout_client_data | integer | 否 | 客户端空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_member_connect | integer | 否 | 成员连接超时时间(以毫秒为单位)。默认值:5000。 |
timeout_member_data | integer | 否 | 成员空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_tcp_inspect | integer | 否 | 等待其他TCP数据包进行内容检查的时间(以毫秒为单位)。默认值:0。 |
tls_ciphers | string | 是 | OpenSSL密码列表(以冒号分隔)。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256。 选择其余协议,此项默认为None。 |
tls_versions | array | 是 | TLS协议版本列表。可用版本:SSLv3、TLSv1、TLSv1.1、TLSv1.2、TLSv1.3。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为[‘TLSv1.2’, ‘TLSv1.3’]。 选择其余协议,此项默认为None。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 监听器的管理状态。true表示启用,false表示停用。 |
allowed_cidrs | array | 白名单,允许访问的IP列表。 |
alpn_protocols | array | ALPN协议列表。取值为:http/1.0、http/1.1或h2。 若监听器协议为TERMINATED_HTTPS,默认为[‘h2’, ‘http/1.1’, ‘http/1.0’]。 选择其余协议,此项默认为None。 此字段暂不支持产品化配置,请勿使用。 |
client_authentication | string | TLS客户端认证模式。取值为:NONE、OPTIONAL或MANDATORY。 此字段暂不支持产品化配置,请勿使用。 |
client_ca_tls_container_ref | string | 监听器使用的CA证书ID。对证书管理服务中客户端秘钥的引用。 此字段暂不支持产品化配置,请勿使用。 |
client_crl_container_ref | string | 监听器使用的CA证书吊销列表。证书管理服务中秘钥的URI。 此字段暂不支持产品化配置,请勿使用。 |
connection_limit | integer | 此监听器的最大连接数。默认值为-1,表示无连接数量限制。 |
created_at | string | 监听器的创建的时间。 |
default_pool_id | uuid | 监听器关联的默认资源池ID。默认资源池指没有L7策略匹配时使用的资源池。 |
default_tls_container_ref | string | 监听器使用的服务器证书ID。对证书管理服务中服务器秘钥的引用。 |
description | string | 监听器的描述。 |
id | uuid | 监听器的 ID。 |
insert_headers | object | 可选的HTTP头插入。在将请求发送到后端成员前,在请求中插入的字典值。Key和Value都必须是字符串。 |
l7policies | array | L7策略的ID列表。 |
listener | object | listener 对象。 |
loadbalancers | array | 负载均衡器的 ID 列表。 |
name | string | 监听器的名称。 |
operating_status | string | 监听器的运行状态。 |
project_id | string | 监听器所属项目的 ID。 |
protocol | string | 监听器的协议。取值为:HTTP、TCP、FORWARD_TCP、TERMINATED_HTTPS或UDP。注释:界面中TCP对应TCP(标准模式),FORWARD_TCP对应TCP(性能模式),TERMINATED_HTTPS对应HTTPS。 |
protocol_port | integer | 监听器监听的端口号。 |
provisioning_status | string | 监听器的配置状态。 |
sni_container_refs | array | 监听器使用的SNI证书(带域名的服务器证书)ID列表。 此字段暂不支持产品化配置,请勿使用。 |
redirect_listener_id | string | HTTP重定向目的监听器的ID。只有此监听器的协议为HTTP时生效,为null时表示此监听器不重定向。选择非HTTP协议时此项固定为null。 |
tags | list | 标签。 |
timeout_client_data | integer | 客户端空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_member_connect | integer | 成员连接超时时间(以毫秒为单位)。默认值:5000。 |
timeout_member_data | integer | 成员空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_tcp_inspect | integer | 等待其他TCP数据包进行内容检查的时间(以毫秒为单位)。默认值:0。 |
tls_ciphers | string | OpenSSL密码列表(以冒号分隔)。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256。 选择其余协议,此项默认为None。 |
tls_versions | array | TLS协议版本列表。可用版本:SSLv3、TLSv1、TLSv1.1、TLSv1.2、TLSv1.3。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为[‘TLSv1.2’, ‘TLSv1.3’]。 选择其余协议,此项默认为None。 |
updated_at | string | 监听器最后一次更新的时间。 |
请求示例
curl -X POST http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/listeners -H "X-Auth-Token: <token>" -d '{"listener": {"loadbalancer_id": "7952e810-cfa0-4206-8ae3-594e3d0869e0", "name": "ls", "protocol": "HTTP", "protocol_port": 80, "admin_state_up": true}}'
{
"listener": {
"loadbalancer_id": "7952e810-cfa0-4206-8ae3-594e3d0869e0",
"name": "ls",
"protocol": "HTTP",
"protocol_port": 80,
"admin_state_up": true
}
}
正常响应示例
{
"listener": {
"id": "7952e810-cfa0-4206-8ae3-594e3d0869e0",
"name": "ls",
"description": "",
"provisioning_status": "PENDING_CREATE",
"operating_status": "OFFLINE",
"admin_state_up": true,
"protocol": "HTTP",
"protocol_port": 80,
"connection_limit": -1,
"default_tls_container_ref": null,
"sni_container_refs": [],
"project_id": "4316daeb7dd447038247537adf97808a",
"default_pool_id": null,
"l7policies": [],
"insert_headers": {},
"created_at": "2022-03-30T07:03:55",
"updated_at": null,
"loadbalancers": [
{
"id": "0759989a-d29d-417a-88fa-27aab471151e"
}
],
"timeout_client_data": 50000,
"timeout_member_connect": 5000,
"timeout_member_data": 50000,
"timeout_tcp_inspect": 0,
"tags": [],
"client_ca_tls_container_ref": null,
"client_authentication": "NONE",
"client_crl_container_ref": null,
"allowed_cidrs": null,
"tls_ciphers": null,
"tls_versions": null,
"alpn_protocols": null,
"tenant_id": "4316daeb7dd447038247537adf97808a",
"redirect_listener_id": null
}
}
正常响应代码
201
错误码
400,401,403,404,409,500,503
查询监听器详情
功能介绍
查询一个负载均衡器详情
URI
GET /v2.0/lbaas/listeners/{listener_id}
参数 | 是否必选 | 描述 |
---|---|---|
listener_id | 是 | 待更新的监听器的ID |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
fields | string | 否 | 你想让服务器返回的字段。如果没有指定字段的查询参数,API会返回所有监听器的属性。通过使用fields 参数,API只返回请求的属性集。可以指定多个字段的参数。例如,如果您指定fields=id&fields=name 的请求URL,那么只有id 和name 属性将返回。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 监听器的管理状态。true表示启用,false表示停用。 |
allowed_cidrs | array | 白名单,允许访问的IP列表。 |
alpn_protocols | array | ALPN协议列表。取值为:http/1.0、http/1.1或h2。 若监听器协议为TERMINATED_HTTPS,默认为[‘h2’, ‘http/1.1’, ‘http/1.0’]。 选择其余协议,此项默认为None。 此字段暂不支持产品化配置,请勿使用。 |
client_authentication | string | TLS客户端认证模式。取值为:NONE、OPTIONAL或MANDATORY。 此字段暂不支持产品化配置,请勿使用。 |
client_ca_tls_container_ref | string | 监听器使用的CA证书ID。对证书管理服务中客户端秘钥的引用。 此字段暂不支持产品化配置,请勿使用。 |
client_crl_container_ref | string | 监听器使用的CA证书吊销列表ID。证书管理服务中秘钥的URI。 此字段暂不支持产品化配置,请勿使用。 |
connection_limit | integer | 此监听器的最大连接数。默认值为-1,表示无连接数量限制。 |
created_at | string | 监听器的创建的时间。 |
default_pool_id | uuid | 监听器关联的默认资源池ID。默认资源池指没有L7策略匹配时使用的资源池。 |
default_tls_container_ref | string | 监听器使用的服务器证书ID。对证书管理服务中服务器秘钥的引用。 |
description | string | 监听器的描述。 |
id | uuid | 监听器的ID。 |
insert_headers | object | 可选的HTTP头插入。在将请求发送到后端成员前,在请求中插入的字典值。Key和Value都必须是字符串。 |
l7policies | array | L7策略的ID列表。 |
listener | object | listener 对象。 |
loadbalancers | array | 负载均衡器的 ID 列表。 |
name | string | 监听器的名称。 |
operating_status | string | 监听器的运行状态。 |
project_id | string | 监听器所属项目的 ID。 |
protocol | string | 监听器的协议。取值为:HTTP、TCP、FORWARD_TCP、TERMINATED_HTTPS或UDP。注释:界面中TCP对应TCP(标准模式),FORWARD_TCP对应TCP(性能模式),TERMINATED_HTTPS对应HTTPS。 |
protocol_port | integer | 监听器监听的端口号。 |
provisioning_status | string | 监听器的配置状态。 |
redirect_listener_id | string | HTTP重定向目的监听器的ID。只有此监听器的协议为HTTP时生效,为null时表示此监听器不重定向。选择非HTTP协议时此项固定为null。 |
sni_container_refs | array | 监听器使用的SNI证书(带域名的服务器证书)ID列表。 此字段暂不支持产品化配置,请勿使用。 |
tags | list | 标签。 |
timeout_client_data | integer | 客户端空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_member_connect | integer | 成员连接超时时间(以毫秒为单位)。默认值:5000。 |
timeout_member_data | integer | 成员空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_tcp_inspect | integer | 等待其他TCP数据包进行内容检查的时间(以毫秒为单位)。默认值:0。 |
tls_ciphers | string | OpenSSL密码列表(以冒号分隔)。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256。 选择其余协议,此项默认为None。 |
tls_versions | array | TLS协议版本列表。可用版本:SSLv3、TLSv1、TLSv1.1、TLSv1.2、TLSv1.3。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为[‘TLSv1.2’, ‘TLSv1.3’]。 选择其余协议,此项默认为None。 |
updated_at | string | 监听器最后一次更新的时间。 |
请求示例
curl -X GET http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/listeners/4de59191-f480-40e8-a68c-33ae36887bd2 -H "X-Auth-Token: <token>"
正常响应示例
{
"listener": {
"id": "4de59191-f480-40e8-a68c-33ae36887bd2",
"name": "ls",
"description": "",
"provisioning_status": "ACTIVE",
"operating_status": "ONLINE",
"admin_state_up": true,
"protocol": "HTTP",
"protocol_port": 80,
"connection_limit": -1,
"default_tls_container_ref": null,
"sni_container_refs": [],
"project_id": "4316daeb7dd447038247537adf97808a",
"default_pool_id": null,
"l7policies": [],
"insert_headers": {},
"created_at": "2022-03-30T07:03:55",
"updated_at": "2022-03-30T07:03:56",
"loadbalancers": [
{
"id": "0759989a-d29d-417a-88fa-27aab471151e"
}
],
"timeout_client_data": 50000,
"timeout_member_connect": 5000,
"timeout_member_data": 50000,
"timeout_tcp_inspect": 0,
"tags": [],
"client_ca_tls_container_ref": null,
"client_authentication": "NONE",
"client_crl_container_ref": null,
"allowed_cidrs": null,
"tls_ciphers": null,
"tls_versions": null,
"alpn_protocols": null,
"tenant_id": "4316daeb7dd447038247537adf97808a",
"redirect_listener_id": null
}
}
正常响应代码
200
错误码
401,403,404,500
更新监听器
更新一个监听器
URI
PUT /v2.0/lbaas/listeners/{listener_id}
参数 | 是否必选 | 描述 |
---|---|---|
listener_id | 是 | 待更新的监听器的ID |
请求消息
参数 | 参数类型 | 是否必选 | Description |
---|---|---|---|
admin_state_up | boolean | 否 | 监听器的管理状态。true表示启用,false表示停用。 |
allowed_cidrs | array | 否 | 白名单,允许访问的IP列表。 |
alpn_protocols | array | 否 | ALPN协议列表。取值为:http/1.0、http/1.1或h2。 若监听器协议为TERMINATED_HTTPS,默认为[‘h2’, ‘http/1.1’, ‘http/1.0’]。 选择其余协议,此项默认为None。 此字段暂不支持产品化配置,请勿使用。 |
client_authentication | string | 否 | TLS客户端认证模式。取值为:NONE、OPTIONAL或MANDATORY。 此字段暂不支持产品化配置,请勿使用。 |
client_ca_tls_container_ref | string | 否 | 监听器使用的CA证书ID。对证书管理服务中客户端秘钥的引用。 此字段暂不支持产品化配置,请勿使用。 |
client_crl_container_ref | string | 否 | 监听器使用的CA证书吊销列表。证书管理服务中秘钥的URI。 此字段暂不支持产品化配置,请勿使用。 |
connection_limit | integer | 否 | 此监听器的最大连接数。默认值为-1,表示无连接数量限制。 |
default_pool_id | uuid | 否 | 监听器关联的默认资源池ID。默认资源池指没有L7策略匹配时使用的资源池。 |
default_tls_container_ref | string | 否 | 监听器使用的服务器证书ID。对证书管理服务中服务器秘钥的引用。 |
description | string | 否 | 监听器的描述。 |
insert_headers | object | 否 | 在将请求发送到后端成员前,在请求中插入的字典值。Key和Value都必须是指定的字符串。 |
listener_id | object | 是 | 监听器的ID。 |
name | string | 否 | 监听器的名称。 |
sni_container_refs | array | 否 | 监听器使用的SNI证书(带域名的服务器证书)ID列表。 此字段暂不支持产品化配置,请勿使用。 |
tags | list | 否 | 标签。 |
timeout_client_data | integer | 否 | 客户端空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_member_connect | integer | 否 | 成员连接超时时间(以毫秒为单位)。默认值:5000。 |
timeout_member_data | integer | 否 | 成员空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_tcp_inspect | integer | 否 | 等待其他TCP数据包进行内容检查的时间(以毫秒为单位)。默认值:0。 |
tls_ciphers | string | 否 | OpenSSL密码列表(以冒号分隔)。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256。 选择其余协议,此项默认为None。 |
tls_versions | array | 否 | TLS协议版本列表。可用版本:SSLv3、TLSv1、TLSv1.1、TLSv1.2、TLSv1.3。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为[‘TLSv1.2’, ‘TLSv1.3’]。 选择其余协议,此项默认为None。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 监听器的管理状态。true表示启用,false表示停用。 |
allowed_cidrs | array | 白名单,允许访问的IP列表。 |
alpn_protocols | array | ALPN协议列表。取值为:http/1.0、http/1.1或h2。 若监听器协议为TERMINATED_HTTPS,默认为[‘h2’, ‘http/1.1’, ‘http/1.0’]。 选择其余协议,此项默认为None。 此字段暂不支持产品化配置,请勿使用。 |
client_authentication | string | TLS客户端认证模式。取值为:NONE、OPTIONAL或MANDATORY。 此字段暂不支持产品化配置,请勿使用。 |
client_ca_tls_container_ref | string | 监听器使用的CA证书ID。对证书管理服务中客户端秘钥的引用。 此字段暂不支持产品化配置,请勿使用。 |
client_crl_container_ref | string | 监听器使用的CA证书吊销列表。证书管理服务中秘钥的URI。 此字段暂不支持产品化配置,请勿使用。 |
connection_limit | integer | 此监听器的最大连接数。默认值为-1,表示无连接数量限制。 |
created_at | string | 监听器的创建的时间。 |
default_pool_id | uuid | 监听器关联的默认资源池ID。默认资源池指没有L7策略匹配时使用的资源池。 |
default_tls_container_ref | string | 监听器使用的服务器证书ID。对证书管理服务中服务器秘钥的引用。 |
description | string | 监听器的描述。 |
id | uuid | 监听器的 ID。 |
insert_headers | object | 可选的HTTP头插入。在将请求发送到后端成员前,在请求中插入的字典值。Key和Value都必须是字符串。 |
l7policies | array | L7策略的ID列表。 |
listener | object | listener 对象。 |
loadbalancers | array | 负载均衡器的 ID 列表。 |
name | string | 监听器的名称。 |
operating_status | string | 监听器的运行状态。 |
project_id | string | 监听器所属项目的 ID。 |
protocol | string | 监听器的协议。取值为:HTTP、TCP、FORWARD_TCP、TERMINATED_HTTPS或UDP。注释:界面中TCP对应TCP(标准模式),FORWARD_TCP对应TCP(性能模式),TERMINATED_HTTPS对应HTTPS。 |
protocol_port | integer | 监听器监听的端口号。 |
provisioning_status | string | 监听器的配置状态。 |
redirect_listener_id | string | HTTP重定向目的监听器的ID。只有此监听器的协议为HTTP时生效,为null时表示此监听器不重定向。选择非HTTP协议时此项固定为null。 |
sni_container_refs | array | 监听器使用的SNI证书(带域名的服务器证书)ID列表。 此字段暂不支持产品化配置,请勿使用。 |
tags | list | 标签。 |
timeout_client_data | integer | 客户端空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_member_connect | integer | 成员连接超时时间(以毫秒为单位)。默认值:5000。 |
timeout_member_data | integer | 成员空闲超时时间(以毫秒为单位)。默认值:50000。 |
timeout_tcp_inspect | integer | 等待其他TCP数据包进行内容检查的时间(以毫秒为单位)。默认值:0。 |
tls_ciphers | string | OpenSSL密码列表(以冒号分隔)。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256。 选择其余协议,此项默认为None。 |
tls_versions | array | TLS协议版本列表。可用版本:SSLv3、TLSv1、TLSv1.1、TLSv1.2、TLSv1.3。 此字段暂不支持产品化配置。 若监听器协议为TERMINATED_HTTPS,默认为[‘TLSv1.2’, ‘TLSv1.3’]。 选择其余协议,此项默认为None。 |
updated_at | string | 监听器最后一次更新的时间。 |
请求示例
curl -X PUT http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/listeners/4de59191-f480-40e8-a68c-33ae36887bd2 -H "X-Auth-Token: <token>" -d '{"listener": {"name": "demo-ls", "description": "hello", "connection_limit": "1000"}}'
{
"listener": {
"name": "demo-ls",
"description": "hello",
"connection_limit": "1000"
}
}
正常响应示例
{
"listener": {
"id": "4de59191-f480-40e8-a68c-33ae36887bd2",
"name": "demo-ls",
"description": "hello",
"provisioning_status": "PENDING_UPDATE",
"operating_status": "ONLINE",
"admin_state_up": true,
"protocol": "HTTP",
"protocol_port": 80,
"connection_limit": 1000,
"default_tls_container_ref": null,
"sni_container_refs": [],
"project_id": "4316daeb7dd447038247537adf97808a",
"default_pool_id": null,
"l7policies": [],
"insert_headers": {},
"created_at": "2022-03-30T07:03:55",
"updated_at": "2022-03-30T11:16:16",
"loadbalancers": [
{
"id": "0759989a-d29d-417a-88fa-27aab471151e"
}
],
"timeout_client_data": 50000,
"timeout_member_connect": 5000,
"timeout_member_data": 50000,
"timeout_tcp_inspect": 0,
"tags": [],
"client_ca_tls_container_ref": null,
"client_authentication": "NONE",
"client_crl_container_ref": null,
"allowed_cidrs": null,
"tls_ciphers": null,
"tls_versions": null,
"alpn_protocols": null,
"tenant_id": "4316daeb7dd447038247537adf97808a",
"redirect_listener_id": null
}
}
正常响应代码
202
错误码
400,401,403,404,409,500
删除监听器
功能介绍
更新一个负载均衡器
URI
DELETE /v2.0/lbaas/listeners/{listener_id}
参数 | 是否必选 | 描述 |
---|---|---|
listener_id | 是 | 待删除的监听器的ID |
请求示例
curl -X DELETE http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/listeners/4de59191-f480-40e8-a68c-33ae36887bd2 -H "X-Auth-Token: <token>"
正常响应代码
204
错误码
400,401,403,404,409,500
获取监听器统计信息
功能介绍
显示监听器的统计信息。
URI
GET /v2.0/lbaas/listeners/{listener_id}/stats
参数 | 是否必选 | 描述 |
---|---|---|
listener_id | 是 | 待查询的监听器ID |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
stats | object | 监听器的统计信息对象。 |
active_connections | body | 当前活跃的连接数 |
bytes_in | body | 收到的总字节数 |
bytes_out | body | 发送的总字节数 |
request_errors | body | 无法满足的请求数量。 |
total_connections | body | 已处理的总连接数。 |
请求示例
curl -X GET http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/listeners/06fec847-d7e4-4399-b862-b60eb9ea1e92/stats -H "X-Auth-Token: <token>"
正常响应示例
{
"stats": {
"bytes_in": 344,
"bytes_out": 3988,
"active_connections": 0,
"total_connections": 4,
"request_errors": 0
}
}
正常响应代码
200
错误码
401,403,404,500
获取监听器连接信息
功能介绍
显示监听器的连接信息。
URI
GET /v2.0/lbaas/listeners/{listener_id}/connection
参数 | 是否必选 | 描述 |
---|---|---|
listener_id | 是 | 待查询的监听器ID。只有TCP(性能模式)协议的监听器支持查询连接信息。 |
client_src_ip | 否 | 根据用户请求的源地址过滤连接列表。 |
client_src_port | 否 | 根据用户请求的源端口过滤连接列表。 |
client_dst_ip | 否 | 根据用户请求的目的地址过滤连接列表。 |
client_dst_port | 否 | 根据用户请求的目的端口过滤连接列表。 |
forward_src_ip | 否 | 根据负载均衡器转发后的源地址过滤连接列表。 |
forward_src_port | 否 | 根据负载均衡器转发后的源端口过滤连接列表。 |
forward_dst_ip | 否 | 根据负载均衡器转发后的目的地址过滤连接列表。 |
forward_dst_port | 否 | 根据负载均衡器转发后的目的端口过滤连接列表。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
connections | list | 连接信息对象列表。 |
ip_version | string | 连接的IP版本, 目前固定为ipv4 。 |
protocol | string | 连接的协议,目前固定为tcp。 |
status | string | 连接的状态。 |
client_src_ip | string | 用户请求的源地址。 |
client_src_port | string | 用户请求的源端口。 |
client_dst_ip | string | 用户请求的目的地址。 |
client_dst_port | string | 用户请求的目的端口。 |
forward_src_ip | string | 负载均衡器转发后的源地址。 |
forward_src_port | string | 负载均衡器转发后的源端口。 |
forward_dst_ip | string | 负载均衡器转发后的目的地址。 |
forward_dst_port | string | 负载均衡器转发后的目的端口。 |
start_time | string | 连接起始时间。 |
active_time | string | 连接活跃时间。 |
请求示例
curl -X GET http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/listeners/78798100-8c4c-49da-bd97-ce75d6443230/connection -H "X-Auth-Token: <token>"
正常响应示例
{
"connections": [
{
"ip_version": "ipv4",
"protocol": "tcp",
"status": "ESTABLISHED",
"client_src_ip": "10.77.0.2",
"client_src_port": "8128",
"client_dst_ip": "192.168.111.70",
"client_dst_port": "22",
"forward_dst_ip": "192.168.111.144",
"forward_dst_port": "22",
"forward_src_ip": "192.168.111.199",
"forward_src_port": "8128",
"start_time": "2024-08-15 14:27:38",
"active_time": "2024-08-15 14:32:00"
}
]
}
正常响应代码
200
错误码
401,403,404,500