更新时间:2023-12-18 GMT+08:00

创建后端云服务器

功能介绍

为某个后端云服务器组添加后端云服务器。当后端云服务器组被监听器使用后,访问负载均衡器的流量可以通过负载均衡算法分发到不同的后端云服务器上,分担流量。

接口约束

属于一个后端云服务器组的两个后端云服务器不能有相同的address和protocol_port。

创建后端云服务器时指定的子网必须和负载均衡器的子网处在同一个VPC下。

URI

POST /v2.0/lbaas/pools/{pool_id}/members

表1 参数说明

参数

是否必选

参数类型

描述

pool_id

String

后端云服务器组ID。

请求消息

表2 请求参数

参数

是否必选

参数类型

描述

member

Object

后端云服务器对象。详见表3

表3 member字段说明

参数

是否必选

参数类型

描述

tenant_id

String

后端云服务器所在的项目ID。

需要和token中的project_id一致。

支持的最大字符长度:255

project_id

String

此参数和tenant_id参数含义一样,均指后端云服务器所在的项目ID。

需要和token中的project_id一致。

name

String

后端云服务器的名称。默认为空字符串。

支持的最大字符长度:255

address

String

后端云服务器对应的IP地址,该IP必须在subnet_id字段指定子网的网段中。

只能对应主网卡的IP。

例如:192.168.3.11。

支持的最大字符长度:64

protocol_port

Integer

后端协议的端口号,取值范围[1,65535]。

subnet_id

String

后端云服务器所在的子网ID。

后端云服务器的address在该子网的网段中。

只支持指定IPv4的子网ID。暂不支持IPv6。

admin_state_up

Boolean

后端云服务器的管理状态。

该字段为预留字段,暂未启用。默认为true。

weight

Integer

后端云服务器的权重,取值范围[0,100]。

权重为0的后端不再接受新的请求。默认为1。

响应消息

表4 响应参数

参数

参数类型

描述

member

Object

member对象。详见表5

表5 member字段说明

参数

参数类型

描述

id

String

后端云服务器的 ID。

说明:

此处并非服务器的ID,而是ELB添加后端服务器之后自动生成的member ID。

tenant_id

String

后端云服务器所在的项目ID。

支持的最大字符长度:255

project_id

String

此参数和tenant_id参数含义一样,均指后端云服务器所在的项目ID。

name

String

后端云服务器的名称。

支持的最大字符长度:255

address

String

后端云服务器对应的IP地址,该IP必须在subnet_id字段指定子网的网段中,例如192.168.3.11。

只能对应主网卡的IP。

支持的最大字符长度:64

protocol_port

Integer

后端端口的协议号,取值范围[1,65535]。

subnet_id

String

后端云服务器所在的子网ID。后端云服务器的IP地址在该子网的网段中。

不支持开启了ipv6的子网。

admin_state_up

Boolean

后端云服务器的管理状态。

该字段为预留字段,暂未启用。取值范围:true/false。

  • true表示开启。
  • false表示关闭。

weight

Integer

后端云服务器的权重,取值范围[0,100]。

权重为0的后端不再接受新的请求。默认为1。

operating_status

String

后端云服务器的健康状态,取值:

  • ONLINE,后端服务器正常运行。
  • NO_MONITOR,后端服务器无健康检查。
  • OFFLINE,已下线。

请求示例

  • step1 请求样例 根据弹性云服务器id查询对应的subnet_id和address,其中device_id为弹性云服务器的id。取响应体中主网卡(primary_interface为true的port)的subnet_id、ip_address。
    GET https://{VPCEndpoint}/v2.0/ports?device_id=f738c464-b5c2-45df-86c0-7f436620cd54

    step1 响应样例

    {
        "ports": [
            {
                "id": "94971c39-46f0-443a-85e8-31cb7497c78e",
                "name": "",
                "status": "ACTIVE",
                "admin_state_up": true,
                "fixed_ips": [
                    {
                        "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503",
                        "ip_address": "192.168.44.11"
                    }
                ],
                "mac_address": "fa:16:3e:5c:d2:57",
                "network_id": "1b76b9c2-9b7e-4ced-81bd-d13f7389d7c9",
                "tenant_id": "04dd36f978800fe22f9bc00bea090736",
                "project_id": "04dd36f978800fe22f9bc00bea090736",
                "device_id": "f738c464-b5c2-45df-86c0-7f436620cd54",
                "device_owner": "compute:xx-xxxx-4a",
                "security_groups": [
                    "a10dfc31-0055-4b84-b36e-1291b918125c",
                    "7a233393-5be2-4dff-8360-1558dd950f6e"
                ],
                "extra_dhcp_opts": [],
                "allowed_address_pairs": [],
                "binding:vnic_type": "normal",
                "binding:vif_details": {
                    "primary_interface": true
                },
                "binding:profile": {},
                "port_security_enabled": true,
                "created_at": "2019-11-12T17:17:51",
                "updated_at": "2019-11-12T17:17:51"
            }
        ]
    }
  • step2 请求样例 使用▪step1中获取的subnet_id和address创建后端云服务器
    POST https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members
    
    {
        "member": {
            "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503",
            "protocol_port": 88,
            "name": "member-jy-tt-1",
            "address": "192.168.44.11"
        }
    }

响应示例

  • 响应样例
    {
        "member": {
            "name": "member-jy-tt-1", 
            "weight": 1, 
            "admin_state_up": true, 
            "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", 
            "tenant_id": "145483a5107745e9b3d80f956713e6a3", 
            "project_id": "145483a5107745e9b3d80f956713e6a3", 
            "address": "192.168.44.11", 
            "protocol_port": 88, 
            "operating_status": "ONLINE", 
            "id": "c0042496-e220-44f6-914b-e6ca33bab503"
        }
    }

返回码

请参见状态码