更新时间:2024-04-19 GMT+08:00

创建负载均衡器

功能介绍

创建私网类型的负载均衡器。创建成功后,该接口会返回创建的负载均衡器的ID、所属子网ID、负载均衡器内网IP等详细信息。

若要创建公网类型的负载均衡器,还需调用创建浮动IP的接口,将浮动IP与私网负载均衡器的vip_port_id绑定。

可以通过设置enterprise_project_id字段,对资源进行细粒度授权。

URI

POST /v2/{project_id}/elb/loadbalancers

表1 参数说明

参数

是否必选

参数类型

描述

project_id

String

操作用户的项目ID。

请求消息

表2 请求参数

参数

是否必选

参数类型

描述

loadbalancer

Loadbalancer object

负载均衡器对象。详见表3

表3 loadbalancer字段说明

参数

是否必选

参数类型

描述

name

String

负载均衡器名称。

支持的最大字符长度:255

description

String

负载均衡器的描述信息。

支持的最大字符长度:255

tenant_id

String

负载均衡器所在的项目ID。

支持的最大字符长度:255

需要和token中的project_id一致。

vip_subnet_id

String

负载均衡器所在的子网IPv4子网ID。可通过查询子网列表获取(字段是neutron_subnet_id)。vip_address将从该子网中产生。

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

provider

String

负载均衡器的生产者。

取值范围:vlb。

vip_address

String

负载均衡器的内网IP。

该IP必须为vip_subnet_id字段指定的子网网段中的IP。若不指定,自动从vip_subnet_id字段指定的子网网段中生成一个IP地址。

支持的最大字符长度:64

admin_state_up

Boolean

负载均衡器的管理状态。

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

enterprise_project_id

String

企业项目ID。创建负载均衡器时,给负载均衡器绑定企业项目ID。

取值范围:带“-”连字符的UUID格式,或者是字符串“0”。“0”表示默认企业项目。

默认值:"0"。

protection_status

String

当前资源保护状态, 取值:

  • nonProtection: 不保护,默认值为nonProtection
  • consoleProtection: 控制台修改保护

protection_reason

String

资源保护的原因。仅当protection_status为consoleProtection时有效。

响应消息

表4 响应参数

参数

参数类型

描述

loadbalancer

Loadbalancer object

负载均衡器对象。详见表5

表5 loadbalancer字段说明

参数

参数类型

描述

id

String

负载均衡器ID。

tenant_id

String

租户ID。

name

String

负载均衡器名称。

支持的最大字符长度:255

description

String

负载均衡器的描述信息。

支持的最大字符长度:255

vip_subnet_id

String

负载均衡器所在的子网IPv4子网ID。

vip_port_id

String

负载均衡器内网IP对应的端口ID。

provider

String

负载均衡器的生产者名称。

vip_address

String

负载均衡器的内网IP。

支持的最大字符长度:64

listeners

Array of Listeners objects

负载均衡器关联监听器ID的列表。详见表6

pools

Array of Pools objects

负载均衡器关联后端服务器组ID的列表。详见表7

operating_status

String

负载均衡器的操作状态。取值范围:可以为ONLINE和FROZEN。

provisioning_status

String

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

负载均衡器的配置状态。取值范围:可以为ACTIVE。

admin_state_up

Boolean

负载均衡器的管理状态。

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

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

tags

Array

负载均衡器的标签列表。

created_at

String

负载均衡器的创建时间。

格式为UTC时间:YYYY-MM-DDTHH:MM:SS

支持的最大字符长度:19

updated_at

String

负载均衡器的更新时间。

格式为UTC时间:YYYY-MM-DDTHH:MM:SS

支持的最大字符长度:19

enterprise_project_id

String

企业项目ID。创建负载均衡器时,给负载均衡器绑定企业项目ID。

取值范围:带“-”连字符的UUID格式,或者是字符串“0”。“0”表示默认企业项目。

charge_mode

String

计费模式。取值:

  • flavor,表示性能保障模式,提供并发连接数50,000、每秒连接数5,000、每秒查询数5,000的保障能力,规格范围内可提供性能保障,超出部分不提供性能保障。该模式会收取费用。
  • null,表示非性能保障,不提供性能保障。

billing_info

String

资源账单信息。

protection_status

String

当前资源保护状态, 取值:

  • nonProtection: 不保护,默认值为nonProtection
  • consoleProtection: 控制台修改保护

protection_reason

String

资源保护的原因。仅当protection_status为consoleProtection时有效。

publicips

Array of PublicIpInfo objects

负载均衡器绑定的公网IP。只支持绑定一个公网IP。

表6 listeners字段说明

参数

参数类型

描述

id

String

关联的监听器id

表7 pools字段说明

参数

参数类型

描述

id

String

关联的后端服务器组id

表8 PublicIpInfo

参数

参数类型

描述

publicip_id

String

弹性公网ip配置id

publicip_address

String

IP地址

ip_version

Integer

IP版本信息。 取值范围:4和6 4:IPv4 6:IPv6

请求示例

  • 请求样例1 创建私网负载均衡器
    POST https://{Endpoint}/v2/1867112d054b427e808cc6096d8193a1/elb/loadbalancers
    
    {
        "loadbalancer": {
            "name": "loadbalancer1",
            "description": "simple lb",
            "tenant_id": "1867112d054b427e808cc6096d8193a1",
            "vip_subnet_id": "58077bdb-d470-424b-8c45-2e3c65060a5b",
            "vip_address": "10.0.0.4",
            "admin_state_up": true,
            "enterprise_project_id": "0aad99bc-f5f6-4f78-8404-c598d76b0ed2" 
        }
    }

响应示例

  • 响应样例1
    {
        "loadbalancer": {
            "description": "",
            "admin_state_up": true,
            "tenant_id": "1867112d054b427e808cc6096d8193a1",
     
            "provisioning_status": "ACTIVE",
            "vip_subnet_id": "58077bdb-d470-424b-8c45-2e3c65060a5b",
            "listeners": [],
            "vip_address": "10.0.0.4",
            "vip_port_id": "519f6af5-74aa-4347-9dba-84c440192877",
            "provider": "vlb",
            "pools": [],
            "tags": [],
            "id": "b0657373-0c68-41d1-980f-1a44d9e3ff01",
            "operating_status": "ONLINE",
            "name": "loadbalancer1",
            "created_at": "2018-07-25T01:54:13", 
            "updated_at": "2018-07-25T01:54:14",
            "enterprise_project_id": "0aad99bc-f5f6-4f78-8404-c598d76b0ed2" 
        }
    }

返回码

请参见状态码