接口约束
4.6 负载均衡器
4.6.1 创建负载均衡器
功能介绍
创建负载均衡器。
1.若要创建内网IPv4负载均衡器,则需要设置vip_subnet_cidr_id。
2.若要创建公网IPv4负载均衡器,则需要设置publicip,以及设置vpc_id和 vip_subnet_cidr_id这两个参数中的一个。
3.若要绑定有已有公网IPv4地址,需要设置publicip_ids,以及设置vpc_id和 vip_subnet_cidr_id这两个参数中的一个。
4.若要创建内网双栈负载均衡器,则需要设置ipv6_vip_virsubnet_id。
5.若要创建公网双栈负载均衡器,则需要设置ipv6_vip_virsubnet_id和 ipv6_bandwidth。
6.不支持绑定已有未使用的内网IPv4、内网IPv6或公网IPv6地址。
接口约束
1.vpc_id 或 vip_subnet_cidr_id 或 ipv6_vip_virsubnet_id 不能同时为空。
2.ip_target_enable参数表示是否启用跨VPC后端转发能力,开启后可以配置将请求转 发到不同的VPC,未开启则只能将请求转发到当前LB所在VPC的后端服务器上。
3.admin_state_up参数的值必须是true。
4.provider参数的值必须是vlb。
5.elb_virsubnet_ids参数对应的网络类型支持双栈或者只支持ipv4。网络类型为只支持 ipv4时,ipv6_vip_virsubnet_id参数需要为空。
6.只能通过ELB Console控制台来解绑EIP,在ELB列表查询页面选择操作列中的更多按 钮->解绑EIP。
7.创建LB时不能同时设置publicip_ids和publicip,只能选择绑定已有公网IP或者选择新 建公网IP,或者都不设置这两个字段。
8.若要绑定已有带宽,则需要设置共享带宽ID,不支持绑定独享带宽。若需要新建独 享带宽,则带宽信息中charge_mode、share_type和size字段是必须的。
调试
您可以在API Explorer中调试该接口。
URI
表4-31 路径参数
参数 是否必选 参数类型 描述
project_id 是 String 负载均衡器的项目ID。
最小长度:0 最大长度:36
请求参数
表4-32 请求 Header 参数
参数 是否必选 参数类型 描述
X-Auth-Token 否 String IAM鉴权Token。
最小长度:0 最大长度:4096
表4-33 请求 Body 参数
参数 是否必选 参数类型 描述
loadbalancer 是 CreateLoadB alancerOptio n object
负载均衡器对象。
表4-34 CreateLoadBalancerOption
参数 是否必选 参数类型 描述
name 否 String 负载均衡器的名称。
最小长度:0 最大长度:255 description 否 String 负载均衡器的描述。
最小长度:0 最大长度:255
参数 是否必选 参数类型 描述
vip_address 否 String 负载均衡器的IPv4虚拟IP。该地 址必须包含在所在子网的IPv4网 段内,且未被占用。
使用说明:
● 传入vip_address时必须传入 vip_subnet_cidr_id。
● 不传入vip_address,但传入 vip_subnet_cidr_id,则自动 分配IPv4虚拟IP。
● 不传入vip_address,且不传 vip_subnet_cidr_id,则不分 配虚拟IP,
vip_address=null。
vip_subnet_ci
dr_id 否 String 负载均衡器所在子网的IPv4子网
ID。若需要创建带IPv4虚拟IP的 LB,该字段必须传入。 可以通 过GET https://
{VPC_Endpoint}/v1/
{project_id}/subnets 响应参数中的
neutron_subnet_id得到。 使用 说明:
● vpc_id, vip_subnet_cidr_id, ipv6_vip_virsubnet_id不能同 时为空,且需要在同一个vpc 下。
● 若同时传入vpc_id和 vip_subnet_cidr_id,则
bnet_id 否 String 双栈类型负载均衡器所在子网的
IPv6网络ID。可以通过GET https://{VPC_Endpoint}/v1/
{project_id}/subnets 响应参数 中的id得到。
使用说明:
● vpc_id,
vip_subnet_cidr_id,
ipv6_vip_virsubnet_id不能同 时为空,且需要在同一个vpc 下。
参数 是否必选 参数类型 描述
provider 否 String 负载均衡器的生产者名称。固定 为vlb。
最小长度:1 最大长度:255
l4_flavor_id 否 String 四层Flavor ID。 hcso场景下所 有LB实例共享带宽,该字段无
project_id 否 String 负载均衡器所在的项目ID。
最小长度:1 最大长度:32
guaranteed 否 Boolean 是否独享型负载均衡器。取值:
● true:独享型。
● false:共享型。
当前只支持设置为true,设置为 false会返回400 Bad Request 。 默认:true。
vpc_id 否 String 负载均衡器所在的VPC ID。可 以通过GET https://
{VPC_Endpoint}/v1/
{project_id}/vpcs 响应参数中的 id得到。
使用说明:
● vpc_id,
vip_subnet_cidr_id,
ipv6_vip_virsubnet_id不能同 时为空,且需要在同一个vpc 下。
availability_zo
ne_list 是 Array of
strings 可用区列表。可通过GET https://{ELB_Endpoint}/v3/
ject_id 否 String 负载均衡器所属的企业项目ID。
参数 是否必选 参数类型 描述 tags 否 Array of Tag
objects 负载均衡的标签列表。示例:
"tags":
l7_flavor_id 否 String 七层Flavor ID。 hcso场景下所 有LB实例共享带宽,该字段无
billing_info 否 String 资源账单信息,取值:
● 空:按需计费。
● 非空:包周期计费。 包周期 计费billing_info字段的格式 为:order_id:product_id:region_i d:project_id,如:
CS2107161019CDJZZ:OFFI5 69702121789763584:eu-de:
057ef081eb00d2732fd1c01 a9be75e6f 使用说明:
● admin权限才能更新此字 段。
最小长度:1 最大长度:1024 ipv6_bandwid
th 否 BandwidthRe
f object 带宽对象ID,仅在创建或更新公
网IPv6负载均衡器时有效。若选 择创建新EIP并指定共享带宽 时,此EIP会被分进共享带宽里 面。
publicip_ids 否 Array of
strings 负载均衡器绑定的公网IP ID。
只支持绑定数组中的第一个 EIP,其他将被忽略。
publicip 否 CreateLoadB alancerPublic IpOption object
创建ELB时,新建公网IP请求参 数
参数 是否必选 参数类型 描述 elb_virsubnet_
ids 否 Array of
strings 下联面子网的网络ID列表。可以 通过GET https://
{VPC_Endpoint}/v1/
{project_id}/subnets 响应参数 中的id得到。
ble 否 Boolean 是否启用跨VPC后端转发。取
值:
ection_enable 否 Boolean 是否开启删除保护。取值:
false不开启,true开启。默认
ns 否 PrepaidCreat
eOption object
创建负载均衡器的包周期信息,
若传入该结构体,则创建包周期 的LB
参数 是否必选 参数类型 描述 autoscaling 否 CreateLoadb
alancerAutos calingOption object
弹性扩缩容配置信息。负载均衡 器配置并开启弹性扩缩容后,可 根据负载情况自动调整负载均衡 器的规格。
使用说明:
● 仅当局点支持弹性扩缩特性 该字段才有效。可咨询客服 了解当前局点是否支持弹性 扩缩容特性。
● 开启弹性扩缩容后,
l4_flavor_id和l7_flavor_id不 再起作用。
表4-35 Tag
参数 是否必选 参数类型 描述
key 否 String 标签键
最小长度:1 最大长度:36
value 否 String 标签值
最小长度:0 最大长度:43
表4-36 BandwidthRef
参数 是否必选 参数类型 描述
id 是 String 共享带宽的id
表4-37 CreateLoadBalancerPublicIpOption
参数 是否必选 参数类型 描述
ip_version 否 Integer IP版本。取值:4表示IPv4,6表 示IPv6。
缺省值:4
参数 是否必选 参数类型 描述
network_type 是 String 弹性公网IP的网络类型,默认 5_bgp,更多请参考弹性公网ip 创建
最小长度:1 最大长度:36
billing_info 否 String 资源账单信息,取值:
● 空:按需计费。
● 非空:包周期计费。
最小长度:1 最大长度:1024
description 否 String 弹性公网IP的描述信息,不支持 特殊字符
最小长度:1 最大长度:255 bandwidth 是 CreateLoadB
alancerBand widthOption object
bandwidth
表4-38 CreateLoadBalancerBandwidthOption
参数 是否必选 参数类型 描述
name 否 String 带宽名称。取值:1-64个字符,
支持数字、字母、中文、_(下划 线)、-(中划线)、.(点)
使用说明:
● 如果share_type是PER,该字 段是必选。
● 如果bandwidth对象的id有 值,该字段被忽略。
最小长度:1 最大长度:64
参数 是否必选 参数类型 描述
size 否 Integer 带宽大小 取值范围:默认1Mbit/
s~2000Mbit/s(具体范围以各区 位为1Mbit/s。 300Mbit/
s~1000Mbit/s:默认最小单位为 50Mbit/s。 大于1000Mbit/s:默 认最小单位为500Mbit/s。
使用说明:
● 当id字段为null时,size是必 须的。
最小值:0 最大值:99999 charge_mode 否 String 计费模式。
取值范围:bandwidth表示按带 宽计费,traffic表示按流量计 费。
使用说明:
● 当id字段为null时,
charge_mode是必须的。
最小长度:1 最大长度:36 share_type 否 String 带宽类型。 取值:
● PER:独享带宽。
● WHOLE:共享带宽。
使用说明:
● 当id字段为null时,
share_type是必须的。当id不 为null时,该字段被忽略。
● 该字段为WHOLE时,必须指 定带宽ID。
● IPv6的EIP不支持WHOLE类 型带宽。
billing_info 否 String 预留资源账单信息,默认为空表 示按需计费, 非空为包周期。
admin权限才能更新此字段 最小长度:1
最大长度:1024
参数 是否必选 参数类型 描述
id 否 String 功能说明:使用已有的共享带宽
创建IP 取值范围:共享带宽ID 使用说明:
● WHOLE类型的带宽ID;
● 在预付费的情况下,不填该 值。该字段取空字符串时,
会被忽略。
最小长度:1 最大长度:36
表4-39 PrepaidCreateOption
参数 是否必选 参数类型 描述
period_type 是 String 订购周期类型,仅在
change_mode为delay时有效。
取值:
● month:月(默认)。
● year:年。
period_num 否 Integer 订购周期数,仅在
change_mode为delay时有效。
取值:
● period_type为month时,为 [1,9],默认1。
● period_type为year时,为 [1,3],默认1。
最小值:1 最大值:9 缺省值:1
auto_renew 否 Boolean 是否自动续订; true:自动续 订 false:不自动续订
缺省值:false
auto_pay 否 Boolean 下单订购后,是否自动从客户的 账户中支付; true:自动支 付; false:不自动支付。 自动 支付时,只能使用账户的现金支 付;如果要使用代金券,请选择 不自动支付,然后在用户费用中 心,选择代金券支付。
缺省值:false
表4-40 CreateLoadbalancerAutoscalingOption
参数 是否必选 参数类型 描述
enable 是 Boolean 当前负载均衡器是否开启弹性扩
缩容。 取值:
● true:开启。
● false:不开启。
缺省值:false min_l4_flavor
_id 否 String 弹性扩缩容的最小四层规格ID,
有四层监听器时,该字段不能为 空。
最小长度:1 最大长度:36 min_l7_flavor
_id 否 String 弹性扩缩容的最小七层规格ID,
有七层监听器时,该字段不能为 空。
最小长度:1 最大长度:36
响应参数
状态码: 201
表4-41 响应 Body 参数
参数 参数类型 描述
loadbalancer LoadBalancer
object 负载均衡器对象。(按需场景返回该字段)
loadbalancer_
id String 负载均衡器的id(包周期场景返回该字段)
最小长度:0 最大长度:36
order_id String 订单号(包周期场景返回该字段)
最小长度:0 最大长度:36 request_id String 请求ID。
注:自动生成 。 最小长度:0 最大长度:36
表4-42 LoadBalancer
参数 参数类型 描述
id String 负载均衡器ID。
description String 负载均衡器描述信息。
最小长度:1 最大长度:255 provisioning_s
tatus String 负载均衡器的配置状态。取值:
● ACTIVE:使用中。
● PENDING_DELETE:删除中。
admin_state_
up Boolean 负载均衡器的管理状态。固定为true。
provider String 负载均衡器的生产者名称。固定为vlb。
pools Array of PoolRef objects
负载均衡器直接关联的后端云服务器组的ID列 表。
listeners Array of ListenerRef objects
负载均衡器关联的监听器的ID列表。
operating_stat
us String 负载均衡器的操作状态。取值:
● ONLINE:在线。
name String 负载均衡器的名称。
project_id String 负载均衡器所属的项目ID。
vip_subnet_ci
dr_id String 负载均衡器所在子网的IPv4子网ID。
vip_address String 负载均衡器的IPv4虚拟IP地址。
vip_port_id String 负载均衡器的IPv4对应的port ID。
tags Array of Tag
objects 负载均衡的标签列表。
created_at String 负载均衡器的创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z'
updated_at String 负载均衡器的更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z'
guaranteed Boolean 是否独享型LB,取值:
● false:共享型。
● true:独享型。
vpc_id String 负载均衡器所在VPC ID。
参数 参数类型 描述
参数 参数类型 描述