普通型blb实例
普通型blb实例提供了负载均衡常规功能组件,能够满足用户对负载均衡的通用需求,具备轻量化、配置简单、价格便宜等特点。
self即blb_client;具体各个参数含义请参考blb官方文档,api参考下的普通型blb接口
创建blb实例
创建一个LoadBalancer,返回分配的服务地址及实例ID。付费方式为后付费。需要实名认证,若未通过实名认证可以前往百度智能云官网控制台中的安全认证下的实名认证中进行认证。
使用以下代码可以创建blb实例:
函数声明
1def create_loadbalancer(self, vpc_id, subnet_id, name=None,
2 desc=None, ip_version=None, client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateLoadBalancer创建例
返回值
操作成功:
1{
2 blb_id:'lb-7587472b',
3 name:'BLB-beijing-c5335c6f',
4 desc:'',
5 address:'192.168.0.7'
6}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_loadbalancer.py
修改blb实例
更新指定的单个LoadBalancer配置信息,包括LoadBalancer实例的名称和描述。
使用以下代码可以修改blb实例:
函数声明
1def update_loadbalancer(self, blb_id, name=None, desc=None,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:UpdateLoadBalancer更新实例
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_loadbalancer.py
修改blb实例ACL
更新指定的单个LoadBalancer 支持ACL特性。
使用以下代码可以修改blb实例支持ACL:
函数声明
1 def update_loadbalancer_acl(self, blb_id, client_token=None, support_acl=None, config=None)
参数含义
请参考OpenAPI文档:UpdateLoadBalancerAcl更新实例ACL功能
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_loadbalancer_acl.py
查询blb实例列表
查询用户账户下所有LoadBalancer的信息。支持按LoadBalancer的id、name、address进行查询,匹配规则支持部分包含(不支持正则)。支持按bccId进行查询,目前只支持单个bccId查询,并且仅支持精确查询。查询结果为包含该后端服务器的负载均衡实例。返回结果是多重查询条件的交集。如果BLB实例开启了公网访问,返回结果将会带上公网IP。结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定
使用以下代码可以查询blb列表:
函数声明
1def describe_loadbalancers(self, address=None, name=None, blb_id=None,
2 bcc_id=None, marker=None, max_keys=None, ip_version=None,
3 config=None)
参数含义
请参考OpenAPI文档:DescribeLoadBalancers查询已有的BLB实例
返回值
操作成功:
1blb_list:[{
2 tags:None,
3 blb_id:'lb-70c35170',
4 status:'available',
5 name:'testblb',
6 desc:'justForTest',
7 address:'192.168.0.3',
8 vpc_id:'vpc-sr84haq14tcb',
9 subnet_id:'sbn-kg7mj5wt4yw9',
10 allow_delete:True,
11 payment_timing:'Postpaid'
12},
13marker:u'blb-05FA0CCE',
14next_marker:None,
15is_truncated:False,
16max_keys:1000
17]
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_loadbalancers.py
查询blb实例详情
按id查询用户账户下某个LoadBalancer的详细信息。包含LoadBalancer所有的监听器端口信息
使用以下代码可以查询blb详情:
函数声明
1def describe_loadbalancer_detail(self, blb_id, config=None)
参数含义
请参考OpenAPI文档:DescribeLoadBalancerDetail查询BLB实例详情
返回值
操作成功:
1{
2 tags:None,
3 blb_id:'lb-70c35170',
4 status:'available',
5 name:'testblb',
6 desc:'justForTest',
7 address:'192.168.0.3',
8 cidr:'192.168.0.0/16',
9 vpc_name:'test',
10 create_time:'2023-12-11T12:32:09Z',
11 ipv6:'',
12 allow_delete:True,
13 listener:[],
14 support_acl:False,
15 payment_timing:'Postpaid',
16 vpc_id:'vpc-sr84haq14tcb'
17}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_loadbalancer_detail.py
删除blb实例
释放指定LoadBalancer,被释放的LoadBalancer无法找回
使用以下代码可以删除blb实例:
函数声明
1def delete_loadbalancer(self, blb_id, client_token=None, config=None)
参数含义
请参考OpenAPI文档:DeleteLoadBalancer释放BLB实例
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_delete_loadbalancer.py
创建TCP监听器
在指定LoadBalancer下,创建一个基于TCP协议的监听器,监听一个前端端口,将发往该端口的所有TCP流量,转发到后端服务器监听的后端端口上。TCP监听器只支持TCP协议的健康检查,检查端口和后端服务器监听端口一致。
使用以下代码可以创建TCP监听器:
函数声明
1 def create_tcp_listener(self, blb_id, listener_port,
2 backend_port, scheduler,
3 health_check_timeout_in_second=None,
4 health_check_interval=None,
5 unhealthy_threshold=None,
6 healthy_threshold=None,
7 client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateTCPListener创建TCP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_tcp_listener.py
创建UDP监听器
在指定LoadBalancer下,创建一个基于UDP协议的监听器,监听一个前端端口,将发往该端口的所有UDP流量,转发到后端服务器监听的后端端口上。UDP监听器支持UDP、ICMP协议的健康检查,检查端口和后端服务器监听端口一致。
使用以下代码可以创建UDP监听器:
函数声明
1 def create_udp_listener(self, blb_id, listener_port, backend_port,
2 scheduler, health_check_string,
3 health_check_timeout_in_second=None,
4 health_check_interval=None,
5 unhealthy_threshold=None,
6 healthy_threshold=None,
7 client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateUDPListener创建UDP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_udp_listener.py
创建HTTP监听器
在指定LoadBalancer下,创建一个基于HTTP协议的监听器,监听一个前端端口,将发往该端口的所有HTTP请求,转发到后端服务器监听的后端端口上。
使用以下代码可以创建HTTP监听器:
函数声明
1 def create_http_listener(self, blb_id, listener_port,
2 backend_port, scheduler,
3 keep_session=None, keep_session_type=None,
4 keep_session_duration=None,
5 keep_session_cookie_name=None,
6 x_forward_for=None,
7 health_check_type=None, health_check_port=None,
8 health_check_uri=None,
9 health_check_timeout_in_second=None,
10 health_check_interval=None,
11 unhealthy_threshold=None,
12 healthy_threshold=None,
13 health_check_normal_status=None,
14 server_timeout=None, redirect_port=None,
15 client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateHTTPListener创建HTTP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_http_listener.py
创建HTTPS监听器
在指定LoadBalancer下,创建一个基于HTTPS协议的监听器,监听一个前端端口,将发往该端口的所有HTTPS请求,先通过SSL卸载转换为HTTP请求后,再转发到后端服务器监听的后端端口上。
使用以下代码可以创建HTTPS监听器:
函数声明
1 def create_https_listener(self, blb_id, listener_port, backend_port,
2 scheduler, cert_ids, keep_session=None,
3 keep_session_type=None,
4 keep_session_duration=None,
5 keep_session_cookie_name=None,
6 x_forward_for=None, health_check_type=None,
7 health_check_port=None, health_check_uri=None,
8 health_check_timeout_in_second=None,
9 health_check_interval=None,
10 unhealth_threshold=None, health_threshold=None,
11 health_check_normal_status=None,
12 server_timeout=None, ie6_compatible=None,
13 encryption_type=None, encryption_protocols=None,
14 dual_auth=None, client_certIds=None,
15 client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateHTTPSListener创建HTTPS监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_https_listener.py
创建SSL监听器
在指定LoadBalancer下,创建一个基于SSL协议的监听器,监听一个前端端口,将发往该端口的所有SSL流量,通过SSL卸载转换为TCP请求后转发到后端服务器监听的后端端口上。SSL监听器只支持TCP协议的健康检查,检查端口和后端服务器监听端口一致。
使用以下代码可以创建SSL监听器:
函数声明
1 def create_ssl_listener(self, blb_id, listener_port, backend_port,
2 scheduler, cert_ids,
3 health_check_timeout_in_second=None,
4 health_check_interval=None,
5 unhealth_threshold=None, health_threshold=None,
6 ie6_compatible=None, encryption_type=None,
7 encryption_protocols=None,
8 dual_auth=None, client_certIds=None,
9 client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateSSLListener创建SSL监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_ssl_listener.py
更新TCP监听器
在指定LoadBalancer下,创建一个基于SSL协议的监听器,监听一个前端端口,将发往该端口的所有SSL流量,通过SSL卸载转换为TCP请求后转发到后端服务器监听的后端端口上。SSL监听器只支持TCP协议的健康检查,检查端口和后端服务器监听端口一致。
使用以下代码可以更新TCP监听器:
函数声明
1 def update_tcp_listener(self, blb_id, listener_port,
2 backend_port=None, scheduler=None,
3 health_check_timeout_in_second=None,
4 health_check_interval=None,
5 unhealth_threshold=None,
6 health_threshold=None,
7 config=None)
参数含义
请参考OpenAPI文档:UpdateTCPListener更新TCP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_tcp_listener.py
更新UDP监听器
更新指定LoadBalancer下的UDP监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新UDP监听器:
函数声明
1 def update_udp_listener(self, blb_id, listener_port, backend_port=None,
2 scheduler=None, health_check_string=None,
3 health_check_timeout_in_second=None,
4 health_check_interval=None,
5 unhealth_threshold=None,
6 health_threshold=None,
7 config=None)
参数含义
请参考OpenAPI文档:UpdateUDPListener更新UDP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_udp_listener.py
更新HTTP监听器
更新指定LoadBalancer下的HTTP监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新HTTP监听器:
函数声明
1 def update_http_listener(self, blb_id, listener_port, backend_port=None,
2 scheduler=None, keep_session=None,
3 keep_session_type=None,
4 keep_session_duration=None,
5 keep_session_cookie_name=None,
6 x_forward_for=None,
7 health_check_type=None, health_check_port=None,
8 health_check_uri=None,
9 health_check_timeout_in_second=None,
10 health_check_interval=None,
11 unhealth_threshold=None, health_threshold=None,
12 health_check_normal_status=None,
13 server_timeout=None,
14 redirect_port=None, config=None)
参数含义
请参考OpenAPI文档:UpdateHTTPListener更新HTTP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_http_listener.py
更新HTTPS监听器
更新指定LoadBalancer下的HTTPS监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新HTTPS监听器:
函数声明
1 def update_https_listener(self, blb_id, listener_port,
2 backend_port=None,
3 scheduler=None, keep_session=None,
4 keep_session_type=None,
5 keep_session_duration=None,
6 keep_session_cookie_name=None,
7 x_forward_for=None, health_check_type=None,
8 health_check_port=None, health_check_uri=None,
9 health_check_timeout_in_second=None,
10 health_check_interval=None,
11 unhealth_threshold=None, health_threshold=None,
12 health_check_normal_status=None,
13 server_timeout=None,
14 cert_ids=None, ie6_compatible=None,
15 config=None)
参数含义
请参考OpenAPI文档:UpdateHTTPSListener更新HTTPS监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_https_listener.py
更新SSL监听器
更新指定LoadBalancer下的SSL监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新SSL监听器:
函数声明
1 def update_ssl_listener(self, blb_id, listener_port,
2 backend_port=None, scheduler=None,
3 health_check_timeout_in_second=None,
4 health_check_interval=None,
5 unhealth_threshold=None,
6 health_threshold=None, cert_ids=None,
7 ie6_compatible=None,
8 encryption_type=None,
9 encryption_protocols=None,
10 dual_auth=None, client_certIds=None,
11 config=None)
参数含义
请参考OpenAPI文档:UpdateSSLListener更新SSL监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_ssl_listener.py
查询TCP监听器
- 查询指定LoadBalancer下所有TCP监听器的信息
- 支持按监听器端口进行匹配查询
- 结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定
使用以下代码可以查询TCP监听器:
函数声明
1 def describe_tcp_listener(self, blb_id, listener_port=None,
2 marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeTCPListeners查询TCP监听器
返回值
操作成功:
1{
2"listener_list": [
3{
4"listener_port":80,
5"backend_port":80,
6"backend_port_type":u'TCP',
7"scheduler":u'RoundRobin',
8"health_check_timeout_in_second":3,
9"health_check_interval":3,
10"unhealthy_threshold":3,
11"healthy_threshold":3,
12"get_blb_ip":False,
13"health_check_valid":1,
14"tcp_session_timeout":900
15}
16]
17}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例 具体代码示例参考:example_describe_tcp_listener.py
查询UDP监听器
- 查询指定LoadBalancer下所有UDP监听器的信息
- 支持按监听器端口进行匹配查询
- 结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定
使用以下代码可以查询UDP监听器:
函数声明
1 def describe_udp_listener(self, blb_id, listener_port=None, marker=None,
2 max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeUDPListeners查询UDP监听器
返回值
操作成功:
1{
2"listener_list": [
3{
4"listener_port":53,
5"backend_port":53,
6"backend_port_type":u'UDP',
7"scheduler":u'RoundRobin',
8"health_check_timeout_in_second":3,
9"health_check_interval":3,
10"unhealthy_threshold":3,
11"healthy_threshold":3,
12"get_blb_ip":False,
13"health_check_valid":1,
14"health_check_string":u'test',
15"udp_session_timeout":30,
16"health_check_type":u'UDP'
17}
18]
19}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_udp_listener.py
查询HTTP监听器
查询指定LoadBalancer下所有HTTP监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定。
使用以下代码可以查询HTTP监听器
函数声明
1 def describe_http_listener(self, blb_id, listener_port=None,
2 marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeHTTPListeners查询HTTP监听器
返回值
操作成功:
1{
2 "listenerList": [
3 {
4 "listenerPort": 90,
5 "backendPort": 90,
6 "scheduler": "LeastConnection",
7 "healthCheckTimeoutInSecond": 4,
8 "healthCheckInterval": 5,
9 "unhealthyThreshold": 2,
10 "healthyThreshold": 3,
11 "keepSession": false,
12 "keepSessionType": null,
13 "keepSessionDuration": null,
14 "keepSessionCookieName": null,
15 "xForwardFor": false,
16 "healthCheckType": "HTTP",
17 "healthCheckPort": 90,
18 "healthCheckURI": "/",
19 "healthCheckNormalStatus": "http_2xx|http_3xx",
20 "serverTimeout": 30,
21 "redirectPort": 80
22 },
23 {
24 "listenerPort": 95,
25 "backendPort": 95,
26 "scheduler": "LeastConnection",
27 "healthCheckTimeoutInSecond": 4,
28 "healthCheckInterval": 5,
29 "unhealthyThreshold": 2,
30 "healthyThreshold": 3,
31 "keepSession": false,
32 "keepSessionType": null,
33 "keepSessionDuration": null,
34 "keepSessionCookieName": null,
35 "xForwardFor": false,
36 "healthCheckType": "HTTP",
37 "healthCheckPort": 95,
38 "healthCheckURI": "/",
39 "healthCheckNormalStatus": "http_1xx|http_2xx",
40 "serverTimeout": 1800,
41 "redirectPort": 80
42 }
43 ],
44 "marker": "listener-005A",
45 "nextMarker": "listener-0322",
46 "isTruncated": true,
47 "maxKeys": 2
48}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_http_listener.py
查询HTTPS监听器
查询指定LoadBalancer下所有HTTPS监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定。
使用以下代码可以查询HTTPS监听器
函数声明
1 def describe_https_listener(self, blb_id, listener_port=None,
2 marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeHTTPSListeners查询HTTPS监听器
返回值
操作成功:
1{
2 "listenerList": [
3 {
4 "listenerPort": 90,
5 "backendPort": 90,
6 "scheduler": "LeastConnection",
7 "healthCheckTimeoutInSecond": 4,
8 "healthCheckInterval": 5,
9 "unhealthyThreshold": 2,
10 "healthyThreshold": 3,
11 "keepSession": false,
12 "keepSessionType": null,
13 "keepSessionDuration": null,
14 "keepSessionCookieName": null,
15 "xForwardFor": false,
16 "healthCheckType": "HTTP",
17 "healthCheckPort": 90,
18 "healthCheckURI": "/",
19 "healthCheckNormalStatus": "http_2xx|http_3xx",
20 "serverTimeout": 30,
21 "certIds": ["cert-zfj2ey2z4kmm"]
22 },
23 {
24 "listenerPort": 95,
25 "backendPort": 95,
26 "scheduler": "LeastConnection",
27 "healthCheckTimeoutInSecond": 4,
28 "healthCheckInterval": 5,
29 "unhealthyThreshold": 2,
30 "healthyThreshold": 3,
31 "keepSession": false,
32 "keepSessionType": null,
33 "keepSessionDuration": null,
34 "keepSessionCookieName": null,
35 "xForwardFor": false,
36 "healthCheckType": "HTTP",
37 "healthCheckPort": 95,
38 "healthCheckURI": "/",
39 "healthCheckNormalStatus": "http_1xx|http_2xx",
40 "serverTimeout": 1800,
41 "certIds": ["cert-zfj2ey2z4kmm"]
42 }
43 ],
44 "marker": "listener-005A",
45 "nextMarker": "listener-0322",
46 "isTruncated": true,
47 "maxKeys": 2
48}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_https_listener.py
查询SSL监听器
查询指定LoadBalancer下所有SSL监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定。
使用以下代码可以查询SSL监听器
函数声明
1 def describe_ssl_listener(self, blb_id, listener_port=None,
2 marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeSSLListeners查询SSL监听器
返回值
操作成功:
1{
2 "listenerList": [
3 {
4 "listenerPort": 80,
5 "backendPort": 80,
6 "scheduler": "RoundRobin",
7 "healthCheckTimeoutInSecond": 3,
8 "healthCheckInterval": 3,
9 "unhealthyThreshold": 3,
10 "healthyThreshold": 3
11 },
12 {
13 "listenerPort": 88,
14 "backendPort": 88,
15 "scheduler": "RoundRobin",
16 "healthCheckTimeoutInSecond": 2,
17 "healthCheckInterval": 4,
18 "unhealthyThreshold": 3,
19 "healthyThreshold": 3
20 }
21 ],
22 "marker": "listener-0050",
23 "nextMarker": null,
24 "isTruncated": false,
25 "maxKeys": 2
26}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_ssl_listener.py
查询所有监听
查询指定LoadBalancer下所有监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定。
使用以下代码可以查询所有监听
函数声明
1 def describe_all_listeners(self, blb_id, listener_port=None,
2 marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeAllListeners查询所有监听
返回值
操作成功:
1{
2 "nextMarker": "",
3 "marker": "",
4 "maxKeys": 1,
5 "isTruncated": true,
6 "listenerList": [
7 {
8 "listenerPort": 53,
9 "backendPort": 53,
10 "scheduler": "RoundRobin",
11 "healthCheckTimeoutInSecond": 3,
12 "healthCheckInterval": 3,
13 "unhealthyThreshold": 3,
14 "healthyThreshold": 3,
15 "getBlbIp": false,
16 "listenerType": "UDP",
17 "udpSessionTimeout": 90,
18 "healthCheckString": "\\00\\01\\01\\00\\00\\01\\00\\00\\00\\00\\00\\00\\05baidu\\03com\\00\\00\\01\\00\\01",
19 "healthCheckType": "UDP"
20 },
21 {
22 "listenerPort": 82,
23 "backendPort": 80,
24 "scheduler": "RoundRobin",
25 "healthCheckTimeoutInSecond": 3,
26 "healthCheckInterval": 3,
27 "unhealthyThreshold": 3,
28 "healthyThreshold": 3,
29 "getBlbIp": false,
30 "listenerType": "TCP",
31 "tcpSessionTimeout": 900
32 },
33 {
34 "listenerPort": 87,
35 "backendPort": 80,
36 "scheduler": "RoundRobin",
37 "healthCheckTimeoutInSecond": 3,
38 "healthCheckInterval": 3,
39 "unhealthyThreshold": 3,
40 "healthyThreshold": 3,
41 "getBlbIp": false,
42 "listenerType": "HTTP",
43 "keepSession": false,
44 "xForwardFor": true,
45 "healthCheckType": "HTTP",
46 "healthCheckPort": 80,
47 "healthCheckURI": "/",
48 "healthCheckNormalStatus": "http_2xx|http_3xx",
49 "healthCheckHost": "",
50 "serverTimeout": 30,
51 "redirectPort": 0
52 },
53 {
54 "listenerPort": 443,
55 "backendPort": 80,
56 "scheduler": "RoundRobin",
57 "healthCheckTimeoutInSecond": 3,
58 "healthCheckInterval": 3,
59 "unhealthyThreshold": 3,
60 "healthyThreshold": 3,
61 "getBlbIp": false,
62 "listenerType": "HTTPS",
63 "keepSession": false,
64 "xForwardFor": true,
65 "healthCheckType": "HTTP",
66 "healthCheckPort": 80,
67 "healthCheckURI": "/",
68 "healthCheckNormalStatus": "http_2xx|http_3xx",
69 "healthCheckHost": "",
70 "serverTimeout": 30,
71 "certIds": [
72 "cert-gs8bktrm7drp"
73 ],
74 "dualAuth": false,
75 "encryptionType": "tls_cipher_policy_1_2_secure",
76 "encryptionProtocols": [
77 "tlsv12"
78 ],
79 "appliedCiphers": "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA"
80 },
81 {
82 "listenerPort": 446,
83 "backendPort": 80,
84 "scheduler": "RoundRobin",
85 "healthCheckTimeoutInSecond": 3,
86 "healthCheckInterval": 3,
87 "unhealthyThreshold": 3,
88 "healthyThreshold": 3,
89 "getBlbIp": false,
90 "listenerType": "SSL",
91 "certIds": [
92 "cert-gs8bktrm7drp"
93 ],
94 "dualAuth": true,
95 "clientCertIds": [
96 "cert-0x037gwe4fmg"
97 ],
98 "encryptionType": "tls_cipher_policy_default",
99 "encryptionProtocols": [
100 "tlsv10",
101 "tlsv11",
102 "tlsv12"
103 ],
104 "appliedCiphers": "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:AES128-GCM-SHA256:AES256-SHA:AES128-SHA:AES256-GCM-SHA384:AES256-SHA256:AES128-SHA256:DES-CBC3-SHA"
105 }
106 ]
107}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_all_listeners.py
释放监听器
释放指定LoadBalancer下的监听器,监听器通过监听端口来指定,支持批量释放。
使用以下代码可以释放监听器
函数声明
1 def delete_listeners(self, blb_id, portList, client_token=None, config=None)
参数含义 请参考OpenAPI文档:DeleteListeners释放监听器
返回值 操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_delete_listeners.py
新增后端服务器实例
为指定LoadBalancer添加后端服务器,支持批量添加。
使用以下代码可以新增后端服务器实例
函数声明
1 def add_backend_servers(self, blb_id, backend_server_list,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:添加后端服务器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_add_backend_servers.py
修改后端服务器实例
更新指定LoadBalancer下的后端服务器权重,支持批量修改。
使用以下代码可以修改后端服务器实例
函数声明
1 def update_backend_servers(self, blb_id, backend_server_list,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:更新后端服务器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_backend_servers.py
查询后端服务器实例健康状态
查询指定LoadBalancer下的指定端口的后端服务器列表的健康状态。
使用以下代码可以查询后端服务器实例健康状态
函数声明
1 def describe_health_status(self, blb_id, listener_port,
2 marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:查询后端服务器健康状态
返回值
操作成功:
1{
2 "backendServerList": [
3 {
4 "instanceId": "i-YfAibl4A",
5 "weight": 50,
6 "status": "Alive"
7 }
8 ],
9 "type": "TCP",
10 "listenerPort": 88,
11 "backendPort": 88,
12 "marker": "rs-0A6BE9BB",
13 "nextMarker": null,
14 "isTruncated": false,
15 "maxKeys": 1000
16}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_health_status.py
查询后端服务器实例
查询指定LoadBalancer下的后端服务器列表。
使用以下代码可以查询后端服务器实例
函数声明
1 def describe_backend_servers(self, blb_id, marker=None,
2 max_keys=None, config=None)
参数含义
请参考OpenAPI文档:查询后端服务器列表
返回值
操作成功:
1{
2 "backendServerList": [
3 {
4 "instanceId": "i-YfAibl4A",
5 "weight": 50,
6 }
7 ],
8 "marker": "rs-0A6BE9BB",
9 "nextMarker": null,
10 "isTruncated": false,
11 "maxKeys": 1000
12}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_backend_servers.py
移除后端服务器实例
释放指定LoadBalancer下的后端服务器,后端服务器通过其标识符指定
使用以下代码可以移除后端服务器实例
函数声明
1 def remove_backend_servers(self, blb_id, backend_server_list,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:释放后端服务器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_remove_backend_servers.py
绑定普通安全组
为指定LoadBalancer绑定普通安全组
使用以下代码可以绑定普通安全组
函数声明
1def bind_security_groups(self, blb_id, enterprisesecuritygroupids,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:BindSecurityGroups绑定普通安全组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_bind_security_groups.py
解绑普通安全组
为指定LoadBalancer解绑普通安全组
使用以下代码可以解绑普通安全组
函数声明
1def unbind_security_groups(self, blb_id, securitygroupids,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:UnbindSecurityGroups解绑普通安全组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_unbind_security_groups.py
查询BLB实例普通安全组列表
为指定LoadBalancer查询普通安全组
使用以下代码可以查询普通安全组
函数声明
1def describe_security_groups(self, blb_id,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:DescribeSecurityGroups查询BLB实例普通安全组列表
返回值
操作成功:
1{
2 "blbSecurityGroups": [
3 {
4 "securityGroupDesc": "",
5 "securityGroupId": "g-4NxWoxeq",
6 "securityGroupName": "securitygroup-name",
7 "vpcName":"vpc-name",
8 "securityGroupRules": [
9 {
10 "destGroupId": "",
11 "destIp": "all",
12 "direction": "egress",
13 "ethertype": "IPv4",
14 "portRange": "1-65535",
15 "protocol": "all",
16 "securityGroupRuleId": "r-gkv8yupumvx2"
17 }
18 ]
19 }
20 ]
21}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_security_groups.py
绑定企业安全组
为指定LoadBalancer绑定企业安全组
使用以下代码可以绑定企业安全组
函数声明
1def bind_enterprise_security_groups(self, blb_id, enterprisesecuritygroupids,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:BindEnterpriseSecurityGroups绑定企业安全组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_bind_enterprise_security_groups.py.py
解绑企业安全组
为指定LoadBalancer解绑企业安全组
使用以下代码可以解绑企业安全组
函数声明
1def unbind_enterprise_security_groups(self, blb_id, enterprisesecuritygroupids,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:UnbindEnterpriseSecurityGroups解绑企业安全组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_unbind_enterprise_security_groups.py
查询BLB实例企业安全组列表
为指定LoadBalancer查询企业安全组
使用以下代码可以查询企业安全组
函数声明
1def describe_enterprise_security_groups(self, blb_id,
2 client_token=None, config=None)
参数含义
请参考OpenAPI文档:DescribeEnterpriseSecurityGroups查询BLB实例企业安全组列表
返回值
操作成功:
1{
2 "enterpriseSecurityGroups": [{
3 "enterpriseSecurityGroupId": "esg-g8z4qfj0m0bu",
4 "enterpriseSecurityGroupName": "test0627",
5 "enterpriseSecurityGroupDesc": "",
6 "enterpriseSecurityGroupRules": [{
7 "remark": "全部协议",
8 "direction": "egress",
9 "action": "allow",
10 "priority": 1000,
11 "ethertype": "IPv6",
12 "portRange": "",
13 "sourceIp": "",
14 "destIp": "all",
15 "enterpriseSecurityGroupRuleId": "esgr-9tzd4yijcwqu",
16 "protocol": "all"
17 },
18 {
19 "remark": "",
20 "direction": "egress",
21 "action": "allow",
22 "priority": 1000,
23 "ethertype": "IPv4",
24 "portRange": "",
25 "sourceIp": "",
26 "destIp": "all",
27 "enterpriseSecurityGroupRuleId": "esgr-9je09z6bd9wv",
28 "protocol": "tcp"
29 },
30 {
31 "remark": "",
32 "direction": "ingress",
33 "action": "allow",
34 "priority": 1000,
35 "ethertype": "IPv4",
36 "portRange": "2",
37 "sourceIp": "all",
38 "destIp": "",
39 "enterpriseSecurityGroupRuleId": "esgr-jcej4juqbh49",
40 "protocol": "tcp"
41 }
42 ]}
43}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例