All Products
Search
Document Center

ENS:CreateLoadBalancerHTTPSListener

Last Updated:Nov 18, 2024

Creates an HTTPS listener.

Operation description

  • You can call this operation up to 100 times per second per account.
  • You can call this operation up to 10 times per second per user.

Debugging

You can run this interface directly in OpenAPI Explorer, saving you the trouble of calculating signatures. After running successfully, OpenAPI Explorer can automatically generate SDK code samples.

Authorization information

The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:

  • Operation: the value that you can use in the Action element to specify the operation on a resource.
  • Access level: the access level of each operation. The levels are read, write, and list.
  • Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
    • The required resource types are displayed in bold characters.
    • If the permissions cannot be granted at the resource level, All Resources is used in the Resource type column of the operation.
  • Condition Key: the condition key that is defined by the cloud service.
  • Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
OperationAccess levelResource typeCondition keyAssociated operation
ens:CreateLoadBalancerHTTPSListenercreate
*All Resources
*
    none
none

Request parameters

ParameterTypeRequiredDescriptionExample
LoadBalancerIdstringYes

The ID of the Edge Load Balancer (ELB) instance.

lb-5s8w63yydi59w7klaikam****
ListenerPortintegerYes

The listening port that is used by Edge Load Balancer (ELB) to receive requests and forward the requests to backend servers. Valid values: 1 to 65535.

Note We recommend that you use port 443 for HTTPS.
8080
ListenerForwardstringNo

Specifies whether to enable HTTP-to-HTTPS redirection. Valid values:

  • on
  • off (default)
off
ForwardPortintegerNo

The listener port that is used to redirect HTTP requests to HTTPS.

0
DescriptionstringNo

The description of the listener. The description must be 1 to 80 characters in length.

Note The value cannot start with http:// or https://.
https_80
SchedulerstringNo

The routing algorithm. Valid values:

  • wrr (default): Backend servers with higher weights receive more requests than backend servers with lower weights.
  • wlc: Requests are distributed based on the weight and load of each backend server. The load refers to the number of connections on a backend server. If two backend servers have the same weight, the backend server that has fewer connections receives more requests.
  • rr: Requests are distributed to backend servers in sequence.
  • sch: consistent hashing that is based on source IP addresses. Requests from the same source IP address are distributed to the same backend server.
  • qch: consistent hashing that is based on QUIC connection IDs. Requests that contain the same QUIC connection ID are distributed to the same backend server.
  • iqch: consistent hashing that is based on specific three bytes of the iQUIC CIDs. Requests whose second to fourth bytes are the same are distributed to the same backend server.
wrr
StickySessionTypestringNo

The method that is used to handle a cookie. Valid values:

  • insert: inserts a cookie. ELB inserts a session cookie (SERVERID) into the first HTTP or HTTPS response that is sent to a client. Subsequent requests to ELB carry this cookie, and ELB determines the destination servers of the requests based on the cookies.
  • server: rewrites a cookie. When ELB detects a user-defined cookie, it overwrites the original cookie with the user-defined cookie. The next request from the client carries the user-defined cookie, and the listener forwards this request to the recorded backend server.
Note This parameter is required if you set StickySession to on.
insert
CookieTimeoutintegerNo

The timeout period of a cookie. Valid values: 1 to 86400. Unit: seconds.

Note This parameter is required if you set StickySession to on and StickySessionType to insert.
100
CookiestringNo

The cookie that is configured on the server. The cookie must be 1 to 200 characters in length and contain only ASCII characters and digits.

Note This parameter is required if you set StickySession to on and StickySessionType to server.
example
HealthCheckstringYes

Specifies whether to enable the health check feature. Valid values:

  • on
  • off
on
HealthCheckDomainstringNo

The domain name that you want to use for health checks.

Note This parameter takes effect only if you set HealthCheck to on.
example.com
HealthCheckURIstringNo

The URI used for health checks. The URI must be 1 to 80 characters in length.

Note A URL must start with a forward slash (/) but cannot contain only forward slashes (/).
/checkpreload.htm
HealthyThresholdintegerNo

The number of consecutive successful health checks that must occur before an unhealthy and inaccessible backend server is declared healthy and accessible. Valid values: 2 to 10. Default value: 3.

Note This parameter takes effect only if you set HealthCheck to on.
3
UnhealthyThresholdintegerNo

The number of consecutive failed health checks that must occur before a healthy and accessible backend server is declared unhealthy and inaccessible. Valid values: 2 to 10. Default value: 3.

Note This parameter takes effect only if you set HealthCheck to on.
3
HealthCheckTimeoutintegerNo

The timeout period of a health check response. If a backend server does not respond within the specified timeout period, the server fails to pass the health check.

  • Default value: 5.
  • Valid values: 1 to 300.
  • Unit: seconds.
Note
  • This parameter takes effect only if the HealthCheck parameter is set to on.

  • If the value of HealthCheckTimeout is smaller than the value of HealthCheckInterval, the timeout period specified by HealthCheckTimeout becomes invalid, and the value of HealthCheckInterval is used as the timeout period.

5
HealthCheckConnectPortintegerNo

The port that is used for health checks. Valid values: 1 to 65535. If you leave this parameter empty, the port specified by BackendServerPort is used for health checks.

Note This parameter takes effect only if you set HealthCheck to on.
11
HealthCheckIntervalintegerNo

The interval at which health checks are performed. Valid values: 1 to 50. Default value: 2. Unit: seconds.

Note This parameter takes effect only if you set HealthCheck to on.
2
HealthCheckHttpCodestringNo

The HTTP status code for a successful health check. Valid values:

  • http_2xx (default)
  • http_3xx
  • http_4xx
  • http_5xx
Note This parameter takes effect only if you set HealthCheck to on.
http_2xx
IdleTimeoutintegerNo

The timeout period for idle connections. Default value: 15. Valid values: 1 to 60. Unit: seconds.

Note If no request is received within the specified timeout period, ELB closes the connection. When another request is received, ELB establishes a new connection.
15
RequestTimeoutintegerNo

The timeout period of requests. Default value: 60. Valid values: 1 to 180. Unit: seconds.

Note If no response is received from the backend server within the specified timeout period, ELB returns an HTTP 504 error code to the client.
60
ServerCertificateIdstringYes

The ID of the server certificate.

60276**
HealthCheckMethodstringNo

The health check method used by HTTP listeners. Valid values:

  • head (default): requests the head of the page.
  • get: requests the specified part of the page and returns the entity body.
Note This parameter takes effect only if you set HealthCheck to on.
head
BackendServerPortintegerNo

The listening port that is used by the backend instances. Valid values: 1 to 65535.

8080

Response parameters

ParameterTypeDescriptionExample
object

Schema of Response

RequestIdstring

The ID of the request.

473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E

Examples

Sample success responses

JSONformat

{
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E"
}

Error codes

HTTP status codeError codeError messageDescription
400Invalid%sThe specified parameter %s is invalid.-
400Missing%sYou must specify the parameter %s.-
400LoadBalancerNotFoundThe input parameter loadBalancerId that is not found. -
400IncorrectInstanceStatusThe current status of the resource does not support this operation.The current operation is not supported. The disk is being reset.
400ServerCertificateNotFoundThe input parameter serverCertificateId that is not found.-
400ens.interface.errorFailed to call API.-
400ListenerAlreadyExistsThe listener already exists.The listener already exists.
400NoPermissionPermission denied.-
400InvalidParameter.%sThe specified field %s invalid. Please check it again.-

For a list of error codes, visit the Service error codes.

Change history

Change timeSummary of changesOperation
2024-08-08The Error code has changed. The request parameters of the API has changedView Change Details