k8s-ingress-503

Kubernetes Ingress 503 的定位与修复

现象

通过 Ingress 访问返回 503 Service Temporarily Unavailable。Ingress 控制器找不到可用后端或 Endpoints 为空,通常不是 Ingress 本身的问题。

快速定位

kubectl get ingress -n <ns>
kubectl describe ingress <ingress> -n <ns>
kubectl get svc <svc> -n <ns> -o wide
kubectl get endpoints <svc> -n <ns>
kubectl get pods -n <ns> -l <selector> -o wide
kubectl logs -n ingress-nginx <controller-pod> --tail=100

常见根因

  1. Service selector 与 Pod 标签不匹配,Endpoints 为空。
  2. Pod 未就绪,readiness 失败被摘除。
  3. Service 端口名和 Ingress service.port.name 不一致。
  4. Ingress 控制器未运行或配置未生效。
  5. NetworkPolicy 阻止控制器访问后端。
  6. 后端端口错误、应用未监听或 TLS/annotation 配置错误。

修复

相关命令