AKS中Grafana对应Ingress地址为空 公网访问返回404错误
AKS 集群 Grafana Ingress 地址为空、公网404的排查与解决
核心排查思路
结合现象判断——同集群另外两个Ingress可正常分配公网IP、端口转发可正常访问Grafana后端服务,问题完全出在Ingress Controller没有正常识别、加载Grafana对应的Ingress资源,不存在Grafana本身、后端Service配置的问题。按优先级从高到低排查:
- API版本不兼容,Ingress Controller未监听对应资源
当前Grafana Ingress使用了extensions/v1beta1这个已被Kubernetes彻底废弃的API版本。目前AKS上主流部署的Ingress-Nginx Controller 0.22以上版本,已经完全移除了对extensions/v1beta1版本Ingress的监听逻辑,控制器根本不会拉取、解析这个版本的Ingress资源,自然不会为它配置路由规则,也不会把负载均衡的公网IP写入Ingress的status字段,直接导致Address列显示为空。可以直接对比另外两个正常运行的Ingress的apiVersion,就能确认这个差异。 - 绑定的TLS密钥不存在,资源被控制器跳过加载
在Ingress的TLS段配置了绑定sec-tls这个密钥,Ingress-Nginx Controller的机制是:遇到绑定了不存在的TLS密钥的Ingress资源,会直接跳过整个资源的加载流程,不会为它生成任何路由规则。此时公网请求到了Ingress Controller后,因为没有匹配到对应host的路由规则,就会直接返回默认的404页面。 - Ingress Class关联不匹配
目前仅通过老注解kubernetes.io/ingress.class: nginx绑定Ingress类,新版Ingress-Nginx Controller默认优先识别spec.ingressClassName字段的配置,如果控制器开启了严格匹配模式,老注解绑定的Ingress会被直接忽略。部分自定义部署的Ingress Controller class名并非默认的nginx,注解值不匹配也会导致资源无法被关联。 - 同host下的路由规则冲突
配置的pathType: ImplementationSpecific在老版本Ingress-Nginx中默认按精确匹配处理,且同host下的/根路径规则优先级最高,如果集群内已经有其他Ingress配置了相同host、相同根路径的规则,新的Grafana路由会被直接覆盖失效。
对应解决步骤
- 升级Ingress资源的API版本,替换为当前集群控制器支持的稳定版本
先执行kubectl api-versions | grep networking确认集群支持的Ingress API版本,将原来的extensions/v1beta1替换为对应稳定版本(如networking.k8s.io/v1),同步调整字段结构:将原backend.serviceName改为backend.service.name、backend.servicePort改为backend.service.port.number,把pathType调整为Prefix,消除匹配歧义。 - 替换Ingress Class绑定方式
先执行kubectl get ingressclass查询集群中实际存在的Ingress Class名称,删除原有老注解,在Ingress的spec段添加ingressClassName: <和正常Ingress一致的class名称>,确保绑定关系和其他正常运行的Ingress完全一致。 - 校验TLS密钥有效性
执行kubectl get secret sec-tls -n ingress-basic确认该密钥存在且类型为kubernetes.io/tls;如果密钥不存在,要么先创建对应的TLS密钥,要么临时移除spec.tls段的配置做测试,排除密钥缺失导致的加载失败。 - 排查路由冲突
检查集群内是否有其他Ingress已经配置了相同的hostxxx.xxx.me,如果存在冲突,要么给Grafana配置独立的访问域名,要么将Grafana的访问路径调整为非根路径(如/grafana),同步配置路径重写规则,避免抢占现有同host的路由。
快速定位技巧:执行
kubectl describe ingress loki-grafana-ingress -n ingress-basic,查看返回的Events段报错信息,通常控制器未加载资源时会直接输出“密钥不存在”“Ingress Class不匹配”等明确提示,可直接对应修正。
内容的提问来源于stack exchange,提问作者Abbas Hallal
相关产品推荐
相关产品推荐

