EKS ALB Ingress无法为目标组注解后端端口问题咨询
解决ALB Ingress
backend-port注解在target-type: ip模式下不生效的问题 这不是Bug,是AWS ALB Ingress Controller的设计逻辑导致的:alb.ingress.kubernetes.io/backend-port注解仅在target-type: instance模式下生效,当你设置target-type: ip时,控制器会直接将Pod IP注册到目标组,此时端口由后端Service的targetPort(或Pod的containerPort)决定,该注解会被忽略。
针对你的场景,按以下步骤调整即可解决:
确认后端Service的端口配置
确保Service的targetPort明确指向Pod的容器端口(10987),示例Service配置如下:apiVersion: v1 kind: Service metadata: name: some-test namespace: development spec: selector: app: your-pod-label # 替换为你的Pod标签 ports: - port: 10987 targetPort: 10987 protocol: TCP移除Ingress中的无效注解
删除Ingress元数据中的alb.ingress.kubernetes.io/backend-port: '10987'注解,因为在target-type: ip模式下它不会起作用。验证Pod的容器端口配置
确保Pod的YAML中明确声明了containerPort: 10987,让控制器能正确识别后端监听端口:containers: - name: your-container-name image: your-image:tag ports: - containerPort: 10987
调整完成后,重新应用Ingress和Service配置,ALB的目标组就会自动使用10987端口作为后端流量转发端口。
内容的提问来源于stack exchange,提问作者JustARandomGuy
相关产品推荐
相关产品推荐

