创建后端服务器
功能介绍
创建后端服务器。
接口约束
1.同一个pool下的两个member不能有相同的address和port。
2.若所属LB开启跨VPC特性,创建member时可以不指定的子网,表示创建跨VPC的后端服务器。 此时address必须为ipv4地址,pool的协议必须为TCP/HTTP/HTTPS。
3.创建member时若指定了子网,则该子网必须和负载均衡器所在子网处在同一个VPC下。
4.如果pool是dualstack的,address支持IPv4格式也支持IPv6格式, 如果pool是v4的,address 只支持IPv4。
5.创建member时,若请求参数type为instance,则参数address不允许为任何ELB的私网IP。
调用方法
请参见如何调用API。
URI
POST /v3/{project_id}/elb/pools/{pool_id}/members
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
pool_id |
是 |
String |
后端服务器组ID。 |
project_id |
是 |
String |
项目ID。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
IAM鉴权Token。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
member |
是 |
CreateMemberOption object |
后端服务器对象。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
address |
是 |
String |
后端服务器对应的IP地址。 使用说明:
最小长度:1 最大长度:64 |
admin_state_up |
否 |
Boolean |
后端云服务器的管理状态。 取值:true、false。 虽然创建、更新请求支持该字段,但实际取值决定于后端云服务器对应的弹性云服务器是否存在。若存在,该值为true,否则,该值为false。 |
name |
否 |
String |
后端云服务器名称。注意:该名称并非ECS名称,若不传则返回为空。 最小长度:0 最大长度:255 |
project_id |
否 |
String |
后端云服务器所在的项目ID。 最小长度:1 最大长度:32 |
protocol_port |
否 |
Integer |
后端服务器业务端口。
说明:
在开启端口透传的pool下创建member传该字段不生效,可不传该字段。 最小值:1 最大值:65535 |
subnet_cidr_id |
否 |
String |
后端云服务器所在的子网ID,可以是子网的IPv4子网ID或IPv6子网ID。 ipv4子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到 ipv6子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到 使用说明:
最小长度:1 最大长度:36 |
weight |
否 |
Integer |
后端云服务器的权重,请求将根据pool配置的负载均衡算法和后端云服务器的权重进行负载分发。 权重值越大,分发的请求越多。权重为0的后端不再接受新的请求。 取值:0-100,默认1。 使用说明:若所在pool的lb_algorithm取值为SOURCE_IP,该字段无效。 |
响应参数
状态码: 201
参数 |
参数类型 |
描述 |
---|---|---|
request_id |
String |
请求ID。 注:自动生成 。 |
member |
Member object |
后端服务器对象。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
后端服务器ID。
说明:
说明: 此处并非ECS服务器的ID,而是ELB为绑定的后端服务器自动生成的member ID。 |
name |
String |
后端服务器名称。注意:该名称并非ECS名称。 |
project_id |
String |
后端服务器所在的项目ID。 |
pool_id |
String |
所在后端服务器组ID。 不支持该字段,请勿使用。 |
admin_state_up |
Boolean |
后端云服务器的管理状态。 取值:true、false。 虽然创建、更新请求支持该字段,但实际取值决定于后端云服务器对应的弹性云服务器是否存在。若存在,该值为true,否则,该值为false。 |
subnet_cidr_id |
String |
后端云服务器所在子网的IPv4子网ID或IPv6子网ID。 若所属的LB的跨VPC后端转发特性已开启,则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 使用说明:该子网和关联的负载均衡器的子网必须在同一VPC下。 |
protocol_port |
Integer |
后端服务器业务端口。
说明:
在开启端口透传的pool下创建member传该字段不生效,可不传该字段。 最小值:1 最大值:65535 |
weight |
Integer |
后端云服务器的权重,请求将根据pool配置的负载均衡算法和后端云服务器的权重进行负载分发。 权重值越大,分发的请求越多。权重为0的后端不再接受新的请求。 取值:0-100,默认1。 使用说明:若所在pool的lb_algorithm取值为SOURCE_IP,该字段无效。 最小值:0 最大值:100 |
address |
String |
后端服务器对应的IP地址。 使用说明:
|
ip_version |
String |
当前后端服务器的IP地址版本,由后端系统自动根据传入的address字段确定。取值:v4、v6。 |
device_owner |
String |
设备所有者。 取值:
不支持该字段,请勿使用。 |
device_id |
String |
关联的ECS ID,为空表示后端服务器未关联到ECS。 不支持该字段,请勿使用。 |
operating_status |
String |
后端云服务器的健康状态。当status非空时,以status字段中监听器粒度的健康检查状态优先。 取值:
|
status |
Array of MemberStatus objects |
后端云服务器监听器粒度的的健康状态。 若绑定的监听器在该字段中,则以该字段中监听器对应的operating_stauts为准。 若绑定的监听器不在该字段中,则以外层的operating_status为准。 |
loadbalancer_id |
String |
所属负载均衡器ID。 不支持该字段,请勿使用。 |
loadbalancers |
Array of ResourceID objects |
后端云服务器关联的负载均衡器ID列表。 不支持该字段,请勿使用。 |
created_at |
String |
创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 |
updated_at |
String |
更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 |
member_type |
String |
后端云服务器的类型。 取值:
|
instance_id |
String |
member关联的实例ID。空表示member关联的实例为非真实设备 (如:跨VPC场景) |
请求示例
-
示例1:创建后端服务器
POST https://{ELB_Endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members { "member" : { "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74", "protocol_port" : 89, "name" : "My member", "address" : "120.10.10.16" } }
-
示例2:创建开启跨VPC的后端服务器
POST https://{ELB_Endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members { "member" : { "protocol_port" : 89, "name" : "My member", "address" : "120.10.10.16" } }
响应示例
状态码: 201
POST操作正常返回。
{ "member" : { "name" : "My member", "weight" : 1, "admin_state_up" : false, "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74", "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", "address" : "120.10.10.16", "protocol_port" : 89, "id" : "1923923e-fe8a-484f-bdbc-e11559b1f48f", "operating_status" : "NO_MONITOR", "status" : [ { "listener_id" : "427eee03-b569-4d6c-b1f1-712032f7ec2d", "operating_status" : "NO_MONITOR" } ], "ip_version" : "v4" }, "request_id" : "f354090d-41db-41e0-89c6-7a943ec50792" }
状态码
状态码 |
描述 |
---|---|
201 |
POST操作正常返回。 |
错误码
请参见错误码。