tencent cloud

Feedback

Create CLB Listeners

Last updated: 2021-04-13 16:40:52

    API Description

    This API is used to create a CLB listener that provides the request forwarding rules, including parameters such as port, protocol, session persistence, and health check.

    Domain name for API calls: lb.api.qcloud.com

    The listener configuration rules are as follows:

    • A CLB port can only have one protocol in the same CLB instance.
    • Public network CLB listeners support HTTP, UDP, TCP, and HTTPS protocols, while private network CLB listeners only support UDP and TCP protocols.
    • Batch creation is not supported when creating HTTPS listeners.

    Request Parameters

    The list below contains only the API request parameters. Common parameters should be added when you call the API. For more information, see Common Request Parameters. The Action field for this API is CreateLoadBalancerListeners.

    Parameter Required Type Description
    loadBalancerId Yes String CLB instance ID, which can be queried via the DescribeLoadBalancers API.
    listeners.n.loadBalancerPort Yes Int Listening port of the CLB listener. Valid range: 1-65535. listeners is an array. You can create n listeners, and n is a subscript.
    listeners.n.instancePort Yes Int Listening port of CLB listener’s real server. Value range: 1-65535.
    listeners.n.protocol Yes Int Protocol type of the CLB listener. 1: HTTP; 2: TCP; 3: UDP; 4: HTTPS.
    Public network CLB listeners support HTTP, UDP, TCP and HTTPS protocols;
    Private network CLB listeners only support TCP and UDP protocols.
    listeners.n.listenerName No String Name of the CLB listener.
    listeners.n.sessionExpire No Int Session persistence duration of the CLB listener. Value range: 0 or 30-3600. Default value: 0.
    listeners.n.healthSwitch No Int Whether to enable the health check for CLB listeners. 1: enable; 0: disable. Default value: 1.
    listeners.n.timeOut No Int Response timeout of health check for the CLB listener, in seconds. Valid range: 2-60, default value: 2.
    This parameter should be less than the check interval.
    This parameter is currently unavailable to public network CLB listeners with HTTP or HTTPS protocol.
    listeners.n.intervalTime No Int Health check interval for the CLB listener, in seconds. Value range: 5-300. Default value: 5.
    listeners.n.healthNum No Int Healthy threshold of the CLB listener. Value range: 2-10. Default value: 3, indicating that if a forward is found healthy three consecutive times, it is considered to be normal.
    llisteners.n.unhealthNum No Int Unhealthy threshold of the CLB listener. Value range: 2-10. Default value: 3, indicating that if a forward is found unhealthy three consecutive times, it is considered to be abnormal.
    listeners.n.httpHash No String Forwarding method of the CLB listener. Only public CLB instances with HTTP or HTTPs listeners support this parameter. Valid values: wrr (weighted round robin), ip_hash (forwarding the hash of the source IP to the real server), least_conn (least connection).
    Default value: wrr.
    listeners.n.scheduler No String Forwarding method of the CLB listener. Only public CLB instances with TCP or UDP listeners support this field. Valid values: wrr (weighted round robin), least_conn (least connection).
    Default value: wrr.
    listeners.n.httpCode No Int Return code for health status of the HTTP or HTTPS listener of public network CLB instances. Valid range: 1-31. Default value: 31.
    1 represents a return code of 1xx (healthy). 2 represents a return code of 2xx (healthy). 4 represents a return code of 3xx (healthy). 8 represents a return code of 4xx (healthy). 16 represents a return code of 5xx (healthy).
    If there are multiple codes that can show the healthy status, enter the accumulated value corresponding to such codes.
    listeners.n.httpCheckPath No String Health check path for the HTTP or HTTPS listener of public network CLB instances. Default value: /. It must be started with /
    listeners.n.SSLMode No String SSL authentication type of the HTTPS listener of public network CLB instances.
    unidirectional: one-way authentication; mutual: mutual authentication.
    This parameter is required to a HTTPS listener.
    listeners.n.certId No String Server certificate ID. For HTTPS listeners, if this field is left empty, you must upload server certificate by specifying parameters including certContent, certKey, and certName.
    listeners.n.certCaId No String Client certificate ID. For HTTPS listeners, if SSLMode=mutual and this field is left empty, you must upload client certificate by specifying the certCaContent and certCaName parameters.
    listeners.n.certCaContent No String Content of the client certificate uploaded. For HTTPS listeners, if SSLMode=mutual and certCaId is left empty, this parameter must be passed in.
    listeners.n.certCaName No String Name of the client CA certificate uploaded. For HTTPS listeners, if SSLMode=mutual and certCaId is left empty, this parameter must be passed in.
    listeners.n.certContent No String Content of the server certificate uploaded. For HTTPS listeners, if certId is left empty, this parameter must be passed in.
    listeners.n.certKey No String Key of the server certificate uploaded. For HTTPS listeners, if certId is left empty, this parameter must be passed in.
    listeners.n.certName No String Name of the server certificate uploaded. For HTTPS listeners, if certId is left empty, this parameter must be passed in.

    Response Parameters

    Parameter Name Type Description
    code Int Common error code. 0: success; other values: failure. For more information, see Common Error Codes.
    message String API-related module error message description.
    codeDesc String Error code. For a successful operation, "Success" is returned. For a failed operation, a message describing the failure is returned.
    requestId Int Request task ID. The operation status can be queried via the DescribeLoadBalancersTaskResult API.
    listenerIds Array Listener ID array.

    Example

    Request

    https://lb.api.qcloud.com/v2/index.php?Action=CreateLoadBalancerListeners
    &<Common request parameters>
    &loadBalancerId=lb-abcdefgh
    &listeners.0.loadBalancerPort=443
    &listeners.0.instancePort=443
    &listeners.0.protocol=4
    &listeners.0.SSLMode=mutual
    &listeners.0.certName=myCertName
    &listeners.0.certContent=-----BEGIN CERTIFICATE-----
                MIIE0DCCA7igAwIBAgIQEgaTYAJIpw1PQxjSr1FlTDANBgkqhkiG9w0BAQsFADBP
                MQswCQYDVQQGEwJDTjEaMBgGA1UEChMRV29TaWduIENBIExpbWl0ZWQxJDAiBgNV
                BAMMG0NBIOayg+mAmuWFjei0uVNTTOivgeS5piBHMjAeFw0xNjA1MTMwODIxMjVa
                Fw0xODA2MTMwODIxMjVaMBUxEzARBgNVBAMMCmcuZi14ai5jb20wggEiMA0GCSqG
                SIb3DQEBAQUAA4IBDwAwggEKAoIBAQC4/Ei7dxUJYXgY1V1PflCMwUrkG8Ack0vw
                +C/hCzivNBw5N0WA1Tch4REOIyDPIBq2wiblw4kSsHOF5CfB9DwDhaknZwzwyynZ
                Wr2NekKjoo6x0viqFydVyiVWGzW1qr6Dn9tiDcp75W/Os+nUzKHcc0Wd5aHvjGKD
                6xEPQKLvCZ0F4208rHWcoSnYiaFJPUAfegd8JvK5al0BvSZoXICo6Taf5x4xHag1
                6ymINH1ClLcAIOpAITWddqV20xaXrvdU7J0BusmYkHc840X3cvBywjFurzN5oLg2
                vtVQhGm6qJ/Fjqdg8w40BZkTQb4PlEX8AJ27g+548giuVnLzf8CHAgMBAAGjggHg
                MIIB3DAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUF
                BwMBMAkGA1UdEwQCMAAwHQYDVR0OBBYEFBvlTUGHZ/GGU4qGT+T7r/Zbcg0pMB8G
                A1UdIwQYMBaAFDDadIbzKJBWntcxMcK9Wc2TEjkdMH8GCCsGAQUFBwEBBHMwcTA1
                BggrBgEFBQcwAYYpaHR0cDovL29jc3AyLndvc2lnbi5jbi9jYTJnMi9zZXJ2ZXIx
                L2ZyZWUwOAYIKwYBBQUHMAKGLGh0dHA6Ly9haWEyLndvc2lnbi5jbi9jYTJnMi5z
                ZXJ2ZXIxLmZyZWUuY2VyMD4GA1UdHwQ3MDUwM6AxoC+GLWh0dHA6Ly9jcmxzMi53
                b3NpZ24uY24vY2EyZzItc2VydmVyMS1mcmVlLmNybDBOBgNVHREERzBFggpnLmYt
                eGouY29tghBzY2hvbGFyLmYteGouY29tggt5dC5mLXhqLmNvbYILZmIuZi14ai5j
                b22CC3R3LmYteGouY29tME8GA1UdIARIMEYwCAYGZ4EMAQIBMDoGCysGAQQBgptR
                AQECMCswKQYIKwYBBQUHAgEWHWh0dHA6Ly93d3cud29zaWduLmNvbS9wb2xpY3kv
                MA0GCSqGSIb3DQEBCwUAA4IBAQCJSd/1xmxwnT/TtKvvxTvDnkCpfsFYVmqiHB/Z
                rXiMdgobUOfF7C8kcBCTqSQAXZF3fjJ1KyhNulvKOffzGGYp+rMwoTAmfaNLUxD/
                X9gPLxZCiysDBQ1BLe16k4aKUHIOmqQNF1MD/8hOZBxjevctKaXc4Xqm2gxJLxDH
                RoY3HKZcdB6t/x7YJU640wvaFqDqIgR6Pc74YjtLrNjkXcf/IQU7c2yjZt9NIGeS
                OTku5DmFasRf04tmE7naB+wkUZOwAqGK8CESNS11BYZjO/M4G/ALS8zCpShUy89H
                hYiYAG5jdNI4vyWwaU4428nG3YvKzlTOpCaowqgbyCcqmtAT
                -----END CERTIFICATE-----
    &listeners.0.certKey=-----BEGIN RSA PRIVATE KEY-----
                your own key
                -----END RSA PRIVATE KEY-----
    &listeners.0.certCaContent=-----BEGIN CERTIFICATE-----
                MIIEPDCCAySgAwIBAgIJAJiHd00fZNxoMA0GCSqGSIb3DQEBBQUAMHExCzAJBgNV
                BAYTAkNOMQswCQYDVQQIEwJHUzELMAkGA1UEBxMCU1oxDTALBgNVBAoTBFhYWFgx
                DjAMBgNVBAsTBVhYWFhYMQ4wDAYDVQQDEwVBQUFBQTEZMBcGCSqGSIb3DQEJARYK
                d3d3QHFxLmNvbTAeFw0xNjA4MTExMTUyNTZaFw0xNzA4MDIxMTUyNTZaMHExCzAJ
                BgNVBAYTAkNOMQswCQYDVQQIEwJHUzELMAkGA1UEBxMCU1oxDTALBgNVBAoTBFhY
                WFgxDjAMBgNVBAsTBVhYWFhYMQ4wDAYDVQQDEwVBQUFBQTEZMBcGCSqGSIb3DQEJ
                ARYKd3d3QHFxLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM29
                SL0TlZaqZb4jEjZ8mkwSeWGVhYaskYtDvxvZQSHZF2A1DtpGojsz+Z3KxgVo4edj
                Y26lfxmFPwPhxoBRgCYDqEOLAOKWRxzXYyP2kr9FN4vs0hzizT4IVxJciOUwmIaQ
                bjzzFQN5BeJ/UTekrs1/YwfJAakP7TvoKUlfBvkKFzRlgdxnGk+/C7+cg1P9F9J4
                rjm/Rn+0HhO0QshsAo1IT4jZF356yvk/g0upLhZexo39jKf4ypmtcHTusYcAoRGh
                bCk26taM4aeQxMnB715ZkQhqB1+dyM6SWRFysYpteEK+jEH8wWPQriqIlcRJxncy
                /8B4RmHIJxXRG8Tb8TUCAwEAAaOB1jCB0zAdBgNVHQ4EFgQUp/qOq6q7ezAVxEhX
                trsPMa4aiq4wgaMGA1UdIwSBmzCBmIAUp/qOq6q7ezAVxEhXtrsPMa4aiq6hdaRz
                MHExCzAJBgNVBAYTAkNOMQswCQYDVQQIEwJHUzELMAkGA1UEBxMCU1oxDTALBgNV
                BAoTBFhYWFgxDjAMBgNVBAsTBVhYWFhYMQ4wDAYDVQQDEwVBQUFBQTEZMBcGCSqG
                SIb3DQEJARYKd3d3QHFxLmNvbYIJAJiHd00fZNxoMAwGA1UdEwQFMAMBAf8wDQYJ
                KoZIhvcNAQEFBQADggEBAJ2XTOKyR2nFgaWcTG5d92tSij3lIoZCBo4dwrleYFuW
                cYUYSi65QskJpuDHr5KttmI4+0tt9OQOB/oHIEbkCqgEAC7PREJAgapcf5+ItMHN
                rNh151CkTyoK1Z09tw3OrX5GQVAHSpz0+BQTE+MPas5lyidwP1PqQFY9nZW4J3PG
                RAbiiSnQ1eN5g0aKzIZpbEbP7Y7BGT9b+rLt+VUbmQ30h96zHchSsUsQ32dchwLm
                N0ZL1PyCivQ+A1snbqA3uHZnoXBd8/yq0QNg0o15edx+GfbY5FJbgXf3FER+NgMB
                wPeJ62izpROBQvXYNb3e72gM1xCAlgD+MBpNeGlx56g=
                -----END CERTIFICATE-----
    &listeners.0.certCaName=myCertCaName
    

    Response

    {
        "code": 0,
        "message": "",
        "codeDesc": "Success",
        "requestId": 28557,
        "listenerIds": [
            "lbl-hox8i4q0"
        ]
    }