Skip to Content
Service DiscoveryService ManagementULB Parameter Description

ULB Parameter Description

This article mainly describes the Annotations related to ULB when creating a Service of LoadBalancer type.

Parameter Notes

  1. Currently, other parameters are temporarily not supported for modification except for the bandwidth value of the EIP bound by the external network ULB, please configure carefully.
  2. The bandwidth value of the EIP bound by the public network ULB must be modified through Annotations. Annotations will overwrite the configuration modified by the console.

Note: After the Service is created, the following parameters are not allowed to be modified!!!

FieldDefault ValueDescription
service.beta.kubernetes.io/ucloud-load-balancer-typeouterLoad Balancer network type, enumerated values are inner / outer.
service.beta.kubernetes.io/ucloud-load-balancer-vserver-protocoltcpVServer protocol type, enumerated values are tcp / udp / http / https.
service.beta.kubernetes.io/ucloud-load-balancer-listentype/Load balancer type, enumerated values are packetstransmit / requestproxy / application (alb).
1. ULB type is request proxy, VServer protocol is tcp: this parameter is configured as requestproxy, vserver-protocol is configured as tcp;
2. ULB type is request proxy, VServer protocol is http / https: no need to configure this parameter, automatically per vserver-protocol configuration; 3. ULB type is packet forwarding, VServer protocol is tcp / udp: no need to configure this parameter, automatically per vserver-protocol configuration.
Load balancer type and VServer protocol type detailed Description please refer to:Load Balancer Type
4. When ULB type is application, the created is alb (only supported after version 24.03.13), vserver can choose http/https
service.beta.kubernetes.io/ucloud-load-balancer-vserver-methodroundrobinThe load balancing mode of VServer, enumerated values are roundrobin (polling), source (source address), consistenthash (consistent hashing), sourceport (source address calculation port), consistenthashport (port consistent hash), backup (master-slave, alb exclusive).
service.beta.kubernetes.io/ucloud-load-balancer-vserver-client-timeout0/60When using ULB4, it represents the connection maintenance time, in seconds, the value is [60, 900], 0 indicates that connection maintenance is disabled, the default is 0 (no need to specify parameters).
When using ULB7, it represents the recovery time of idle connections, in seconds, the value is (0, 86400], 0 indicates that connection maintenance is disabled, the default is 60. After specifying the parameter, persistence-type cannot be none.
service.beta.kubernetes.io/ucloud-load-balancer-vserver-session-persistence-typenoneSession persistence mode, enumerated values are none (off), serverinsert (autogenerated KEY), userdefined (user-defined KEY).
service.beta.kubernetes.io/ucloud-load-balancer-vserver-ssl-port/Ports that open the ssl protocol are separated by ”,”, it must be specified with ssl-cert.
service.beta.kubernetes.io/ucloud-load-balancer-vserver-ssl-cert/SSL certificate ID. Must be specified with ssl-port. The certificate must be uploaded to Surfercloud.
For the management of the SSL certificate used by the load balancer, please refer to the ULB documentation: Add Certificate
service.beta.kubernetes.io/ucloud-load-balancer-vserver-session-persistence-info/User-defined KEY. Effective when persistence-type is userdefined.
service.beta.kubernetes.io/ucloud-load-balancer-vserver-monitor-typeportHealth check method, enumerated values are port / path / customize.
Request proxy TCP protocol only supports port, other protocols support port and path; Packet forwarding TCP protocol only supports port, UDP protocol supports port and customize; ALB supports port, HTTP
service.beta.kubernetes.io/ucloud-load-balancer-vserver-monitor-domain/Effective when monitor-type is path, refers to http check domain.
service.beta.kubernetes.io/ucloud-load-balancer-vserver-monitor-pathnoneEffective when monitor-type is path, refers to http check path.
The default value is empty, indicating that the root path / is checked; If you want to customize the path, just provide the part behind the root path, such as health or status/ready
service.beta.kubernetes.io/ucloud-load-balancer-subnet-idDefault subnet of VPCThe subnet where ULB is created, fill in the subnet ID, such as subnet-xxxxxxxx.
service.beta.kubernetes.io/ucloud-load-balancer-remove-unscheduled-backendtrueRemove unscheduled nodes, enumerated values true / false, will not be automatically removed by ULB when the node is unscheduled after setting to false.
Only supported in cloudprovider version 21.04.1 and later.
service.beta.kubernetes.io/ucloud-load-balancer-vserver-monitor-reqmsg/The request message sent by UDP health check, only effective when protocol is set to udp.
Only supported in cloudprovider version 21.05.1 and later.
service.beta.kubernetes.io/ucloud-load-balancer-vserver-monitor-respmsg/The response message that the UDP health check request should receive, only effective when the protocol is set to udp.
Only supported in cloudprovider version 21.05.1 and later.
service.beta.kubernetes.io/ucloud-load-balancer-paymodemonthalb payment mode, supports month (monthly payment), year (annual payment), dynamic (hourly payment). For ALB payment related information, please refer to: ALB Product Pricing
service.beta.kubernetes.io/ucloud-load-balancer-quantity1alb payment duration, no need to fill in when chargetype is dynamic

To view and upgrade the CloudProvider version, please refer to: CloudProvider Plugin Update

2. Parameters Description for EIP binding of public ULB

Note: After the Service is created, only the service.beta.kubernetes.io/ucloud-load-balancer-eip-bandwidth can be modified, other parameters are not allowed to be modified!!!

FieldDefault ValueDescription
service.beta.kubernetes.io/ucloud-load-balancer-eip-paymodebandwidthBilling mode, supports traffic (traffic billing), bandwidth (bandwidth billing), sharebandwidth (shared bandwidth).
service.beta.kubernetes.io/ucloud-load-balancer-eip-sharebandwidthid/Shared bandwidth ID, effective only when eip-paymode is sharebandwidth.
service.beta.kubernetes.io/ucloud-load-balancer-eip-bandwidth2Public network bandwidth, in Mbps. No need to specify under shared bandwidth mode, or configure as 0; Under traffic billing mode, this parameter is the upper limit of traffic billing EIP bandwidth.
service.beta.kubernetes.io/ucloud-load-balancer-eip-chargetypemonthPayment mode, supports month (monthly payment), year (annual payment), dynamic (hourly payment).
service.beta.kubernetes.io/ucloud-load-balancer-eip-quantity1Payment duration, no need to fill in when chargetype is dynamic.