应用型blb实例
应用型blb实例针对用户复杂应用部署架构,特别是大型网站架构。使用基于策略的网络管理框架构建,实现业务驱动的流量负载均衡。
self即app_blb_client;具体各个参数含义请参考blb官方文档,api参考下的应用型blb接口
创建应用型blb实例
创建一个LoadBalancer,返回分配的服务地址及实例ID。付费方式为后付费。需要实名认证,若未通过实名认证可以前往百度智能云官网控制台中的安全认证下的实名认证中进行认证。
使用以下代码可以创建应用型blb实例:
函数声明
def create_app_loadbalancer(self, vpc_id, subnet_id, name=None, desc=None, client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateLoadBalancer创建实例
返回值
操作成功:
{
blb_id:'lb-1a22b118',
name:'BLB-beijing-a60ce0c4',
desc:'',
address:'192.168.0.7'
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_loadbalancer.py
更新应用型blb实例
更新一个LoadBalancer的配置信息。
使用以下代码可以更新应用型blb实例:
函数声明
def update_app_loadbalancer(self, blb_id, name=None, desc=None, client_token=None, config=None)
参数含义
请参考OpenAPI文档:UpdateLoadBalancer更新实例
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_loadbalancer.py
查询应用型blb实例列表
查询用户账户下所有LoadBalancer的信息。支持按LoadBalancer的id、name、address进行查询,匹配规则支持部分包含(不支持正则)。支持查找绑定指定BCC的LoadBalancer,通过bccId参数指定。返回结果是多重查询条件的交集。结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定
使用以下代码可以查询应用型blb实例列表:
函数声明
def describe_app_loadbalancers(self, address=None, name=None, blb_id=None, bcc_id=None, marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeLoadBalancers查询已有的BLB实例
返回值
操作成功:
{
blb_list:[{
tags:None,
blb_id:'lb-cf2dc4e7',
status:'available',
name:'testappblb',
desc:'appjustForTest',
address:'192.168.0.4',
vpc_id:'vpc-sr84haq14tcb',
subnet_id:'sbn-kg7mj5wt4yw9',
allow_delete:True,
payment_timing:'Postpaid'},
]
marker:'blb-05FA0CED',
next_marker:None,
is_truncated:False,
max_keys:1000
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_loadbalancers.py
查询应用型blb实例详情
按id查询用户账户下所有LoadBalancer的详细信息。包含LoadBalancer所有的监听器端口信息
使用以下代码可以查询应用型blb实例详情:
函数声明
def describe_app_loadbalancer_detail(self, blb_id, config=None)
参数含义
请参考OpenAPI文档:DescribeLoadBalancerDetail查询BLB实例详情
返回值
操作成功:
{
tags:None,
blb_id:'lb-cf2dc4e7',
status:'available',
name:'testappblb',
desc:'appjustForTest',
address:'192.168.0.4',
cidr:'192.168.0.0/16',
vpc_name:'test',
subnet_name:'test',
subnet_cider:'192.168.0.0/24',
create_time:'2023-12-11T14:14:36Z',
ipv6:'',
allow_delete:True,
listener:[],
support_acl:True,
payment_timing:'Postpaid',
vpc_id:'vpc-sr84haq14tcb'
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_loadbalancer_detail.py
删除应用型blb实例
释放指定LoadBalancer,被释放的LoadBalancer无法找回
使用以下代码可以删除应用型blb实例:
函数声明
def delete_app_loadbalancer(self, blb_id, client_token=None, config=None)
参数含义
请参考OpenAPI文档:DeleteLoadBalancer释放BLB实例
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_delete_app_loadbalancer.py
创建TCP监听器
在指定LoadBalancer下,创建一个基于TCP协议的应用型blb监听器,监听一个前端端口,将发往该端口的所有TCP流量,根据策略进行转发。
使用以下代码可以创建TCP监听器
函数声明
def create_app_tcp_listener(self, blb_id, listener_port,
scheduler, client_token=None,
config=None)
参数含义
请参考OpenAPI文档:CreateAppTCPListener创建TCP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_tcp_listener.py
创建UDP监听器
在指定LoadBalancer下,创建一个基于UDP协议的应用型监听器,监听一个前端端口,将发往该端口的所有UDP流量,根据策略进行转发。
使用以下代码可以创建UDP监听器
函数声明
def create_app_udp_listener(self, blb_id, listener_port,
scheduler, client_token=None,
config=None)
参数含义
请参考OpenAPI文档:CreateAppUDPListener创建UDP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_udp_listener.py
创建HTTP监听器
在指定LoadBalancer下,创建一个基于HTTP协议的应用型监听器,监听一个前端端口,将发往该端口的所有HTTP请求,根据策略转发到后端服务器监听的后端端口上。
使用以下代码可以创建HTTP监听器
函数声明
def create_app_http_listener(self, blb_id, listener_port,
scheduler, keep_session=None,
keep_session_type=None,
keep_session_timeout=None,
keep_session_cookie_name=None,
x_forwarded_for=None,
server_timeout=None,
redirect_port=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:CreateAppHTTPListener创建HTTP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_http_listener.py
创建HTTPS监听器
更新指定LoadBalancer下的HTTPS监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以创建HTTPS监听器
函数声明
def create_app_https_listener(self, blb_id, listener_port,
scheduler, cert_ids,
keep_session=None,
keep_session_type=None,
keep_session_timeout=None,
keep_session_cookie_name=None,
x_forwarded_for=None, server_timeout=None,
ie6_compatible=None, encryption_type=None,
encryption_protocols=None,
dual_auth=None, client_certIds=None,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateAppHTTPSListener创建HTTPS监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_https_listener.py
创建SSL监听器
在指定LoadBalancer下,创建一个基于SSL协议的应用型监听器,监听一个前端端口,将发往该端口的所有SSL流量,根据策略进行转发。
使用以下代码可以创建SSL监听器
函数声明
def create_app_ssl_listener(self, blb_id, listener_port,
scheduler, cert_ids,
ie6_compatible=None,
encryption_type=None,
encryption_protocols=None,
dual_auth=None, client_certIds=None,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:CreateAppSSLListener创建SSL监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_ssl_listener.py
更新TCP监听器
更新指定LoadBalancer下的TCP监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新TCP监听器
函数声明
def update_app_tcp_listener(self, blb_id, listener_port,
scheduler=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:UpdateAppTCPListener更新TCP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_tcp_listener.py
更新UDP监听器
更新指定LoadBalancer下的UDP监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新UDP监听器
函数声明
def update_app_udp_listener(self, blb_id, listener_port,
scheduler=None, client_token=None,
config=None)
参数含义
请参考OpenAPI文档:UpdateAppUDPListener更新UDP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_udp_listener.py
更新HTTP监听器
更新指定LoadBalancer下的HTTP监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新HTTP监听器
函数声明
def update_app_http_listener(self, blb_id, listener_port,
scheduler=None, keep_session=None,
keep_session_type=None,
keep_session_timeout=None,
keep_session_cookie_name=None,
x_forwarded_for=None,
server_timeout=None,
redirect_port=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:UpdateAppHTTPListener更新HTTP监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_http_listener.py
更新HTTPS监听器
更新指定LoadBalancer下的HTTPS监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新HTTPS监听器
函数声明
def update_app_https_listener(self, blb_id, listener_port,
scheduler=None,
keep_session=None,
keep_session_type=None,
keep_session_timeout=None,
keep_session_cookie_name=None,
x_forwarded_for=None,
server_timeout=None,
cert_ids=None,
ie6_compatible=None,
encryption_type=None,
encryption_protocols=None,
dual_auth=None,
client_certIds=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:UpdateAppHTTPSListener更新HTTPS监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_https_listener.py
更新应用型SSL监听器
更新指定LoadBalancer下的SSL监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新应用型SSL监听器
函数声明
def update_app_ssl_listener(self, blb_id, listener_port,
scheduler=None,
cert_ids=None,
ie6_compatible=None,
encryption_type=None,
encryption_protocols=None,
dual_auth=None,
client_certIds=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:UpdateAppSSLListener更新应用型SSL监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_ssl_listener.py
查询应用型TCP监听器
查询指定LoadBalancer下所有TCP监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过max_keys参数指定。
使用以下代码可以查询应用型TCP监听器
函数声明
def describe_app_tcp_listener(self, blb_id, listener_port=None,
marker=None, max_keys=None,
config=None)
参数含义
请参考OpenAPI文档:DescribeAppTCPListeners查询应用型TCP监听器
返回值
操作成功:
{
"listenerList": [
{
"listenerPort": 80,
"scheduler": "RoundRobin"
},
{
"listenerPort": 88,
"scheduler": "RoundRobin"
}
],
"marker": "listener-0050",
"nextMarker": null,
"isTruncated": false,
"maxKeys": 2
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_tcp_listener.py
查询UDP监听器
查询指定LoadBalancer下所有UDP监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过max_keys参数指定。
使用以下代码可以查询UDP监听器
函数声明
def describe_app_udp_listener(self, blb_id, listener_port=None,
marker=None, max_keys=None,
config=None)
参数含义
请参考OpenAPI文档:DescribeAppUDPListeners查询UDP监听器
返回值
操作成功:
{
"listenerList": [
{
"listenerPort": 80,
"scheduler": "RoundRobin",
"udpSessionTimeout":90
},
{
"listenerPort": 88,
"scheduler": "RoundRobin",
"udpSessionTimeout":90
}
],
"marker": "listener-0050",
"nextMarker": null,
"isTruncated": false,
"maxKeys": 2
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_udp_listener.py
查询HTTP监听器
查询指定LoadBalancer下所有HTTP监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过max_keys参数指定。
使用以下代码可以查询HTTP监听器
函数声明
def describe_app_http_listener(self, blb_id, listener_port=None,
marker=None, max_keys=None,
config=None)
参数含义
请参考OpenAPI文档:DescribeAppHTTPListeners查询HTTP监听器
返回值
操作成功:
{
"listenerList": [
{
"listenerPort": 90,
"backendPort": 90,
"scheduler": "LeastConnection",
"keepSession": false,
"keepSessionType": null,
"keepSessionTimeout": null,
"keepSessionCookieName": null,
"xForwardedFor": false,
"serverTimeout": 30,
"redirectPort": 80
},
{
"listenerPort": 95,
"backendPort": 95,
"scheduler": "LeastConnection",
"keepSession": false,
"keepSessionType": null,
"keepSessionTimeout": null,
"keepSessionCookieName": null,
"xForwardedFor": false,
"serverTimeout": 1800,
"redirectPort": 80
}
],
"marker": "listener-005A",
"nextMarker": null,
"isTruncated": false,
"maxKeys": 2
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_http_listener.py
查询HTTPS监听器
查询指定LoadBalancer下所有HTTPS监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过max_keys参数指定。
使用以下代码可以查询HTTPS监听器
函数声明
def describe_app_https_listener(self, blb_id, listener_port=None,
marker=None, max_keys=None,
config=None)
参数含义
请参考OpenAPI文档:DescribeAppHTTPSListeners查询HTTPS监听器
返回值
操作成功:
{
"listenerList": [
{
"listenerPort": 90,
"backendPort": 90,
"scheduler": "LeastConnection",
"keepSession": false,
"keepSessionType": null,
"keepSessionTimeout": null,
"keepSessionCookieName": null,
"xForwardedFor": false,
"serverTimeout": 30,
"certIds": ["cert-zfj2ey2z4kmm"]
},
{
"listenerPort": 95,
"backendPort": 95,
"scheduler": "LeastConnection",
"keepSession": false,
"keepSessionType": null,
"keepSessionTimeout": null,
"keepSessionCookieName": null,
"xForwardedFor": false,
"serverTimeout": 1800,
"certIds": ["cert-zfj2ey2z4kmm"]
}
],
"marker": "listener-005A",
"nextMarker": null,
"isTruncated": false,
"maxKeys": 2
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_https_listener.py
查询应用型SSL监听器
查询指定LoadBalancer下所有SSL监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过max_keys参数指定。
使用以下代码可以查询应用型SSL监听器
函数声明
def describe_app_ssl_listener(self, blb_id, listener_port=None,
marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeAppSSLListeners查询应用型SSL监听器
返回值
操作成功:
{
"listenerList": [
{
"listenerPort": 80,
"scheduler": "RoundRobin",
"certIds": ["cert-zfj2ey2z4kmm"]
},
{
"listenerPort": 88,
"scheduler": "RoundRobin",
"certIds": ["cert-zfj2ey2z4kmm"]
}
],
"marker": "listener-0050",
"nextMarker": null,
"isTruncated": false,
"maxKeys": 2
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_ssl_listener.py
查询所有监听
查询指定LoadBalancer下所有监听器的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过max_keys参数指定。
使用以下代码可以查询所有监听
函数声明
def describe_app_all_listener(self, blb_id, listener_port=None,
marker=None, max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeAppAllListeners查询所有监听
返回值
操作成功:
{
"nextMarker": "",
"marker": "",
"maxKeys": 1,
"isTruncated": true,
"listenerList": [
{
"listenerPort": 53,
"scheduler": "RoundRobin",
"listenerType": "UDP"
},
{
"listenerPort": 80,
"scheduler": "RoundRobin",
"listenerType": "HTTP",
"keepSession": false,
"xForwardFor": true,
"xForwardedProto": false,
"serverTimeout": 30,
"redirectPort": 0
},
{
"listenerPort": 81,
"scheduler": "RoundRobin",
"listenerType": "TCP",
"tcpSessionTimeout": 900
},
{
"listenerPort": 443,
"scheduler": "RoundRobin",
"listenerType": "SSL",
"certIds": [
"cert-gs8bktrm7drp"
],
"dualAuth": false,
"encryptionType": "tls_cipher_policy_ie",
"encryptionProtocols": [
"sslv3",
"tlsv10",
"tlsv11",
"tlsv12"
],
"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-ECDSA-RC4-SHA:ECDHE-ECDSA-DES-CBC3-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:ECDHE-RSA-RC4-SHA:ECDHE-RSA-DES-CBC3-SHA:RC4-SHA:AES128-GCM-SHA256:AES128-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:AES128-SHA256:DES-CBC3-SHA"
},
{
"listenerPort": 444,
"scheduler": "RoundRobin",
"listenerType": "HTTPS",
"keepSession": false,
"xForwardFor": false,
"xForwardedProto": false,
"serverTimeout": 30,
"certIds": [
"cert-gs8bktrm7drp"
],
"dualAuth": false,
"encryptionType": "tls_cipher_policy_1_1",
"encryptionProtocols": [
"tlsv11",
"tlsv12"
],
"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"
}
]
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_all_listener.py
释放监听器
释放指定LoadBalancer下的监听器,监听器通过监听端口来指定,支持批量释放。
使用以下代码可以释放监听器
函数声明
def delete_app_listeners(self, blb_id, portList,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:DeleteAppListeners释放监听器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_delete_app_listener.py
创建策略
在指定应用型BLB监听器端口下创建策略。
使用以下代码可以创建策略
函数声明
def create_policys(self, blb_id, listener_port,
app_policy_vos, client_token=None,
config=None)
参数含义
请参考OpenAPI文档:CreatePolicys创建策略
返回值
操作成功:
{
"listenerPort": 98,
"type": "HTTP",
"appPolicyVos": [
{
"appServerGroupId": "sg-db3975dc",
"backendPort": 83,
"priority": 100,
"desc": "aa",
"ruleList": [
{
"key": "*",
"value": "*"
}
]
}
]
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_policys.py
查询对应BLB端口下策略信息
查询指定LoadBalancer下所有服务器组的信息,支持按监听器端口进行匹配查询,结果支持marker分页,分页大小默认为1000,可通过max_keys参数指定。
使用以下代码可以查询对应BLB端口下策略信息
函数声明
def describe_policys(self, blb_id, listener_port,
marker=None, max_keys=None,
config=None)
参数含义
请参考OpenAPI文档:DescribePolicys查询对应BLB端口下策略信息
返回值
操作成功:
{
"marker": "rs-012310",
"isTruncated": true,
"maxKeys": 1000,
"nextMarker": "rs-013214",
"policyList":[
{
"id":"policy_id",
"appServerGroupId":”sg_id“,
"appServerGroupName":”sg_name“,
"frontendPort":80,
"type":"TCP",
"backendPort":98,
"portType":"TCP",
"priority":100,
"desc":"aa",
"groupType":"Server",
"ruleList": [
{
"key": "host",
"value": "*.baidu.com"
}
]
}
]
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_policys.py
批量删除策略
批量删除对应BLB端口下的策略。
使用以下代码可以批量删除策略
函数声明
def delete_policys(self, blb_id, listener_port,
policys_list,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:DeletePolicys批量删除策略
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_delete_policys.py
创建应用型blb服务器组
在指定应用型BLB下,创建一个服务器组,用来绑定后端服务器,以及为监听器开放相应的端口。
使用以下代码可以创建应用型blb服务器组
函数声明
def create_app_server_group(self, blb_id,
name=None,
desc=None,
backend_server_list=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:CreateaAppServerGroup创建应用型服务器组
返回值
操作成功:
{
"status":"available",
"name":"exmaple",
"id":"sg-b71fc32a",
"desc":"example"
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_server_group.py
更新应用型blb服务器组
更新指定LoadBalancer下监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新应用型blb服务器组
函数声明
def update_app_server_group(self, blb_id, sg_id,
name=None,
desc=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:UpdateAppServerGroup更新服务器组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_server_group.py
查询应用型blb服务器组
查询指定LoadBalancer下所有服务器组的信息,结果支持marker分页,分页大小默认为1000,可通过maxKeys参数指定。
使用以下代码可以查询应用型blb服务器组
函数声明
def describe_app_server_group(self, blb_id,
name=None,
exactly_match=None,
marker=None,
max_keys=None, config=None)
参数含义
请参考OpenAPI文档:DescribeAppServerGroup查询服务器组
返回值
操作成功:
{
"max_keys":1000,
"next_marker":None,
"app_server_group_list":[
{
"status":"available",
"desc":"example2",
"id":"sg-0a950a17",
"name":"exmaple2",
"port_list":[
]
}
],
"marker":"60742",
"is_truncated":false
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_server_group.py
删除应用型blb服务器组
删除服务器组,通过服务器组id指定。
使用以下代码可以删除应用型blb服务器组
函数声明
def delete_app_server_group(self, blb_id, sg_id,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:DeleteAppServerGroup删除服务器组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_delete_app_server_group.py
创建应用型blb服务器组端口
在指定应用型BLB下,创建一个服务器组后端端口,将发往该端口的所有流量按权重轮询分发到其绑定的对应服务器列表中的服务器。
使用以下代码可以创建应用型blb服务器组端口
函数声明
def create_app_server_group_port(self, blb_id, sg_id,
port, protocol_type,
health_check=None,
health_check_port=None,
health_check_urlpath=None,
health_check_timeout_insecond=None,
health_check_interval_insecond=None,
health_check_down_retry=None,
health_check_up_retry=None,
health_check_normal_status=None,
udp_health_check_string=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:CreateAppServerGroupPort创建应用型服务器组端口
返回值
操作成功:
{
"status":"available",
"id":"port-ba811b4f"
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_server_group_port.py
更新应用型blb服务器组端口
根据id更新服务器组端口。
使用以下代码可以更新应用型blb服务器组端口
函数声明
def update_app_server_group_port(self, blb_id, sg_id, port_id,
health_check=None,
health_check_port=None,
health_check_urlpath=None,
health_check_timeout_insecond=None,
health_check_interval_insecond=None,
health_check_down_retry=None,
health_check_up_retry=None,
health_check_normal_status=None,
udp_health_check_string=None,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:UpdateAppServerGroupPort更新服务器组端口
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_server_group_port.py
删除应用型blb服务器组端口
删除服务器组端口,通过服务器组id指定。
使用以下代码可以删除应用型blb服务器组端口
函数声明
def delete_app_server_group_port(self, blb_id, sg_id,
port_list,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:DeleteAppServerGroupPort删除服务器组端口
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_delete_app_server_group_port.py
添加应用型blb后端服务器
在指定应用型BLB和服务器组下绑定后端服务器RS。
使用以下代码可以添加应用型blb后端服务器
函数声明
def create_app_blb_rs(self, blb_id, sg_id,
backend_server_list,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:添加应用型BLB后端RS
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_create_app_blb_rs.py
更新应用型blb后端服务器
更新指定LoadBalancer下的TCP监听器参数,所有请求参数中指定的域都会被更新,未指定的域保持不变,监听器通过端口指定。
使用以下代码可以更新应用型blb后端服务器
函数声明
def update_app_blb_rs(self, blb_id, sg_id,
backend_server_list,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:更新服务器组下挂载的RS权重
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_update_app_blb_rs.py
删除应用型blb后端服务器
删除服务器组,通过服务器组id指定。
使用以下代码可以删除应用型blb后端服务器
函数声明
def delete_app_blb_rs(self, blb_id, sg_id,
backend_server_list,
client_token=None,
config=None)
参数含义
请参考OpenAPI文档:删除应用型blb的后端服务器
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_delete_app_blb_rs.py
查询服务器组下的RS信息
查询指定LoadBalancer下的指定服务器组下的RS信息
使用以下代码可以查询服务器组下的RS信息
函数声明
def describe_app_blb_rs(self, blb_id, sg_id,
marker=None, max_keys=None,
config=None)
参数含义
请参考OpenAPI文档:查询服务器组下的RS列表信息
返回值
操作成功:
{
"marker": "rs-012310",
"isTruncated": false,
"maxKeys": 1000,
"nextMarker": "rs-013214",
"backendServerList": [
{
"instanceId": "BCC_UUID",
"privateIp": "192.168.0.1",
"weight": "WEIGHT",
"portList": [
{
"listenerPort": "LISTENER_PORT1",
"backendPort": "BACKEND_PORT1",
"portType": "HTTP",
“healthCheckPortType”: "HTTP",
"portId": "port_xxx",
"policyId": "policy_xxx",
"status": "Alive"
}
]
}
]
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_blb_rs.py
查询应用型blb挂载的后端服务器
查询服务器组下绑定的server。
使用以下代码可以查询应用型blb挂载的后端服务器
函数声明
def describe_rs_mount(self, blb_id, sg_id, config=None)
参数含义
请参考OpenAPI文档:查询服务器组下绑定的server
返回值
操作成功:
{
"backendServerList": [
{
"instanceId": "BCC_UUID",
"privateIp": "192.168.0.1",
"weight": "WEIGHT",
"portList": [
{
"listenerPort": "LISTENER_PORT1",
"backendPort": "BACKEND_PORT1",
"portType": "HTTP",
“healthCheckPortType”: "HTTP",
"portId": "port_xxx",
"policyId": "policy_xxx",
"status": "Alive"
}
]
}
]
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_rs_mount.py
查询应用型blb未挂载的后端服务器
查询服务器组下未绑定的RS。
使用以下代码可以查询应用型blb未挂载的后端服务器
函数声明
def describe_rs_unmount(self, blb_id, sg_id, config=None)
参数含义
请参考OpenAPI文档:查询服务器组下未绑定的RS
返回值
操作成功:
{
"backendServerList": [
{
"instanceId": "BCC_UUID",
"privateIp": null,
"weight": null,
"portList": []
}
]
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_rs_unmount.py
绑定普通安全组
为指定LoadBalancer绑定普通安全组
使用以下代码可以绑定普通安全组
函数声明
def bind_app_security_groups(self, blb_id, securitygroupids,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:BindSecurityGroups绑定普通安全组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_bind_app_security_groups.py
解绑普通安全组
为指定LoadBalancer解绑普通安全组
使用以下代码可以解绑普通安全组
函数声明
def unbind_app_security_groups(self, blb_id, securitygroupids,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:UnbindSecurityGroups解绑普通安全组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_unbind_app_security_groups.py
查询BLB实例普通安全组列表
为指定LoadBalancer查询普通安全组
使用以下代码可以查询普通安全组
函数声明
def describe_app_security_groups(self, blb_id,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:DescribeSecurityGroups查询BLB实例普通安全组列表
返回值
操作成功:
{
"blbSecurityGroups": [
{
"securityGroupDesc": "",
"securityGroupId": "g-4NxWoxeq",
"securityGroupName": "securitygroup-name",
"vpcName":"vpc-name",
"securityGroupRules": [
{
"destGroupId": "",
"destIp": "all",
"direction": "egress",
"ethertype": "IPv4",
"portRange": "1-65535",
"protocol": "all",
"securityGroupRuleId": "r-gkv8yupumvx2"
}
]
}
]
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_security_groups.py
绑定企业安全组
为指定LoadBalancer绑定企业安全组
使用以下代码可以绑定企业安全组
函数声明
def bind_app_enterprise_security_groups(self, blb_id, enterprisesecuritygroupids,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:BindEnterpriseSecurityGroups绑定企业安全组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_bind_app_enterprise_security_groups.py
解绑企业安全组
为指定LoadBalancer解绑企业安全组
使用以下代码可以解绑企业安全组 函数声明
def unbind_app_enterprise_security_groups(self, blb_id, enterprisesecuritygroupids,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:UnbindEnterpriseSecurityGroups解绑企业安全组
返回值
操作成功:
返回200
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_unbind_app_enterprise_security_groups.py
查询BLB实例企业安全组列表
为指定LoadBalancer查询企业安全组
使用以下代码可以查询企业安全组
函数声明
def describe_app_enterprise_security_groups(self, blb_id,
client_token=None, config=None)
参数含义
请参考OpenAPI文档:DescribeEnterpriseSecurityGroups查询BLB实例企业安全组列表
返回值
操作成功:
{
"enterpriseSecurityGroups": [{
"enterpriseSecurityGroupId": "esg-g8z4qfj0m0bu",
"enterpriseSecurityGroupName": "test0627",
"enterpriseSecurityGroupDesc": "",
"enterpriseSecurityGroupRules": [{
"remark": "全部协议",
"direction": "egress",
"action": "allow",
"priority": 1000,
"ethertype": "IPv6",
"portRange": "",
"sourceIp": "",
"destIp": "all",
"enterpriseSecurityGroupRuleId": "esgr-9tzd4yijcwqu",
"protocol": "all"
},
{
"remark": "",
"direction": "egress",
"action": "allow",
"priority": 1000,
"ethertype": "IPv4",
"portRange": "",
"sourceIp": "",
"destIp": "all",
"enterpriseSecurityGroupRuleId": "esgr-9je09z6bd9wv",
"protocol": "tcp"
},
{
"remark": "",
"direction": "ingress",
"action": "allow",
"priority": 1000,
"ethertype": "IPv4",
"portRange": "2",
"sourceIp": "all",
"destIp": "",
"enterpriseSecurityGroupRuleId": "esgr-jcej4juqbh49",
"protocol": "tcp"
}
]}
}
操作失败:
抛出异常,异常列表参考:异常列表
代码示例
具体代码示例参考:example_describe_app_enterprise_security_groups.py.py