L7转发规则
列举L7转发规则
功能介绍
查询七层转发规则列表。
URI
GET /v2.0/lbaas/l7policies/{l7policy_id}/rules
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | 待查询的L7转发规则所属策略的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
fields | string | 否 | 你想让服务器返回的字段。如果没有指定字段的查询参数,API会返回所有规则的属性。通过使用fields 参数,API只返回请求的属性集。可以指定多个字段的参数。例如,如果您指定fields=id&fields=name 的请求URL,那么只有id 和name 属性将返回。 |
project_id | string | 否 | 指定项目ID进行查询。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 转发规则的管理状态。true表示启用,false表示停用。 |
compare_type | string | 转发规则的匹配方式。取值为:CONTAINS,ENDS_WITH,EQUAL_TO,REGEX,STARTS_WITH。 当type为FILE_TYPE时,只可以取值:EQUAL_TO,REGEX。 |
created_at | string | 转发规则创建的时间。 |
id | uuid | 转发规则的ID。 |
invert | boolean | 反向匹配,当true时匹配方式的逻辑将是反向的。例如,当invert为true时,等于将成为不等于。 |
key | string | 匹配的内容项。 当匹配类型为HEADER或COOKIE时,此字段可配置生效。 |
operating_status | string | 转发规则的运行状态。 |
project_id | string | 转发规则所属的项目ID。 |
provisioning_status | string | 转发规则的配置状态。 |
tags | list | 标签。 |
type | string | 转发规则的匹配类型。取值为:COOKIE,FILE_TYPE,HEADER,HOST_NAME,PATH。 |
updated_at | string | 转发规则最后一次更新的时间。 |
value | string | 匹配的内容值。 |
请求示例
curl -X GET -H "X-Auth-Token: <token>" http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/l7policies/05d7e56b-7049-4ee6-ae81-1b8227ea9e2c/rules
正常响应示例
{
"rules": [
{
"id": "d531f4d5-7c9e-4a95-aab1-fff515d06ac5",
"type": "PATH",
"compare_type": "EQUAL_TO",
"key": null,
"value": "test",
"invert": false,
"provisioning_status": "ACTIVE",
"operating_status": "ONLINE",
"created_at": "2022-04-26T02:44:14",
"updated_at": "2022-04-26T02:44:10",
"project_id": "250a86f0dcc9467285fa8af54457e885",
"admin_state_up": true,
"tags": [],
"tenant_id": "250a86f0dcc9467285fa8af54457e885"
}
],
"rules_links": []
}
正常响应代码
200
错误码
400,401,500
创建L7转发规则
功能介绍
创建一个七层转发规则。
URI
POST /v2.0/lbaas/l7policies/{l7policy_id}/rules
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | 待创建的L7转发规则所属策略的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
admin_state_up | boolean | 否 | 转发规则的管理状态。true表示启用,false表示停用。 |
compare_type | string | 是 | 转发规则的匹配方式。取值为:CONTAINS,ENDS_WITH,EQUAL_TO,REGEX,STARTS_WITH。 当type为FILE_TYPE时,只可以取值:EQUAL_TO,REGEX。 |
invert | boolean | 否 | 反向匹配,当true时匹配方式的逻辑将是反向的。例如,当invert为true时,等于将成为不等于。 |
key | string | 否 | 匹配的内容项。 当匹配类型为HEADER或COOKIE时,此字段可配置生效。 |
l7policy_id | uuid | 是 | 转发规则所属策略的ID。 |
project_id | string | 否 | 转发规则所属的项目ID。 |
tags | list | 否 | 标签。 |
type | string | 是 | 转发规则的匹配类型。取值为:COOKIE,FILE_TYPE,HEADER,HOST_NAME,PATH。 |
value | string | 是 | 匹配的内容值。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 转发规则的管理状态。true表示启用,false表示停用。 |
compare_type | string | 转发规则的匹配方式。取值为:CONTAINS,ENDS_WITH,EQUAL_TO,REGEX,STARTS_WITH。 当type为FILE_TYPE时,只可以取值:EQUAL_TO,REGEX。 |
created_at | string | 转发规则创建的时间。 |
id | uuid | 转发规则的ID。 |
invert | boolean | 反向匹配,当true时匹配方式的逻辑将是反向的。例如,当invert为true时,等于将成为不等于。 |
key | string | 匹配的内容项。 当匹配类型为HEADER或COOKIE时,此字段可配置生效。 |
operating_status | string | 转发规则的运行状态。 |
project_id | string | 转发规则所属的项目ID。 |
provisioning_status | string | 转发规则的配置状态。 |
tags | list | 标签。 |
type | string | 转发规则的匹配类型。取值为:COOKIE,FILE_TYPE,HEADER,HOST_NAME,PATH。 |
updated_at | string | 转发规则最后一次更新的时间。 |
value | string | 匹配的内容值。 |
请求示例
curl -X POST -H "X-Auth-Token: <token>" -d '{"rule": {"compare_type": "EQUAL_TO", "value": "test", "type": "PATH", "admin_state_up": true}}' http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/l7policies/05d7e56b-7049-4ee6-ae81-1b8227ea9e2c/rules
{
"rule": {
"compare_type": "EQUAL_TO",
"value": "test",
"type": "PATH",
"admin_state_up": true
}
}
正常响应示例
{
"rule": {
"id": "d531f4d5-7c9e-4a95-aab1-fff515d06ac5",
"type": "PATH",
"compare_type": "EQUAL_TO",
"key": null,
"value": "test",
"invert": false,
"provisioning_status": "PENDING_CREATE",
"operating_status": "OFFLINE",
"created_at": "2022-04-26T02:44:14",
"updated_at": null,
"project_id": "250a86f0dcc9467285fa8af54457e885",
"admin_state_up": true,
"tags": [],
"tenant_id": "250a86f0dcc9467285fa8af54457e885"
}
}
正常响应代码
201
错误码
400, 401,403,404,409,500,503
查询L7转发规则详情
功能介绍
查询七层转发规则详情。
URI
GET /v2.0/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | 待查询的L7转发规则所属策略的ID。 |
l7rule_id | 是 | 待查询的L7转发规则的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
fields | string | 否 | 你想让服务器返回的字段。如果没有指定字段的查询参数,API会返回所有规则的属性。通过使用fields 参数,API只返回请求的属性集。可以指定多个字段的参数。例如,如果您指定fields=id&fields=name 的请求URL,那么只有id 和name 属性将返回。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 转发规则的管理状态。true表示启用,false表示停用。 |
compare_type | string | 转发规则的匹配方式。取值为:CONTAINS,ENDS_WITH,EQUAL_TO,REGEX,STARTS_WITH。 当type为FILE_TYPE时,只可以取值:EQUAL_TO,REGEX。 |
created_at | string | 转发规则创建的时间。 |
id | uuid | 转发规则的ID。 |
invert | boolean | 反向匹配,当true时匹配方式的逻辑将是反向的。例如,当invert为true时,等于将成为不等于。 |
key | string | 匹配的内容项。 当匹配类型为HEADER或COOKIE时,此字段可配置生效。 |
operating_status | string | 转发规则的运行状态。 |
project_id | string | 转发规则所属的项目ID。 |
provisioning_status | string | 转发规则的配置状态。 |
tags | list | 标签。 |
type | string | 转发规则的匹配类型。取值为:COOKIE,FILE_TYPE,HEADER,HOST_NAME,PATH。 |
updated_at | string | 转发规则最后一次更新的时间。 |
value | string | 匹配的内容值。 |
请求示例
curl -X GET -H "X-Auth-Token: <token>" http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/l7policies/05d7e56b-7049-4ee6-ae81-1b8227ea9e2c/rules/d531f4d5-7c9e-4a95-aab1-fff515d06ac5
正常响应示例
{
"rule": {
"id": "d531f4d5-7c9e-4a95-aab1-fff515d06ac5",
"type": "PATH",
"compare_type": "EQUAL_TO",
"key": null,
"value": "test",
"invert": false,
"provisioning_status": "ACTIVE",
"operating_status": "ONLINE",
"created_at": "2022-04-26T02:44:14",
"updated_at": "2022-04-26T02:44:10",
"project_id": "250a86f0dcc9467285fa8af54457e885",
"admin_state_up": true,
"tags": [],
"tenant_id": "250a86f0dcc9467285fa8af54457e885"
}
}
正常响应代码
200
错误码
401,403,404,500
更新L7转发规则
功能介绍
更新一个七层转发规则。
URI
PUT /v2.0/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | 待更新的L7转发规则所属策略的ID。 |
l7rule_id | 是 | 待更新的L7转发规则的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
admin_state_up | boolean | 否 | 转发规则的管理状态。true表示启用,false表示停用。 |
compare_type | string | 否 | 转发规则的匹配方式。取值为:CONTAINS,ENDS_WITH,EQUAL_TO,REGEX,STARTS_WITH。 当type为FILE_TYPE时,只可以取值:EQUAL_TO,REGEX。 |
invert | boolean | 否 | 反向匹配,当true时匹配方式的逻辑将是反向的。例如,当invert为true时,等于将成为不等于。 |
key | string | 否 | 匹配的内容项。 当匹配类型为HEADER或COOKIE时,此字段可配置生效。 |
l7policy_id | uuid | 是 | 转发规则所属策略的ID。 |
l7rule_id | uuid | 是 | 转发规则的ID。 |
tags | list | 否 | 标签。 |
type | string | 否 | 转发规则的匹配类型。取值为:COOKIE,FILE_TYPE,HEADER,HOST_NAME,PATH。 |
value | string | 否 | 匹配的内容值。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
admin_state_up | boolean | 转发规则的管理状态。true表示启用,false表示停用。 |
compare_type | string | 转发规则的匹配方式。取值为:CONTAINS,ENDS_WITH,EQUAL_TO,REGEX,STARTS_WITH。 当type为FILE_TYPE时,只可以取值:EQUAL_TO,REGEX。 |
created_at | string | 转发规则创建的时间。 |
id | uuid | 转发规则的ID。 |
invert | boolean | 反向匹配,当true时匹配方式的逻辑将是反向的。例如,当invert为true时,等于将成为不等于。 |
key | string | 匹配的内容项。 当匹配类型为HEADER或COOKIE时,此字段可配置生效。 |
operating_status | string | 转发规则的运行状态。 |
project_id | string | 转发规则所属的项目ID。 |
provisioning_status | string | 转发规则的配置状态。 |
tags | list | 标签。 |
type | string | 转发规则的匹配类型。取值为:COOKIE,FILE_TYPE,HEADER,HOST_NAME,PATH。 |
updated_at | string | 转发规则最后一次更新的时间。 |
value | string | 匹配的内容值。 |
请求示例
curl -X PUT -H "X-Auth-Token: <token>" -d '{"rule": {"compare_type": "STARTS_WITH", "value": "test2", "key": "dlb", "type": "COOKIE"}}' http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/l7policies/05d7e56b-7049-4ee6-ae81-1b8227ea9e2c/rules/d531f4d5-7c9e-4a95-aab1-fff515d06ac5
{
"rule": {
"compare_type": "STARTS_WITH",
"value": "test2",
"key": "dlb",
"type": "COOKIE"
}
}
正常响应示例
{
"rule": {
"id": "d531f4d5-7c9e-4a95-aab1-fff515d06ac5",
"type": "COOKIE",
"compare_type": "STARTS_WITH",
"key": "dlb",
"value": "test2",
"invert": false,
"provisioning_status": "PENDING_UPDATE",
"operating_status": "ONLINE",
"created_at": "2022-04-26T02:44:14",
"updated_at": "2022-04-26T02:50:00",
"project_id": "250a86f0dcc9467285fa8af54457e885",
"admin_state_up": true,
"tags": [],
"tenant_id": "250a86f0dcc9467285fa8af54457e885"
}
}
正常响应代码
202
错误码
400,401,403,404,409,500
删除L7转发规则
功能介绍
删除七层转发规则。
URI
DELETE /v2.0/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id}
参数 | 是否必选 | 描述 |
---|---|---|
l7policy_id | 是 | 待删除的L7转发规则所属策略的ID。 |
l7rule_id | 是 | 待删除的L7转发规则的ID。 |
请求消息
无
响应消息
无
请求示例
curl -X DELETE -H "X-Auth-Token: <token>" http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/l7policies/05d7e56b-7049-4ee6-ae81-1b8227ea9e2c/rules/d531f4d5-7c9e-4a95-aab1-fff515d06ac5
正常响应示例
无
正常响应代码
204
错误码
400,401,403,404,409,500