成员
列举成员
功能介绍
查询成员的列表
URI
GET /v2.0/lbaas/pools/{pool_id}/members
参数 | 是否必选 | 描述 |
---|---|---|
pool_id | 是 | 待查询的成员所属资源池的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
fields | string | 否 | 你想让服务器返回的字段。如果没有指定字段的查询参数,API会返回所有成员的属性。通过使用fields 参数,API只返回请求的属性集。可以指定多个字段的参数。例如,如果您指定fields=id&fields=name 的请求URL,那么只有id 和name 属性将返回。 |
project_id | string | 否 | 指定项目ID进行查询。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
address | string | 成员的IP地址。 |
admin_state_up | boolean | 成员的管理状态。true表示启用,false表示停用。 |
backup | boolean | 是否是备用成员。 此字段暂不支持产品化配置,请勿使用。 |
created_at | string | 成员创建的时间。 |
id | uuid | 成员的ID。 |
monitor_address | string | 用于健康检查器监控成员运行状况的IP地址。若此字段为空,则监控address字段的IP地址。默认为空。 此字段暂不支持产品化配置,请勿使用。 |
monitor_port | integer | 用于健康检查器监控成员运行状况的端口号。若此字段为空,则监控protocol_port字段的端口号。默认为空。 |
name | string | 成员的名称。 |
operating_status | string | 成员的运行状态。 |
project_id | string | 成员所属的项目ID。 |
protocol_port | integer | 成员的业务端口号。 |
provisioning_status | string | 成员的配置状态。 |
subnet_id | uuid | 连接成员的子网ID。 |
tags | list | 标签。 |
updated_at | string | 成员最后一次更新的时间。 |
weight | integer | 成员权重大小。请求将根据pool配置的负载均衡算法和成员的权重进行负载分发。权重值越大,分发的请求越多。例如,权重为10的成员收到的请求数量是权重为2的成员的五倍。值为0表示该成员不接收新连接,但继续为现有连接提供服务。有效值为0~256。默认值为1。 |
请求示例
curl -X GET -H "X-Auth-Token: <token>" http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/pools/fa549f85-fa3a-4280-bb2a-00b09285e6b3/members
正常响应示例
{
"members": [
{
"id": "2f97853a-e149-4a03-b057-2d91d8702197",
"name": "instance-lbq",
"operating_status": "ERROR",
"provisioning_status": "ACTIVE",
"admin_state_up": true,
"address": "192.168.0.235",
"protocol_port": 80,
"weight": 1,
"backup": false,
"subnet_id": "1d4a1242-9b08-4ffd-a6c5-c92a1b797dc2",
"project_id": "250a86f0dcc9467285fa8af54457e885",
"created_at": "2022-04-25T07:42:44",
"updated_at": "2022-04-25T07:43:36",
"monitor_address": null,
"monitor_port": 80,
"tags": [],
"tenant_id": "250a86f0dcc9467285fa8af54457e885"
}
],
"members_links": []
}
正常响应代码
200
错误码
400,401,500
创建成员
功能介绍
创建一个成员。
接口约束
1.同一个pool下的两个member不能有相同的address和port。
URI
POST /v2.0/lbaas/pools/{pool_id}/members
参数 | 是否必选 | 描述 |
---|---|---|
pool_id | 是 | 待创建的成员所属资源池的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
admin_state_up | boolean | 否 | 成员的管理状态。true表示启用,false表示停用。 |
address | string | 是 | 成员的IP地址。 |
backup | boolean | 否 | 是否是备用成员。 此字段暂不支持产品化配置,请勿使用。 |
monitor_address | string | 否 | 用于健康检查器监控成员运行状况的IP地址。若此字段为空,则监控address字段的IP地址。默认为空。 此字段暂不支持产品化配置,请勿使用。 |
monitor_port | integer | 否 | 用于健康检查器监控成员运行状况的端口号。若此字段为空,则监控protocol_port字段的端口号。默认为空。 |
name | string | 否 | 成员的名称。 |
pool_id | uuid | 是 | 成员关联的资源池ID。 |
project_id | string | 否 | 成员所属的项目ID。 |
protocol_port | integer | 是 | 成员的业务端口号。 |
subnet_id | uuid | 否 | 连接成员的子网ID。 |
tags | list | 否 | 标签。 |
weight | integer | 否 | 成员的权重大小。成员的权重决定了它对服务请求或连接的分配情况。例如,权重为10的成员收到的请求数量是权重为2的成员的五倍。值为0表示该成员不接收新连接,但继续为现有连接提供服务。有效值为0~256。默认值为1。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
address | string | 成员的IP地址。 |
admin_state_up | boolean | 成员的管理状态。true表示启用,false表示停用。 |
backup | boolean | 是否是备用成员。 此字段暂不支持产品化配置,请勿使用。 |
created_at | string | 成员创建的时间。 |
id | uuid | 成员的ID。 |
monitor_address | string | 用于健康检查器监控成员运行状况的IP地址。若此字段为空,则监控address字段的IP地址。默认为空。 此字段暂不支持产品化配置,请勿使用。 |
monitor_port | integer | 用于健康检查器监控成员运行状况的端口号。若此字段为空,则监控protocol_port字段的端口号。默认为空。 |
name | string | 成员的名称。 |
operating_status | string | 成员的运行状态。 |
project_id | string | 成员所属的项目ID。 |
protocol_port | integer | 成员的业务端口号。 |
provisioning_status | string | 成员的配置状态。 |
subnet_id | uuid | 连接成员的子网ID。 |
tags | list | 标签。 |
updated_at | string | 成员最后一次更新的时间。 |
weight | integer | 成员的权重大小。成员的权重决定了它对服务请求或连接的分配情况。例如,权重为10的成员收到的请求数量是权重为2的成员的五倍。值为0表示该成员不接收新连接,但继续为现有连接提供服务。有效值为0~256。默认值为1。 |
请求示例
curl -X POST -H "X-Auth-Token: <token>" -d '{"member": {"name": "demo-member", "weight": 2, "address": "192.168.0.22", "protocol_port": 80, "monitor_port": 80}}' http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/pools/4029d267-3983-4224-a3d0-afb3fe16a2cd/members
{
"member": {
"name": "demo-member",
"weight": 2,
"address": "192.168.0.22",
"protocol_port": 80,
"monitor_port": 80
}
}
正常响应示例
{
"member": {
"id": "fce9c485-bd2b-4fd5-8dcf-5467cbc3c970",
"name": "demo-member",
"operating_status": "OFFLINE",
"provisioning_status": "PENDING_CREATE",
"admin_state_up": true,
"address": "192.168.0.22",
"protocol_port": 80,
"weight": 2,
"backup": false,
"subnet_id": null,
"project_id": "250a86f0dcc9467285fa8af54457e885",
"created_at": "2022-04-25T07:52:23",
"updated_at": null,
"monitor_address": null,
"monitor_port": 80,
"tags": [],
"tenant_id": "250a86f0dcc9467285fa8af54457e885"
}
}
正常响应代码
201
错误码
400,401,403,404,409,500,503
查询成员详情
功能介绍
查询成员详情
URI
GET /v2.0/lbaas/pools/{pool_id}/members/{member_id}
参数 | 是否必选 | 描述 |
---|---|---|
member_id | 是 | 待查询的成员的ID。 |
pool_id | 是 | 待查询的成员所属资源池的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
fields | string | 否 | 你想让服务器返回的字段。如果没有指定字段的查询参数,API会返回所有成员的属性。通过使用fields 参数,API只返回请求的属性集。可以指定多个字段的参数。例如,如果您指定fields=id&fields=name 的请求URL,那么只有id 和name 属性将返回。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
address | string | 成员的IP地址。 |
admin_state_up | boolean | 成员的管理状态。true表示启用,false表示停用。 |
backup | boolean | 是否是备用成员。 此字段暂不支持产品化配置,请勿使用。 |
created_at | string | 成员创建的时间。 |
id | uuid | 成员的ID。 |
monitor_address | string | 用于健康检查器监控成员运行状况的IP地址。若此字段为空,则监控address字段的IP地址。默认为空。 此字段暂不支持产品化配置,请勿使用。 |
monitor_port | integer | 用于健康检查器监控成员运行状况的端口号。若此字段为空,则监控protocol_port字段的端口号。默认为空。 |
name | string | 成员的名称。 |
operating_status | string | 成员的运行状态。 |
project_id | string | 成员所属的项目ID。 |
protocol_port | integer | 成员的业务端口号。 |
provisioning_status | string | 成员的配置状态。 |
subnet_id | uuid | 连接成员的子网ID。 |
tags | list | 标签。 |
updated_at | string | 成员最后一次更新的时间。 |
weight | integer | 成员的权重大小。成员的权重决定了它对服务请求或连接的分配情况。例如,权重为10的成员收到的请求数量是权重为2的成员的五倍。值为0表示该成员不接收新连接,但继续为现有连接提供服务。有效值为0~256。默认值为1。 |
请求示例
curl -X GET -H "X-Auth-Token: <token>" http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/pools/fa549f85-fa3a-4280-bb2a-00b09285e6b3/members/fce9c485-bd2b-4fd5-8dcf-5467cbc3c970
正常响应示例
{
"member": {
"id": "fce9c485-bd2b-4fd5-8dcf-5467cbc3c970",
"name": "demo-member",
"operating_status": "ERROR",
"provisioning_status": "ACTIVE",
"admin_state_up": true,
"address": "192.168.0.22",
"protocol_port": 80,
"weight": 2,
"backup": false,
"subnet_id": null,
"project_id": "250a86f0dcc9467285fa8af54457e885",
"created_at": "2022-04-25T07:52:23",
"updated_at": "2022-04-25T07:52:37",
"monitor_address": null,
"monitor_port": 80,
"tags": [],
"tenant_id": "250a86f0dcc9467285fa8af54457e885"
}
}
正常响应代码
200
错误码
401,403,404,500
更新成员
功能介绍
更新一个成员的信息。
接口约束
如果member绑定的负载均衡器的provisioning status不是ACTIVE,则不能更新该member。
URI
PUT /v2.0/lbaas/pools/{pool_id}/members/{member_id}
参数 | 是否必选 | 描述 |
---|---|---|
member_id | 是 | 待更新的成员的ID。 |
pool_id | 是 | 待更新的成员所属资源池的ID。 |
请求消息
参数 | 参数类型 | 是否必选 | 描述 |
---|---|---|---|
admin_state_up | boolean | 否 | 成员的管理状态。true表示启用,false表示停用。 |
backup | boolean | 否 | 是否是备用成员。 此字段暂不支持产品化配置,请勿使用。 |
member_id | uuid | 是 | 成员的ID。 |
monitor_address | string | 否 | 用于健康检查器监控成员运行状况的IP地址。若此字段为空,则监控address字段的IP地址。默认为空。 此字段暂不支持产品化配置,请勿使用。 |
monitor_port | integer | 否 | 用于健康检查器监控成员运行状况的端口号。若此字段为空,则监控protocol_port字段的端口号。默认为空。 |
name | string | 否 | 成员的名称。 |
pool_id | uuid | 是 | 成员所属资源池的ID。 |
tags | list | 否 | 标签。 |
weight | integer | 否 | 成员的权重大小。成员的权重决定了它对服务请求或连接的分配情况。例如,权重为10的成员收到的请求数量是权重为2的成员的五倍。值为0表示该成员不接收新连接,但继续为现有连接提供服务。有效值为0~256。默认值为1。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
address | string | 成员的IP地址。 |
admin_state_up | boolean | 成员的管理状态。true表示启用,false表示停用。 |
backup | boolean | 是否是备用成员。 此字段暂不支持产品化配置,请勿使用。 |
created_at | string | 成员创建的时间。 |
id | uuid | 成员的ID。 |
monitor_address | string | 用于健康检查器监控成员运行状况的IP地址。若此字段为空,则监控address字段的IP地址。默认为空。 此字段暂不支持产品化配置,请勿使用。 |
monitor_port | integer | 用于健康检查器监控成员运行状况的端口号。若此字段为空,则监控protocol_port字段的端口号。默认为空。 |
name | string | 成员的名称。 |
operating_status | string | 成员的运行状态。 |
project_id | string | 成员所属的项目ID。 |
protocol_port | integer | 成员的业务端口号。 |
provisioning_status | string | 成员的配置状态。 |
subnet_id | uuid | 连接成员的子网ID。 |
tags | list | 标签。 |
updated_at | string | 成员最后一次更新的时间。 |
weight | integer | 成员的权重大小。成员的权重决定了它对服务请求或连接的分配情况。例如,权重为10的成员收到的请求数量是权重为2的成员的五倍。值为0表示该成员不接收新连接,但继续为现有连接提供服务。有效值为0~256。默认值为1。 |
请求示例
curl -X PUT -H "X-Auth-Token: <token>" -d '{"member": {"name": "demo-member-2", "weight": 2, "monitor_port": 8080}}' http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/pools/fa549f85-fa3a-4280-bb2a-00b09285e6b3/members/2f97853a-e149-4a03-b057-2d91d8702197
{
"member": {
"name": "demo-member-2",
"weight": 2,
"monitor_port": 8080
}
}
正常响应示例
{
"member": {
"id": "2f97853a-e149-4a03-b057-2d91d8702197",
"name": "demo-member-2",
"operating_status": "ERROR",
"provisioning_status": "PENDING_UPDATE",
"admin_state_up": true,
"address": "192.168.0.235",
"protocol_port": 80,
"weight": 2,
"backup": false,
"subnet_id": "1d4a1242-9b08-4ffd-a6c5-c92a1b797dc2",
"project_id": "250a86f0dcc9467285fa8af54457e885",
"created_at": "2022-04-25T07:42:44",
"updated_at": "2022-04-25T12:06:41",
"monitor_address": null,
"monitor_port": 8080,
"tags": [],
"tenant_id": "250a86f0dcc9467285fa8af54457e885"
}
}
正常响应代码
202
错误码
400,401,403,404,409,500
删除成员
功能介绍
删除一个成员。
前提条件
接口约束
URI
DELETE /v2.0/lbaas/pools/{pool_id}/members/{member_id}
参数 | 是否必选 | 描述 |
---|---|---|
member_id | 是 | 待删除的成员的ID。 |
pool_id | 是 | 待删除的成员所属资源池的ID。 |
请求消息
无
响应消息
无
请求示例
curl -X DELETE -H "X-Auth-Token: <token>" http://octavia-api.octavia.svc.cluster.local:9876/v2.0/lbaas/pools/4029d267-3983-4224-a3d0-afb3fe16a2cd/members/957a1ace-1bd2-449b-8455-820b6e4b63f3
正常响应示例
无
正常响应代码
204
错误码
400,401,403,404,409,500