You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ALB Ingress Controller时如何避免生成路径条件

解决ALB规则条件数超限问题:仅保留主机头条件

要让ALB Ingress Controller只生成主机头规则,不自动添加路径条件,只需在Ingress资源中添加一个关键注解,同时保留原有配置即可:

具体修改步骤

  • 在Ingress的metadata.annotations中添加:
    alb.ingress.kubernetes.io/skip-default-path-condition: "true"
    
  • 保留原有的host配置和自定义条件注解,这样控制器就会只生成主机头条件 + 你定义的4个额外条件,总共5个条件,刚好符合ALB单规则最多5个条件的限制。

修改后的完整Ingress示例

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    alb.ingress.kubernetes.io/certificate-arn: mycertificatearn
    alb.ingress.kubernetes.io/conditions.my-service: '[{"field":"source-ip",...}]'
    alb.ingress.kubernetes.io/group.name: my-alb-group
    alb.ingress.kubernetes.io/listen-ports: '[{"HTTP":80},{"HTTPS":443}]'
    alb.ingress.kubernetes.io/load-balancer-attributes: idle_timeout.timeout_seconds=150
    alb.ingress.kubernetes.io/scheme: internet-facing
    alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-2016-08
    alb.ingress.kubernetes.io/ssl-redirect: "443"
    alb.ingress.kubernetes.io/target-type: ip
    kubernetes.io/ingress.class: alb
    # 添加这个注解跳过默认路径条件
    alb.ingress.kubernetes.io/skip-default-path-condition: "true"
  name: my-ingress
  namespace: my-namespace
spec:
  rules:
  - host: blabla.mycompany.com
    http:
      paths:
      - backend:
          service:
            name: my-service
            port:
              number: 80
        pathType: ImplementationSpecific

原理说明

alb.ingress.kubernetes.io/skip-default-path-condition注解会告诉ALB Ingress Controller:不要为Ingress的路径配置自动生成对应的ALB规则条件。此时控制器只会基于Ingress的host字段生成主机头条件,再加上你通过conditions.my-service定义的4个额外条件,总条件数刚好为5,不会触发ALB的规则条件数限制。

内容的提问来源于stack exchange,提问作者uylmz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 04:34:58