aws-load-balancer-controller配置Actions报错:端点未找到求助
问题分析
endpoints "add-auth-header-blah116" not found是kubectl的误报——add-auth-header-blah116是AWS ALB Controller定义的自定义Action,并非Kubernetes原生Service,无需关注该错误。- 认证头未添加的核心原因是路径匹配优先级冲突:你配置的
/路径使用Prefix类型,会匹配所有以/开头的请求(包括/ohif、/studies等子路径),导致ALB优先触发根路径规则,后续的自定义Action规则从未被执行。
修复步骤
1. 调整根路径匹配类型
将/路径的pathType改为Exact,仅匹配根路径请求,避免覆盖子路径规则:
- backend: service: name: blah116-clusterip port: name: orthanc-port path: / pathType: Exact
2. 优化子路径匹配规则(可选)
若需匹配/ohif下的所有子路径,将路径改为/ohif/*并保留ImplementationSpecific类型,或改为/ohif并使用Prefix类型:
- backend: service: name: add-auth-header-blah116 port: name: use-annotation path: /ohif/* pathType: ImplementationSpecific
3. 验证ALB配置
- 登录AWS控制台,找到目标ALB(
myapp-load-balancer),查看监听器规则,确认/ohif等路径的规则已正确配置,且包含RequestHeadersToAdd设置。 - 查看ALB Controller日志,排查是否存在解析或配置错误:
kubectl logs -n kube-system -l app.kubernetes.io/name=aws-load-balancer-controller
4. 测试认证头生效情况
使用curl测试目标路径,检查请求是否携带添加的Authorization头(或查看后端服务的请求日志):
curl -v https://blah116.myapp.com/ohif
额外注意事项
- 确认AWS ALB Controller 2.8.2版本支持
RequestHeadersConfig特性(该特性在v2.4+版本已引入)。 - 确保
blah116-clusteripService的orthanc-port端口确实映射到8042,与自定义Action中的ServicePort一致。
内容的提问来源于stack exchange,提问作者juanp_1982
相关产品推荐
相关产品推荐

