您可以通过以下 Annotation 注解配置 Service,以实现更丰富的负载均衡的能力。
注解使用方式
apiVersion: v1
kind: Service
metadata:
annotations:
service.kubernetes.io/tke-existed-lbid: lb-6swtxxxx
name: test
........
Annotation 集合
service.kubernetes.io/loadbalance-id
说明: 只读注解,提供当前 Service 引用的负载均衡 LoadBalanceId。您可以在CLB 控制台查看与集群在同一 VPC 下的 CLB 实例 ID。
service.kubernetes.io/qcloud-loadbalancer-internal-subnetid
说明: 通过该 Annotation 指定创建内网类型 CLB,取值为子网 ID。
使用示例:
service.kubernetes.io/qcloud-loadbalancer-internal-subnetid: subnet-xxxxxxxx
service.kubernetes.io/tke-existed-lbid
说明: 使用已存在的 CLB,需注意不同使用方式对标签的影响。
使用示例: 使用方式详情见 Service 使用已有 CLB。
service.kubernetes.io/local-svc-only-bind-node-with-pod
说明: Service Local 模式下仅绑定有 Pod 存在的节点。
使用示例: 使用方式详情见 Service Local 模式。
service.kubernetes.io/qcloud-loadbalancer-backends-label
说明: 指定标签设置负载均衡后端绑定的节点。
使用示例: 使用方式详情见 指定接入层后端。
service.kubernetes.io/loadbalance-nat-ipv6
说明: 只读注解,创建 NAT64 IPv6 负载均衡时,负载均衡的 IPv6 地址将会展示到注解中。
使用示例:
service.kubernetes.io/loadbalance-nat-ipv6: "2402:4e00:1402:7200:0:9223:5842:2a44"
service.kubernetes.io/service.extensiveParameters
说明: 该 Annotation 使用的是 CLB 创建时的参数,当前仅在创建时支持配置,创建后不支持修改,创建后修改本注解无效。
使用示例:
- 创建 NAT64 IPv6 实例: service.kubernetes.io/service.extensiveParameters: '{"AddressIPVersion":"IPV6"}'
- 购买电信负载均衡: service.kubernetes.io/service.extensiveParameters: '{"VipIsp":"CTCC"}'
- 创建时自定义 CLB 名字: service.kubernetes.io/service.extensiveParameters: '{"LoadBalancerName":"my_cutom_lb_name"}'
service.kubernetes.io/qcloud-loadbalancer-internet-charge-type
说明:
负载均衡的付费类型,当前仅在创建时支持配置,创建后不支持修改付费类型,创建后修改本注解无效。
指定创建负载均衡时,负载均衡的付费类型。请配合 service.kubernetes.io/qcloud-loadbalancer-internet-max-bandwidth-out
注解一起使用。
可选值:
BANDWIDTH_POSTPAID_BY_HOUR
按带宽按小时后计费TRAFFIC_POSTPAID_BY_HOUR
按流量按小时后计费
使用示例:
service.kubernetes.io/qcloud-loadbalancer-internet-charge-type: "TRAFFIC_POSTPAID_BY_HOUR"
service.kubernetes.io/qcloud-loadbalancer-internet-max-bandwidth-out
说明:
CLB 带宽设置,当前仅在创建时支持配置,创建后不支持修改带宽,创建后修改本注解无效。
指定创建负载均衡时,负载均衡的最大出带宽,仅对公网属性的 LB 生效。需配合 service.kubernetes.io/qcloud-loadbalancer-internet-charge-type
注解一起使用。
可选值: 范围支持1到2048,单位 Mbps。
使用示例:
service.kubernetes.io/qcloud-loadbalancer-internet-max-bandwidth-out: "2048"