Ingress Annotation 说明

最近更新时间: 2025-02-18 16:02:00

您可以通过以下 Annotation 注解配置 Ingress,以实现更丰富的负载均衡的能力。

注解使用方式

  • 复制
    复制成功
apiVersion: 
kind: Ingress
metadata:
  annotations:  
    kubernetes.io/ingress.class: "qcloud"
  name: test
........

Annotation 集合

kubernetes.io/ingress.class

说明: 配置 Ingress 类型。当前组件管理未配置该注解,或注解内容为 qcloud 的 Ingress 资源。

使用示例:

kubernetes.io/ingress.class: "qcloud"

kubernetes.io/ingress.qcloud-loadbalance-id

说明: 只读注解,组件提供当前 Ingress 引用的负载均衡 LoadBalanceId。

使用示例:

kubernetes.io/ingress.qcloud-loadbalance-id: "lb-3imskkfe"

ingress.fincloud.tencent.cn/loadbalance-nat-ipv6

说明: 只读注解,当用户配置或申请的为 NAT IPv6负载均衡时,提供 IPv6地址。

ingress.fincloud.tencent.cn/loadbalance-ipv6

说明: 只读注解,当用户配置或申请的为 FullStack IPv6负载均衡时,提供 IPv6地址。

kubernetes.io/ingress.internetChargeType

说明: 负载均衡的付费类型,当前仅在创建时支持配置,创建后不支持修改付费类型,创建后修改本注解无效。 指定创建负载均衡时,负载均衡的付费类型。请配合 kubernetes.io/ingress.internetMaxBandwidthOut 注解一起使用。

可选值:

  • TRAFFIC_POSTPAID_BY_HOUR 按流量按小时后计费。
  • BANDWIDTH_POSTPAID_BY_HOUR 按带宽按小时后计费。

使用示例:

kubernetes.io/ingress.internetChargeType: "TRAFFIC_POSTPAID_BY_HOUR"

kubernetes.io/ingress.internetMaxBandwidthOut

说明: CLB 带宽设置,当前仅在创建时支持配置,创建后不支持修改带宽,创建后修改本注解无效。 指定创建负载均衡时,负载均衡的最大出带宽,仅对公网属性的 LB 生效。需配合 kubernetes.io/ingress.internetChargeType 注解一起使用。

可选值: 范围支持1到2048,单位 Mbps。

使用示例:

kubernetes.io/ingress.internetMaxBandwidthOut: "2048"

kubernetes.io/ingress.extensiveParameters

说明: 该 Annotation 使用的是 CLB 创建时的参数,当前仅在创建时支持配置,创建后不支持修改,创建后修改本注解无效。

使用示例:

  • 创建 NAT64 IPv6 实例: kubernetes.io/ingress.extensiveParameters: '{"AddressIPVersion":"IPV6"}'

  • 创建 IPv6 实例:(SubnetId必填,而且需要分配IPv6网段。MixIpTarget可以提供混绑后端IPv4的能力,当您的后端不是IPv6时请添加该配置) kubernetes.io/ingress.extensiveParameters: '{"AddressIPVersion":"IPv6FullChain","SubnetId": "subnet-fqduxxxx"}'

    kubernetes.io/ingress.extensiveParameters: '{"AddressIPVersion":"IPv6FullChain","SubnetId": "subnet-fqduxxxx","MixIpTarget":true}'

  • 购买电信负载均衡: kubernetes.io/ingress.extensiveParameters: '{"VipIsp":"CTCC"}'

  • 指定可用区创建: kubernetes.io/ingress.extensiveParameters: '{"ZoneId":"ap-guangzhou-1"}'

  • 创建时自定义 CLB 名字: kubernetes.io/ingress.extensiveParameters: '{"LoadBalancerName":"my_custom_lb_name"}'

kubernetes.io/ingress.subnetId

说明: 指定创建内网类型的负载均衡,并指定负载均衡所属子网。

使用示例:

kubernetes.io/ingress.subnetId: "subnet-3swgntkk"

kubernetes.io/ingress.existLbId

说明: 指定使用已有负载均衡作为接入层入口资源。

注意

使用已有负载均衡时,需要保证其不包含其他监听器。

使用示例:

kubernetes.io/ingress.existLbId: "lb-342wppll"