获取负载均衡七层监听器详细信息

最近更新时间:2018-05-29 16:44:04

功能描述

DescribeBmForwardListenerInfo 提供了查找绑定了某主机或者有某转发域名黑石负载均衡七层监听器功能。

接口请求域名:bmlb.api.qcloud.com

请求

请求示例

GET https://bmlb.api.qcloud.com/v2/index.php?Action=DescribeBmForwardListenerInfo
    &<公共请求参数>
    &loadBalancerId=<负载均衡实例ID>
    &searchKey=<模糊查询的键值>
    &ifGetRsInfo=<是否获取转发规则下的主机信息>

请求参数

以下请求参数列表仅列出了接口请求参数,正式调用时需要加上公共请求参数,见公共请求参数页面。其中,此接口的Action字段为 DescribeBmForwardListenerInfo。

参数名称 必选 类型 描述
loadBalancerId String 负载均衡实例ID,可通过接口DescribeBmLoadBalancers查询。
searchKey String 查找的键值,可用于模糊查找有该转发域名的监听器。
instanceIds.n Array 主机ID或虚机IP列表,可用于获取绑定了该主机的监听器。
ifGetRsInfo Int 是否获取转发规则下的主机信息。默认为0,不获取。

响应

响应示例

{
    "code": 0,
    "message": "",
    "codeDesc": "Success",
    "listenerSet": [
        {
            "listenerId": "lbl-abcdefgh",
            "listenerName": "test-http",
            "protocol": "http",
            "loadBalancerPort": 80,
            "bandwidth": 0,
            "listenerType": "L7Listener",
            "SSLMode": 0,
            "certId": "",
            "certCaId": "",
            "status": 1,
            "addTimestamp": "2017-03-09 19:34:45",
            "ruleSet": [
                {
                    "domain": "www.a.com",
                    "domainId": "dm-abcdefgh",
                    "status": 1,
                    "addTimestamp": "2017-04-25 21:03:40",
                    "locations": [
                        {
                            "url": "/",
                            "locationId": "loc-abcdefgh",
                            "sessionExpire": 0,
                            "healthSwitch": 1,
                            "httpCheckPath": "/",
                            "intervalTime": 30,
                            "healthNum": 3,
                            "unhealthNum": 5,
                            "httpCode": 7,
                            "balanceMode": "wrr",
                            "status": 1,
                            "addTimestamp": "2017-04-25 21:03:40",
                            "rsList": [
                                {
                                    "instanceId": "cpm-abcdefgh",
                                    "alias": "xxx",
                                    "lanIp": "1.1.1.1",
                                    "rsPort": 80,
                                    "weight": 10,
                                    "status": "Dead"
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ],
    "totalCount": 1
}

响应参数

参数名称 类型 描述
code Int 错误码。0表示成功,其他值表示失败。详见错误码页面的公共错误码
message String 错误信息描述,与接口相关。
codeDesc String 返回码信息描述。
listenerSet Array 返回的七层监听器列表。

listenerSet每一个子项目包含字段如下

参数名称 类型 描述
listenerId String 七层监听器实例ID。
listenerName String 七层监听器名称。
protocol String 七层监听器协议类型,可选值:http,https。
loadBalancerPort Int 七层监听器的监听端口。
bandwidth Int 计费模式为按固定带宽方式时监听器的限速值,单位:Mbps。
listenerType String 监听器的类别:L4Listener(四层监听器),L7Listener(七层监听器)。
SSLMode Int 七层监听器的认证方式:0(不认证,用于http),1(单向认证,用于https),2(双向认证,用于https)。
certId String 七层监听器关联的服务端证书ID。
certCaId String 七层监听器关联的客户端证书ID。
status Int 监听器当前状态(0代表创建中,1代表正常运行,2代表创建失败,3代表删除中,4代表删除失败)。
addTimestamp String 创建时间戳。
ruleSet Array 返回的转发规则列表。

ruleSet每一个子项目包含字段如下

参数名称 类型 描述
domain String 转发域名。
domainId String 转发域名实例ID。
status Int 转发域名当前状态(0代表创建中,1代表正常运行,2代表创建失败,3代表删除中,4代表删除失败)。
addTimestamp String 创建时间戳。
locations Array 该转发域名下面的转发路径列表。

locations每一个子项目包含字段如下

参数名称 类型 描述
url String 转发路径。
locationId String 转发路径实例ID。
sessionExpire Int 会话保持时间。
healthSwitch Int 是否开启健康检查。
httpCheckPath String 健康检查检查路径。
httpCheckDomain String 健康检查检查域名。
intervalTime Int 健康检查检查间隔时间。
healthNum Int 健康检查健康阈值。
unhealthNum Int 健康检查不健康阈值。
httpCode Int 健康检查中认为健康的HTTP返回码的组合。
balanceMode String 均衡方式。
status Int 转发路径当前状态(0代表创建中,1代表正常运行,2代表创建失败,3代表删除中,4代表删除失败)。
addTimestamp String 创建时间戳。
rsList Array 该转发路径所绑定的主机列表。

rsList每一个子项目包含字段如下

参数名称 类型 描述
bindType Int 绑定类别(0代表黑石物理机,1代表虚机IP)。
rsPort Int 主机端口。
weight Int 权重。
status String 当前绑定关系的健康检查状态(Dead代表不健康,Alive代表健康)。

当bindType为0时包含以下字段

参数名称 类型 描述
instanceId String 黑石物理机的主机ID。
alias String 黑石物理机的别名。
lanIp String 黑石物理机的内网IP。

当bindType为1时包含以下字段

参数名称 类型 描述
lanIp String 虚机IP。

错误码

错误代码 英文提示 错误描述
9003 InvalidParameter 参数错误
9006 InternalError.CCDBAbnormal CCDB 服务异常
11041 InvalidParameter.CCDBLBNotExist CCDB中不存在该负载均衡记录信息

实际案例

输入

GET https://bmlb.api.qcloud.com/v2/index.php?Action=DescribeBmForwardListenerInfo
    &SecretId=AKIDlfdHxN0ntSVt4KPH0xXWnGl21UUFNoO5
    &Nonce=24763
    &Timestamp=1507714922
    &Region=bj
    &loadBalancerId=lb-abcdefgh
    &searchKey=a
    &ifGetRsInfo=1
    &Signature=AySJsE6Zq3knXwPSzxlYUl%2FrM90%3D

输出

{
    "code": 0,
    "message": "",
    "codeDesc": "Success",
    "listenerSet": [
        {
            "listenerId": "lbl-abcdefgh",
            "listenerName": "test-http",
            "protocol": "http",
            "loadBalancerPort": 80,
            "bandwidth": 0,
            "listenerType": "L7Listener",
            "SSLMode": 0,
            "certId": "",
            "certCaId": "",
            "status": 1,
            "addTimestamp": "2017-03-09 19:34:45",
            "ruleSet": [
                {
                    "domain": "www.a.com",
                    "domainId": "dm-abcdefgh",
                    "status": 1,
                    "addTimestamp": "2017-04-25 21:03:40",
                    "locations": [
                        {
                            "url": "/",
                            "locationId": "loc-abcdefgh",
                            "sessionExpire": 0,
                            "healthSwitch": 1,
                            "httpCheckPath": "/",
                            "intervalTime": 30,
                            "healthNum": 3,
                            "unhealthNum": 5,
                            "httpCode": 7,
                            "balanceMode": "wrr",
                            "status": 1,
                            "addTimestamp": "2017-04-25 21:03:40",
                            "rsList": [
                                {
                                    "instanceId": "cpm-abcdefgh",
                                    "alias": "xxx",
                                    "lanIp": "1.1.1.1",
                                    "rsPort": 80,
                                    "weight": 10,
                                    "status": "Dead"
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ],
    "totalCount": 1
}