ListenerProps
Properties for defining a Listener
.
See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-slb-listener
Initializer
import com.aliyun.ros.cdk.slb.ListenerProps;
ListenerProps.builder()
.bandwidth(java.lang.Number)
.bandwidth(IResolvable)
.listenerPort(java.lang.Number)
.listenerPort(IResolvable)
.loadBalancerId(java.lang.String)
.loadBalancerId(IResolvable)
.protocol(java.lang.String)
.protocol(IResolvable)
// .aclId(java.lang.String)
// .aclId(IResolvable)
// .aclIds(IResolvable)
// .aclIds(java.util.List<java.lang.String)
// .aclIds(IResolvable>)
// .aclStatus(java.lang.String)
// .aclStatus(IResolvable)
// .aclType(java.lang.String)
// .aclType(IResolvable)
// .backendServerPort(java.lang.Number)
// .backendServerPort(IResolvable)
// .caCertificateId(java.lang.String)
// .caCertificateId(IResolvable)
// .connectionDrain(java.lang.String)
// .connectionDrain(IResolvable)
// .connectionDrainTimeout(java.lang.Number)
// .connectionDrainTimeout(IResolvable)
// .description(java.lang.String)
// .description(IResolvable)
// .enableHttp2(java.lang.String)
// .enableHttp2(IResolvable)
// .gzip(java.lang.String)
// .gzip(IResolvable)
// .healthCheck(IResolvable)
// .healthCheck(HealthCheckProperty)
// .httpConfig(IResolvable)
// .httpConfig(HttpConfigProperty)
// .idleTimeout(java.lang.Number)
// .idleTimeout(IResolvable)
// .masterSlaveServerGroupId(java.lang.String)
// .masterSlaveServerGroupId(IResolvable)
// .persistence(IResolvable)
// .persistence(PersistenceProperty)
// .portRange(IResolvable)
// .portRange(java.util.List<IResolvable)
// .portRange(PortRangeProperty>)
// .proxyProtocolV2Enabled(java.lang.Boolean)
// .proxyProtocolV2Enabled(IResolvable)
// .requestTimeout(java.lang.Number)
// .requestTimeout(IResolvable)
// .scheduler(java.lang.String)
// .scheduler(IResolvable)
// .serverCertificateId(java.lang.String)
// .serverCertificateId(IResolvable)
// .startListener(java.lang.Boolean)
// .startListener(IResolvable)
// .tags(java.util.List<TagsProperty>)
// .tlsCipherPolicy(java.lang.String)
// .tlsCipherPolicy(IResolvable)
// .vServerGroupId(java.lang.String)
// .vServerGroupId(IResolvable)
.build();
Properties
Name | Type | Description |
---|---|---|
bandwidth |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property bandwidth: The bandwidth of network, unit in Mbps(Million bits per second). |
listenerPort |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property listenerPort: Port for front listener. |
loadBalancerId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property loadBalancerId: The id of load balancer to create listener. |
protocol |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property protocol: The load balancer transport protocol to use for routing: http, https, tcp, or udp. |
aclId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property aclId: The ID of the access control associated with the listener to be created. |
aclIds |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property aclIds: The ID list of the access controls associated with the listener to be created. |
aclStatus |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property aclStatus: Indicates whether to enable access control. |
aclType |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property aclType: The access control type: * white: Indicates a whitelist. |
backendServerPort |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property backendServerPort: Backend server can listen on ports from 1 to 65535. |
caCertificateId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property caCertificateId: CA server certificate id, for https listener only. |
connectionDrain |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property connectionDrain: Whether to enable graceful connection interruption. |
connectionDrainTimeout |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property connectionDrainTimeout: Set the connection graceful interruption timeout. |
description |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property description: The description of the listener.It must be 1 to 80 characters in length and can contain letters, digits, hyphens (-), forward slashes (\/), periods (.), and underscores (_). Chinese characters are supported. |
enableHttp2 |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property enableHttp2: Specifies whether to use HTTP\/2. |
gzip |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property gzip: Specifies whether to enable Gzip compression to compress specific types of files. |
healthCheck |
com.aliyun.ros.cdk.core.IResolvable OR HealthCheckProperty |
Property healthCheck: The properties of health checking setting. |
httpConfig |
com.aliyun.ros.cdk.core.IResolvable OR HttpConfigProperty |
Property httpConfig: Config for http protocol. |
idleTimeout |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property idleTimeout: Specify the idle connection timeout in seconds. |
masterSlaveServerGroupId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property masterSlaveServerGroupId: The id of the MasterSlaveServerGroup which use in listener. |
persistence |
com.aliyun.ros.cdk.core.IResolvable OR PersistenceProperty |
Property persistence: The properties of persistence. |
portRange |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property portRange: Port range, only supports TCP or UDP listener. |
proxyProtocolV2Enabled |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property proxyProtocolV2Enabled: Whether to support carrying the client source address to the backend server through the Proxy Protocol. |
requestTimeout |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property requestTimeout: Specify the request timeout in seconds. |
scheduler |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property scheduler: The scheduling algorithm. |
serverCertificateId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property serverCertificateId: Server certificate id, for https listener only, this properties is required. |
startListener |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property startListener: Whether start listener after listener created. |
tags |
java.util.List<TagsProperty> |
Property tags: Tags to attach to instance. |
tlsCipherPolicy |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property tlsCipherPolicy: The Transport Layer Security (TLS) security policy. |
vServerGroupId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property vServerGroupId: The id of the VServerGroup which use in listener. |
bandwidth
Required
public java.lang.Object getBandwidth();
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property bandwidth: The bandwidth of network, unit in Mbps(Million bits per second).
If the specified load balancer with "LOAD_BALANCE_ID" is charged by "paybybandwidth" and is created in classic network, each Listener's bandwidth must be greater than 0 and the sum of all of its Listeners' bandwidth can't be greater than the bandwidth of the load balancer.
listenerPort
Required
public java.lang.Object getListenerPort();
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property listenerPort: Port for front listener.
Range from 0 to 65535.
loadBalancerId
Required
public java.lang.Object getLoadBalancerId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property loadBalancerId: The id of load balancer to create listener.
protocol
Required
public java.lang.Object getProtocol();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property protocol: The load balancer transport protocol to use for routing: http, https, tcp, or udp.
aclId
Optional
public java.lang.Object getAclId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property aclId: The ID of the access control associated with the listener to be created.
If the value of the AclStatus parameter is on, this parameter is required.
aclIds
Optional
public java.lang.Object getAclIds();
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property aclIds: The ID list of the access controls associated with the listener to be created.
If the value of the AclStatus parameter is on, this parameter is required.AclIds have higher priority than AclId.
aclStatus
Optional
public java.lang.Object getAclStatus();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property aclStatus: Indicates whether to enable access control.
Valid values: on | off. Default value: off
aclType
Optional
public java.lang.Object getAclType();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property aclType: The access control type: * white: Indicates a whitelist.
Only requests from IP addresses or CIDR blocks in the selected access control lists are forwarded. This applies to scenarios in which an application only allows access from specific IP addresses. Enabling a whitelist poses some risks to your services. After a whitelist is enabled, only the IP addresses in the list can access the listener. If you enable a whitelist without adding any IP addresses in the list, no requests are forwarded.
- black: Indicates a blacklist. Requests from IP addresses or CIDR blocks in the selected access control lists are not forwarded (that is, they are blocked). This applies to scenarios in which an application only denies access from specific IP addresses. If you enable a blacklist without adding any IP addresses in the list, all requests are forwarded.
If the value of the AclStatus parameter is on, this parameter is required.
backendServerPort
Optional
public java.lang.Object getBackendServerPort();
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property backendServerPort: Backend server can listen on ports from 1 to 65535.
caCertificateId
Optional
public java.lang.Object getCaCertificateId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property caCertificateId: CA server certificate id, for https listener only.
connectionDrain
Optional
public java.lang.Object getConnectionDrain();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property connectionDrain: Whether to enable graceful connection interruption.
Value:on: turn on off: Not turned on Note: Only effective TCP listener.
connectionDrainTimeout
Optional
public java.lang.Object getConnectionDrainTimeout();
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property connectionDrainTimeout: Set the connection graceful interruption timeout.
Unit: seconds. Value range: 10-900. Note: Only effective for TCP listener. When ConnectionDrain is on, this option is required.
description
Optional
public java.lang.Object getDescription();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property description: The description of the listener.It must be 1 to 80 characters in length and can contain letters, digits, hyphens (-), forward slashes (\/), periods (.), and underscores (_). Chinese characters are supported.
enableHttp2
Optional
public java.lang.Object getEnableHttp2();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property enableHttp2: Specifies whether to use HTTP\/2.
It takes effect when Protocol=https. Valid values: on: yes off: no
gzip
Optional
public java.lang.Object getGzip();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property gzip: Specifies whether to enable Gzip compression to compress specific types of files.
Valid values: on (default): yes off: no
healthCheck
Optional
public java.lang.Object getHealthCheck();
- Type: com.aliyun.ros.cdk.core.IResolvable OR HealthCheckProperty
Property healthCheck: The properties of health checking setting.
httpConfig
Optional
public java.lang.Object getHttpConfig();
- Type: com.aliyun.ros.cdk.core.IResolvable OR HttpConfigProperty
Property httpConfig: Config for http protocol.
idleTimeout
Optional
public java.lang.Object getIdleTimeout();
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property idleTimeout: Specify the idle connection timeout in seconds.
Valid value: 1-60 If no request is received during the specified timeout period, Server Load Balancer will temporarily terminate the connection and restart the connection when the next request comes.
masterSlaveServerGroupId
Optional
public java.lang.Object getMasterSlaveServerGroupId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property masterSlaveServerGroupId: The id of the MasterSlaveServerGroup which use in listener.
persistence
Optional
public java.lang.Object getPersistence();
- Type: com.aliyun.ros.cdk.core.IResolvable OR PersistenceProperty
Property persistence: The properties of persistence.
portRange
Optional
public java.lang.Object getPortRange();
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
PortRangeProperty>
Property portRange: Port range, only supports TCP or UDP listener.
ListenerPort should be 0 when PortRange is specified.
proxyProtocolV2Enabled
Optional
public java.lang.Object getProxyProtocolV2Enabled();
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property proxyProtocolV2Enabled: Whether to support carrying the client source address to the backend server through the Proxy Protocol.
Value: true: Yes false (default): No Note: Only effective TCP or UDP listener.
requestTimeout
Optional
public java.lang.Object getRequestTimeout();
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property requestTimeout: Specify the request timeout in seconds.
Valid value: 1-180 If no response is received from the backend server during the specified timeout period, Server Load Balancer will stop waiting and send an HTTP 504 error to the client.
scheduler
Optional
public java.lang.Object getScheduler();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property scheduler: The scheduling algorithm.
Valid values: wrr: Backend servers that have higher weights receive more requests than those that have lower weights. wlc: Requests are distributed based on the combination of the weights and connections to backend servers. 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: specifies consistent hashing that is based on source IP addresses. Requests from the same source IP address are distributed to the same backend server. tch: specifies consistent hashing that is based on four factors: source IP address, destination IP address, source port number, and destination port number. Requests that contain the same preceding information are distributed to the same backend server. Default: wrr
serverCertificateId
Optional
public java.lang.Object getServerCertificateId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property serverCertificateId: Server certificate id, for https listener only, this properties is required.
startListener
Optional
public java.lang.Object getStartListener();
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property startListener: Whether start listener after listener created.
Default True.
tags
Optional
public java.util.List<TagsProperty> getTags();
- Type: java.util.List<TagsProperty>
Property tags: Tags to attach to instance.
Max support 20 tags to add during create instance. Each tag with two properties Key and Value, and Key is required.
tlsCipherPolicy
Optional
public java.lang.Object getTlsCipherPolicy();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property tlsCipherPolicy: The Transport Layer Security (TLS) security policy.
Each security policy contains TLS protocol versions and cipher suites available for HTTPS. It takes effect when Protocol=https.
vServerGroupId
Optional
public java.lang.Object getVServerGroupId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property vServerGroupId: The id of the VServerGroup which use in listener.