K8s Ingress 502 排查:先看 Service、Endpoints 和 readinessProbe

简介: 本文详解K8s中Ingress返回502的系统化排查思路:不盲目修改Ingress,而是按Pod→Service→Endpoints→readinessProbe→Ingress逐层验证。重点检查Pod就绪状态、Service selector与targetPort匹配性、Endpoints是否为空、健康探针配置合理性等核心环节,直击502根本原因——上游服务未就绪。(239字)

这次记录一个 K8s 里的 502 问题。

应用 Pod 已经启动,Ingress 也配置好了,域名能访问到网关,但返回 502。

这类问题不要一上来就改 Ingress。我的排查顺序是:Pod、Service、Endpoints、readinessProbe,最后才看 Ingress。

环境

项目 内容
集群 K8s 测试集群
入口 Ingress
服务 Web 应用
现象 Ingress 返回 502

第一步:确认 Pod 状态

kubectl get pods -o wide
kubectl describe pod <pod-name>
kubectl logs <pod-name> --tail=100

如果 Pod 还在 ImagePullBackOff、CrashLoopBackOff 或 Pending,先不要看 Ingress。

镜像拉不下来时,先排节点网络、镜像仓库和拉取凭据。

第二步:确认 Service 端口

查看 Service:

kubectl get svc
kubectl describe svc web

重点看:

  • port
  • targetPort
  • selector

常见错误是 Service selector 没匹配到 Pod,或者 targetPort 和容器监听端口不一致。

第三步:看 Endpoints

kubectl get endpoints web

如果 Endpoints 为空,Ingress 就到不了后端。

这时常见原因:

  • Service selector 写错。
  • Pod label 不匹配。
  • readinessProbe 没通过。
  • Pod 不在 Ready 状态。

继续看:

kubectl get pods --show-labels
kubectl describe pod <pod-name>

第四步:readinessProbe

很多应用启动慢,容器 Running 了,但 readinessProbe 没过。

示例:

readinessProbe:
  httpGet:
    path: /health
    port: 8080
  initialDelaySeconds: 10
  periodSeconds: 5

如果 /health 路径不存在,Pod 会一直不 Ready,Service Endpoints 可能为空。

先在 Pod 内测试:

kubectl exec -it <pod-name> -- wget -S -O- http://127.0.0.1:8080/health

第五步:再看 Ingress

确认 Pod、Service、Endpoints 都正常后,再看 Ingress:

kubectl describe ingress web
kubectl get ingress

检查:

  • host 是否正确。
  • path 是否匹配。
  • serviceName 是否正确。
  • servicePort 是否正确。
  • Ingress Controller 日志是否有 upstream 错误。

排查清单

层级 命令 目标
Pod kubectl get pods 是否 Running / Ready
镜像 kubectl describe pod 是否 ImagePullBackOff
Service kubectl describe svc selector 和 targetPort
Endpoints kubectl get endpoints 是否有后端地址
Probe kubectl describe pod readiness 是否通过
Ingress kubectl describe ingress host/path/service 是否正确

小结

Ingress 502 的本质是入口没有拿到健康上游。

所以不要只盯 Ingress YAML。先确认 Pod Ready,再确认 Service 选中了 Pod,再确认 Endpoints 有地址。

如果 Endpoints 是空的,Ingress 配得再漂亮也没用。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
6月前
|
Kubernetes 测试技术 Docker
Jellyfin 上 K8s 前,先把镜像、PVC 和权限排一遍
本文记录Jellyfin从Docker Compose迁移至K8s测试环境的典型问题排查:镜像拉取慢、PVC未绑定致媒体目录为空、容器用户权限不足、路径配置错误等。强调K8s中“宿主机→PV→PVC→volumeMount→容器路径”的分层模型,须逐层验证,避免误判。
|
3月前
|
弹性计算 运维 Kubernetes
2026年8月ECS与containerd可用镜像源清单
本文整理了2026年8月适用于ECS、Kubernetes及containerd节点的9个国内镜像源清单,涵盖Docker Hub、GHCR、K8s、Quay、MCR等主流Registry,并完成端点与manifest级验证。强调需在真实worker节点实测,而非运维机模拟;提供containerd配置、逐源验证及ImagePullBackOff排查方法。(239字)
|
8月前
|
人工智能 Kubernetes 安全
OpenClaw 在严肃场景下的实践:迁移 Ingress NGINX
Kubernetes 官方声明说得很清楚:你只有两个月时间。
398 53
|
7月前
|
运维 Kubernetes 应用服务中间件
CI/CD流水线镜像拉取耗时从47分钟降到2分钟,我做了这几件事
换镜像加速源,CI/CD构建从47分钟骤降至2分钟!非代码/硬件优化,仅切换为毫秒镜像(1ms.run)——全源加速(Docker Hub、GHCR、k8s.gcr等),30台服务器10分钟批量配置,失败率归零,凌晨发布成功率100%。
576 16
|
5月前
|
消息中间件 运维 监控
双十一前夜的"惊魂 30 秒":我的 1688 代采系统抗住 10 倍流量的架构演进之路
本文讲述一位跨境电商系统架构师老王,面对1688代采系统在业务爆发(月单量从1万增至8万)下屡次崩溃的困境,历经三次架构演进:从单体Django“能跑就行”,到引入RabbitMQ异步解耦,最终依托阿里云RocketMQ、Redis企业版、API网关等构建高可用体系,成功扛住双十一15000 QPS峰值。真实、硬核、可复用。
413 4
|
8月前
|
Kubernetes 应用服务中间件 API
【重磅推荐】告别Ingress NGINX后,我们的思考和建议
K8s社区宣布Ingress NGINX将于2026年3月正式退役:虽API仍受支持,但停止更新与安全修复。主因是高危漏洞频发(如CVE-2025-1974)、维护者严重不足及架构技术债沉重。推荐生产环境平滑迁移至阿里云ALB Ingress——免运维、高SLA、兼容NGINX注解,并迈向Gateway API标准化未来
1450 2
|
6月前
|
存储 人工智能 文字识别
端侧AI在工业AR终端上的部署实践:模型轻量化与MNN推理优化
本文针对工业AR终端(八核/3GB/Android)离线AI部署难题,提出轻量化(知识蒸馏+INT8量化+通道剪枝)与推理优化(MNN引擎、流水线并行、内存复用)方案。实测三模型总大小仅12MB,端到端延迟178ms,内存占用降低70%,续航影响可控,已落地电力巡检与化工安全场景。(239字)
954 4
 端侧AI在工业AR终端上的部署实践:模型轻量化与MNN推理优化
|
6月前
|
人工智能 安全 Linux
【安全公告】Linux 内核高危本地提权漏洞 CVE-2026-31431 龙蜥已修复,请及时升级更新
龙蜥社区已发布 Anolis OS 7/8/23 的官方安全修复公告 ANSA-2026:0566、ANSA-2026:0565、ANSA-2026:0564。受影响用户请立即完成修复。
|
5月前
|
机器学习/深度学习 人工智能 数据可视化
YOLO26如何涨点系列篇(NEU-DET缺陷检测) | CVPR2026 DEGConv方向引导边缘门控,破解细长裂缝检测难题 ,实现涨点
在NEU-DET数据集下验证:原始mAP50原始为 0.722提升至 0.732 , R 原始为 0.643 提升至 0.682 , mAP50-95原始为0.407提升至0.413
630 6
|
6月前
|
人工智能 监控 知识图谱
AI搜索时代的流量重构:Geo优化精细化运营标准与实战路径
本文将深入探讨在Geo优化中如何实现精细化运营,解析其核心标准与执行路径。
329 5

热门文章

最新文章