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

Minikube环境Nginx Ingress无法找到服务端点返回502/404问题求助

故障根因定位与解决方案

首先明确:服务类型为LoadBalancer不是故障原因,Ingress控制器访问集群内服务时依赖Service的ClusterIP,和Service是LoadBalancer/NodePort/ClusterIP类型无关。

解决步骤按优先级执行:

  1. 移除错误配置的rewrite注解
    你之前添加的nginx.ingress.kubernetes.io/rewrite-target: /$1属于错误配置,匹配规则path: /下无分组参数传递给$1,反而会导致路径 rewrite 异常出现404,先删除该注解,恢复Ingress初始配置。

  2. 验证Pod就绪状态
    执行命令检查业务Pod状态:

kubectl get pods -l app=online

确认输出READY列为2/2(业务容器+Dapr Sidecar都就绪),若就绪状态异常,Endpoint不会被关联到Service,就会出现Ingress日志提示的无活跃Endpoint报错。

  1. 验证集群内Service连通性
    启动临时Pod测试集群内部是否能正常访问Service:
kubectl run -it --rm --image=curlimages/curl test -- curl http://online.default.svc.cluster.local:8080/userOnline

如果该请求返回异常,说明Service到Pod的链路存在问题,优先排查Service selector配置、Pod端口监听、网络策略拦截问题;如果请求正常返回OK,说明问题出在Ingress控制器链路。

  1. 刷新Ingress控制器缓存
    Ingress控制器缓存未及时更新也会出现找不到Endpoint的报错,执行命令重启Ingress控制器:
kubectl rollout restart deployment -n ingress-nginx ingress-nginx-controller

等待Pod重启完成后,再次执行curl online/userOnline测试。

  1. 检查Ingress绑定IP正确性
    执行命令获取Ingress的实际地址:
kubectl get ingress online-ingress

确认输出的ADDRESS字段和你写入/etc/hosts的192.168.49.2一致,不一致则修改hosts绑定关系。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 08:15:04