- 最新动态
- 功能总览
- 产品介绍
- 计费说明
- 快速入门
- 用户指南
- 最佳实践
-
API参考
- 使用前必读
- API概览
- API版本选择建议
- 如何调用API
- API(V3)
- API(V2)
- API(OpenStack API)
- 应用示例
- 权限和授权项
- 历史API
- 附录
- SDK参考
- 常见问题
- 视频帮助
- 产品术语
-
更多文档
- 用户指南(阿布扎比区域)
- API参考(阿布扎比区域)
-
用户指南 (巴黎区域)
- 产品介绍
- 快速入门
- 负载均衡器
- 监听器
- HTTP/HTTPS监听器高级配置
- 后端服务器组
- 后端服务器(独享型)
- 后端服务器(共享型)
- 证书管理
- 访问控制管理
- TLS安全策略
- 标签管理
- 访问日志
- 监控
- 审计
- 权限管理
- 关于配额
-
常见问题
- 高频常见问题
- 为什么通过负载均衡无法访问后端业务?
- 如何检查弹性负载均衡服务不通或异常中断?
- 如何排查ELB的异常返回码?
- 弹性负载均衡器是否可以单独使用?
- ELB是否支持TCP长连接?
- 弹性负载均衡是否支持后端FTP服务?
- 弹性负载均衡分配的EIP是否为独占?
- 单个用户默认可以创建多少个负载均衡器或监听器?
- ELB权限和使用范围是什么?
- 当负载均衡器正在运行中是否可以调整后端服务器的数量?
- 弹性负载均衡是否可以添加不同操作系统的服务器?
- ELB添加后端的端口号是否可以不一致?
- ELB支持跨用户、跨VPC使用么?
- 负载均衡器的后端服务器可以反过来访问公网/私网负载均衡器上的端口吗?
- ELB能否实现前端是HTTPS协议,后端也是HTTPS协议?
- ELB所属的VPC和子网支持修改吗?
- 是否支持在业务不中断的前提下,将共享型负载均衡升级为独享型负载均衡?
- ELB对于IPv6网络的支持情况是怎样的?
- 如何检查弹性负载均衡前后端流量不一致?
- 如何检查请求不均衡?
- 如何检查弹性负载均衡业务访问延时大?
- 如何检查压测性能上不去?
- 负载均衡器
- 监听器
-
后端服务器
- 为什么后端服务器上收到的健康检查报文间隔和设置的间隔时间不一致?
- 使用ELB后,后端服务器能否访问公网?
- 为什么100开头的IP在频繁访问后端服务器?
- ELB可以跨区域关联后端服务器么?
- 公网负载均衡的后端服务器要不要绑定EIP?
- 如何检查后端服务器网络状态?
- 如何检查后端服务器网络配置?
- 如何检查后端服务器服务状态?
- 后端服务器什么时候被认为是健康的?
- 如何检查通过EIP访问后端云服务器?
- 为什么云监控服务统计的ELB活跃连接数与后端服务器上的连接数不一致?
- 为什么配置了白名单后还能访问后端服务器?
- ELB修改后端服务器权重后多久生效?
- 为什么开启跨VPC后端需要确保负载均衡所属子网至少拥有16个可用IP地址?
- 健康检查
- 获取源IP
- HTTP/HTTPS监听器
- 会话保持
- 证书管理
- 监控
- 修订记录
- API参考 (巴黎区域)
- 用户指南(吉隆坡区域)
- API参考(吉隆坡区域)
- 用户指南(安卡拉区域)
- API参考(安卡拉区域)
- 通用参考
链接复制成功!
创建后端云服务器组
功能介绍
创建后端云服务器组。将多个后端云服务器添加到后端云服务器组中后,请求会在后端云服务器间按后端云服务器组的负载均衡算法和后端云服务器的权重来做请求分发。
接口约束
- 指定session-persistence参数时,只有当type是APP_COOKIE时,才可以设置cookie_name。
URI
POST /v2/{project_id}/elb/pools
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
操作用户的项目ID。 |
请求消息
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
tenant_id |
否 |
String |
后端云服务器组所属的项目 ID。 需要和token中的project_id一致。 支持的最大字符长度:255 |
name |
否 |
String |
后端云服务器组名称。 支持的最大字符长度:255 |
description |
否 |
String |
后端云服务器组的描述信息。 支持的最大字符长度:255 |
protocol |
是 |
String |
后端云服务器组的后端协议。 支持TCP、UDP和HTTP。 当指定listener_id创建后端云服务器组时,后端云服务器组的protocol和它关联的监听器的protocol有如下关系:
|
lb_algorithm |
是 |
String |
后端云服务器组的负载均衡算法。
取值范围:
当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 |
admin_state_up |
否 |
Boolean |
后端云服务器组的管理状态。 该字段为预留字段,暂未启用。默认为true。 |
listener_id |
否 |
String |
后端云服务器组关联的监听器的ID。 listener_id和loadbalancer_id中至少指定一个。 |
loadbalancer_id |
否 |
String |
后端云服务器组关联的负载均衡器ID。 listener_id和loadbalancer_id中至少指定一个。 |
session_persistence |
否 |
SessionPersistence object |
会话持久性。详细参见表4。 取值为null时,表示会话保持关闭。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
是 |
String |
会话保持的类型。
取值范围:
当后端云服务器组的protocol为TCP时,只按SOURCE_IP生效;当后端云服务器组的protocol为HTTP时,只按HTTP_COOKIE、APP_COOKIE生效。 |
cookie_name |
否 |
String |
cookie名称。 当会话保持类型是APP_COOKIE时,为必选字段,其它类型时不可指定。 |
persistence_timeout |
否 |
Integer |
会话保持的超时时间。 当type为APP_COOKIE时不生效。
取值范围:
|
响应消息
参数 |
参数类型 |
描述 |
---|---|---|
pool |
Pool object |
后端云服务器组对象。详见表6 pool字段说明 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
后端云服务器组 ID。 |
tenant_id |
String |
后端云服务器组所属的项目 ID。 支持的最大字符长度:255 |
name |
String |
后端云服务器组名称。 支持的最大字符长度:255 |
description |
String |
后端云服务器组的描述信息。 支持的最大字符长度:255 |
protocol |
String |
后端云服务器组的后端协议。 取值范围:TCP、UDP和HTTP。 当指定listener_id创建后端云服务器组时,后端云服务器组的protocol和它关联的监听器的protocol有如下关系:
|
lb_algorithm |
String |
后端云服务器组的负载均衡算法。
取值范围:
|
members |
Array of Members objects |
后端云服务器组关联的后端云服务器ID的列表。详见表7 |
healthmonitor_id |
String |
后端云服务器组关联的健康检查的ID。 |
admin_state_up |
Boolean |
后端云服务器组的管理状态。 该字段为预留字段,暂未启用。取值范围:true/false。
|
listeners |
Array of Listeners objects |
后端云服务器组关联的监听器ID列表。详见表8 |
loadbalancers |
Array of Loadbalancers objects |
后端云服务器组关联的负载均衡器ID列表。详见表9 |
session_persistence |
SessionPersistence object |
后端云服务器组的会话持久性。详见表10。 当开启会话保持后,在一定时间内,来自同一客户端的请求会发送到同一个后端云服务器上。 取值范围:当会话保持关闭时,该字段取值为null。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
是 |
String |
会话保持的类型。
取值范围:
当后端云服务器组的protocol为TCP时,只按SOURCE_IP生效;当后端云服务器组的protocol为HTTP时,只按HTTP_COOKIE、APP_COOKIE生效。 |
cookie_name |
否 |
String |
cookie名称。 当会话保持类型是APP_COOKIE时,为必选字段,其它类型时不可指定。 |
persistence_timeout |
否 |
Integer |
会话保持的超时时间。 当type为APP_COOKIE时不生效。
取值范围:
|
请求示例
- 请求样例1
- 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 创建后端云服务器组,不开启会话保持
POST https://{Endpoint}/v2/601240b9c5c94059b63d484c92cfe308/elb/pools { "pool": { "lb_algorithm":"ROUND_ROBIN", "loadbalancer_id": "63ad9dfe-4750-479f-9630-ada43ccc8117", "protocol":"HTTP" } }
- step1 请求样例 根据弹性云服务器id查询对应的subnet_id和address,其中device_id为弹性云服务器的id。取响应体中主网卡(primary_interface为true的port)的subnet_id、ip_address。
- 请求样例2 创建后端云服务器组,并开启APP_COOKIE类型的会话保持
POST https://{Endpoint}/v2/145483a5107745e9b3d80f956713e6a3/elb/pools { "pool": { "lb_algorithm": "ROUND_ROBIN", "loadbalancer_id": "370fb112-e920-486a-b051-1d0d30704dd3", "protocol": "HTTP", "session_persistence": { "cookie_name": "my_cookie", "type": "APP_COOKIE", "persistence_timeout": 1 }, "admin_state_up": true } }
- 请求样例3 创建HTTP后端云服务器组,并开启HTTP_COOKIE类型的会话保持
POST https://{Endpoint}/v2/601240b9c5c94059b63d484c92cfe308/elb/pools { "pool": { "lb_algorithm":"ROUND_ROBIN", "loadbalancer_id": "63ad9dfe-4750-479f-9630-ada43ccc8117", "protocol":"HTTP", "session_persistence":{ "type":"HTTP_COOKIE" } } }
响应示例
- 响应样例1
{ "pool": { "lb_algorithm": "ROUND_ROBIN", "protocol": "HTTP", "description": "", "admin_state_up": true, "loadbalancers": [ { "id": "63ad9dfe-4750-479f-9630-ada43ccc8117" } ], "tenant_id": "601240b9c5c94059b63d484c92cfe308", "session_persistence": null, "healthmonitor_id": null, "listeners": [], "members": [], "id": "4e496951-befb-47bf-9573-c1cd11825c07", "name": "" } }
- 响应样例2
{ "pool": { "lb_algorithm": "ROUND_ROBIN", "protocol": "HTTP", "description": "", "admin_state_up": true, "loadbalancers": [ { "id": "6b041b9e-976b-40ba-b075-375be6110b53" } ], "tenant_id": "145483a5107745e9b3d80f956713e6a3", "session_persistence": { "cookie_name": "my_cookie", "type": "APP_COOKIE", "persistence_timeout": 1 }, "healthmonitor_id": null, "listeners": [ { "id": "370fb112-e920-486a-b051-1d0d30704dd3" } ], "members": [], "id": "307f8968-9474-4d0c-8434-66be09dabcc1", "name": "" } }
- 响应样例3
{ "pool": { "lb_algorithm": "ROUND_ROBIN", "protocol": "HTTP", "description": "", "admin_state_up": true, "loadbalancers": [ { "id": "63ad9dfe-4750-479f-9630-ada43ccc8117" } ], "tenant_id": "601240b9c5c94059b63d484c92cfe308", "session_persistence": { "persistence_timeout": 1440, "cookie_name": null, "type": "HTTP_COOKIE" }, "healthmonitor_id": null, "listeners": [], "members": [], "id": "d46eab56-d76b-4cd3-8952-3c3c4cf113aa", "name": "" } }
返回码
请参见状态码。