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 还在 ImagePullBackOffCrashLoopBackOffPending,先不要看 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
相关文章
|
16天前
|
人工智能 JSON 供应链
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
LucianaiB分享零成本畅用JVS Claw教程(学生认证享7个月使用权),并开源GeoMind项目——将JVS改造为科研与产业地理情报可视化AI助手,支持飞书文档解析、地理编码与腾讯地图可视化,助力产业关系图谱构建。
23521 12
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
|
4天前
|
Shell API 开发工具
Claude Code 快速上手指南(新手友好版)
AI编程工具卷疯啦!Claude Code凭借任务驱动+终端原生的特性,成了开发者的效率搭子。本文从安装、登录、切换国产模型到常用命令,手把手带新手快速上手,全程避坑,30分钟独立用起来。
1303 7
|
5天前
|
人工智能 BI 持续交付
Claude Code 深度适配 DeepSeek V4-Pro 实测:全场景通关与真实体验报告
在 AI 编程工具日趋主流的今天,Claude Code 凭借强大的任务执行、工具调用与工程化能力,成为开发者与自动化运维的核心效率工具。但随着原生模型账号稳定性问题频发,寻找一套兼容、稳定、能力在线的替代方案变得尤为重要。DeepSeek V4-Pro 作为新一代高性能大模型,提供了完整兼容 Claude 协议的 API 接口,只需简单配置即可无缝驱动 Claude Code,且在任务执行、工具调用、复杂流程处理上表现极为稳定。
1405 3
|
10天前
|
人工智能 缓存 Shell
Claude Code 全攻略:命令大全 + 实战工作流(完整版)
Claude Code 是一款运行在终端环境下的 AI 编码助手,能够直接在项目目录中理解代码结构、编辑文件、执行命令、执行开发计划,并支持持久化记忆、上下文压缩、后台任务、多模型切换等专业能力。对于日常开发、项目维护、快速重构、代码审查等场景,它可以大幅减少手动操作、提升编码效率。本文从常用命令、界面模式、核心指令、记忆机制、图片处理、进阶工作流等维度完整说明,帮助开发者快速上手并稳定使用。
2556 4
|
3天前
|
人工智能 JSON BI
DeepSeek V4-Pro 接入 Claude Code 完全实战:体验、测试与关键避坑指南
Claude Code 作为当前主流的 AI 编程辅助工具,凭借强大的代码理解、工程执行与自动化能力深受开发者喜爱,但原生模型的使用成本相对较高。为了在保持能力的同时进一步降低开销,不少开发者开始寻找兼容度高、价格更友好的替代模型。DeepSeek V4 系列的发布带来了新的选择,该系列包含 V4-Pro 与 V4-Flash 两款模型,并提供了与 Anthropic 完全兼容的 API 接口,理论上只需简单修改配置,即可让 Claude Code 无缝切换为 DeepSeek 引擎。
975 0
|
20天前
|
人工智能 缓存 BI
Claude Code + DeepSeek V4-Pro 真实评测:除了贵,没别的毛病
JeecgBoot AI专题研究 把 Claude Code 接入 DeepSeek V4Pro,跑完 Skills —— OA 审批、大屏、报表、部署 5 大实战场景后的真实体验 ![](https://oscimg.oschina.net/oscnet/up608d34aeb6bafc47f
6082 22
Claude Code + DeepSeek V4-Pro 真实评测:除了贵,没别的毛病
|
21天前
|
人工智能 JSON BI
DeepSeek V4 来了!超越 Claude Sonnet 4.5,赶紧对接 Claude Code 体验一把
JeecgBoot AI专题研究 把 Claude Code 接入 DeepSeek V4Pro 的真实体验与避坑记录 本文记录我将 Claude Code 对接 DeepSeek 最新模型(V4Pro)后的真实体验,测试了 Skills 自动化查询和积木报表 AI 建表两个场景——有惊喜,也踩
7345 18