Kubernetes 网络一出事,先别重启:一条从 Pod 打到内核的排查路线图

简介: Kubernetes 网络一出事,先别重启:一条从 Pod 打到内核的排查路线图

Kubernetes 网络一出事,先别重启:一条从 Pod 打到内核的排查路线图


说句掏心窝子的话:

Kubernetes 里,十个疑难杂症,八个最后都能追溯到“网络”。

服务超时、探针失败、Pod 起不来、节点 NotReady、偶发 502……
你去翻日志,啥也没有;
你问开发,人家说“我代码没改”;
你一看监控,CPU、内存都挺健康。

最后,锅往往落在一句很抽象的话上:

“网络好像不太稳定。”

而 Kubernetes 的网络,恰恰是最容易被“想当然”对待的东西

今天我想干一件事:
给你一条真正能落地的、从 Pod 一路查到 Linux 内核的排查路径。
不是技巧合集,而是一种系统化思维方式


一、先说结论:K8s 网络不是“一个东西”

很多人一排查就犯的第一个错是:

把 Kubernetes 网络,当成一个整体问题。

但在我眼里,它至少分 5 层

  1. Pod 内部网络
  2. Pod ↔ Pod(同节点 / 跨节点)
  3. Service / kube-proxy
  4. Node 网络 & CNI
  5. Linux 内核网络栈

你要是没分层,排查一定是乱的。


二、第一层:Pod 内部,别急着甩锅给集群

网络不通?
先别怪 CNI,先看 Pod 自己。

你第一步该干啥?

kubectl exec -it pod-a -- sh

然后在 Pod 里做三件事:

ip addr
ip route
ping 127.0.0.1

你要确认的只有几件小事:

  • Pod 有没有 IP?
  • 默认路由是不是指向 eth0?
  • 本地 loopback 通不通?

我见过真实事故:

Pod 用的是 distroless 镜像,
容器里连 ip 命令都没有,
最后靠猜查了一晚上。

结论很扎心:

你连 Pod 自己是不是“醒着的”都没确认,就开始怀疑整个集群。


三、第二层:Pod ↔ Pod,先区分“同节点”还是“跨节点”

这是一个90% 的人忽略、但极其关键的分叉点

怎么快速判断?

kubectl get pod -o wide

NODE 列。

情况 A:同一个 Node 上 Pod 不通

优先怀疑:

  • CNI bridge / veth
  • iptables / eBPF 规则异常
  • Pod 网卡被删了

你可以在 Node 上看:

ip link | grep veth

如果 veth 对不上,那基本已经接近真相了。

情况 B:跨 Node 才不通

那你要开始怀疑:

  • Node 间路由
  • Overlay 网络(VXLAN / Geneve)
  • 防火墙 / 安全组

一个很实用的命令:

kubectl exec pod-a -- traceroute pod-b-ip

看包卡在哪一跳,比你盲猜一小时都有用。


四、第三层:Service 不通?别急着骂 kube-proxy

我见过太多人,一遇到 Service 问题就一句话:

“kube-proxy 又抽风了。”

但事实是:
Service 只是 iptables / IPVS 规则的“外壳”。

你该确认三件事:

1️⃣ Endpoints 对不对?

kubectl get endpoints svc-name

如果这里是空的,那网络再好也没用。

2️⃣ kube-proxy 模式是啥?

kubectl -n kube-system get cm kube-proxy -o yaml

iptables 还是 IPVS?
排查方式完全不一样。

3️⃣ Node 上规则是否存在?

iptables 模式:

iptables -t nat -L | grep svc-name

IPVS 模式:

ipvsadm -Ln

我踩过一个很典型的坑:

kube-proxy 在
Node 上 OOM 被杀了,
规则还在,但不再更新。

结论:

Service 出问题,很多时候是“数据面还在,控制面已经死了”。


五、第四层:CNI 网络,问题集中营

说句大实话:

Kubernetes 网络 80% 的复杂度,都在 CNI。

无论你用的是:

  • Calico
  • Flannel
  • Cilium

你都必须搞清楚三件事:

  1. Pod IP 怎么来的
  2. 跨节点流量怎么走
  3. 策略在哪一层生效

以 Calico 为例

你至少得会看:

calicoctl node status
calicoctl get ippool -o yaml

我遇到过一个很经典的事故:

IPPool CIDR 改了,
老节点没同步,
新 Pod 分配的 IP 根本路由不到。

表面现象:

  • Pod 偶发不通
  • 重启“有时好,有时坏”

这类问题,不系统排查,你根本抓不到。


六、第五层:Linux 内核,真·终极形态

当你走到这一步,说明:

你已经比 80% 的 K8s 使用者走得更深了。

几个你必须掌握的工具:

conntrack 表爆了

conntrack -L | wc -l

再看看最大值:

sysctl net.netfilter.nf_conntrack_max

真实线上事故:

高并发短连接
conntrack 满
新连接直接被 DROP
应用层只看到 timeout


丢包?别光看网卡

ethtool -S eth0
netstat -s

再配合:

tcpdump -i eth0

抓包不是为了装逼,是为了终止争论。


七、我自己的一个“血泪总结”

干了这么多年运维,我越来越坚定一个观点:

Kubernetes 网络排查,拼的不是命令多,而是路径清楚。

如果你愿意记住一句话,那就是:

从 Pod 开始,一层一层往下,不要跳步。

  • 不要一上来重启节点
  • 不要一上来升级 CNI
  • 不要一上来甩锅云厂商

因为:

重启解决的问题,通常不是被你解决的,而是被你“掩盖”的。


写在最后

Kubernetes 网络这玩意儿,说难是真难,
但一旦你脑子里有了分层模型
很多“玄学问题”会突然变得特别理性。

目录
相关文章
|
12天前
|
人工智能 自然语言处理 Shell
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
本教程指导用户在开源AI助手Clawdbot中集成阿里云百炼API,涵盖安装Clawdbot、获取百炼API Key、配置环境变量与模型参数、验证调用等完整流程,支持Qwen3-max thinking (Qwen3-Max-2026-01-23)/Qwen - Plus等主流模型,助力本地化智能自动化。
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
|
7天前
|
人工智能 安全 机器人
OpenClaw(原 Clawdbot)钉钉对接保姆级教程 手把手教你打造自己的 AI 助手
OpenClaw(原Clawdbot)是一款开源本地AI助手,支持钉钉、飞书等多平台接入。本教程手把手指导Linux下部署与钉钉机器人对接,涵盖环境配置、模型选择(如Qwen)、权限设置及调试,助你快速打造私有、安全、高权限的专属AI助理。(239字)
4391 12
OpenClaw(原 Clawdbot)钉钉对接保姆级教程 手把手教你打造自己的 AI 助手
|
8天前
|
人工智能 机器人 Linux
保姆级 OpenClaw (原 Clawdbot)飞书对接教程 手把手教你搭建 AI 助手
OpenClaw(原Clawdbot)是一款开源本地AI智能体,支持飞书等多平台对接。本教程手把手教你Linux下部署,实现数据私有、系统控制、网页浏览与代码编写,全程保姆级操作,240字内搞定专属AI助手搭建!
4713 17
保姆级 OpenClaw (原 Clawdbot)飞书对接教程 手把手教你搭建 AI 助手
|
6天前
|
人工智能 机器人 Linux
OpenClaw(Clawdbot、Moltbot)汉化版部署教程指南(零门槛)
OpenClaw作为2026年GitHub上增长最快的开源项目之一,一周内Stars从7800飙升至12万+,其核心优势在于打破传统聊天机器人的局限,能真正执行读写文件、运行脚本、浏览器自动化等实操任务。但原版全英文界面对中文用户存在上手门槛,汉化版通过覆盖命令行(CLI)与网页控制台(Dashboard)核心模块,解决了语言障碍,同时保持与官方版本的实时同步,确保新功能最快1小时内可用。本文将详细拆解汉化版OpenClaw的搭建流程,涵盖本地安装、Docker部署、服务器远程访问等场景,同时提供环境适配、问题排查与国内应用集成方案,助力中文用户高效搭建专属AI助手。
3070 8
|
10天前
|
人工智能 JavaScript 应用服务中间件
零门槛部署本地AI助手:Windows系统Moltbot(Clawdbot)保姆级教程
Moltbot(原Clawdbot)是一款功能全面的智能体AI助手,不仅能通过聊天互动响应需求,还具备“动手”和“跑腿”能力——“手”可读写本地文件、执行代码、操控命令行,“脚”能联网搜索、访问网页并分析内容,“大脑”则可接入Qwen、OpenAI等云端API,或利用本地GPU运行模型。本教程专为Windows系统用户打造,从环境搭建到问题排查,详细拆解全流程,即使无技术基础也能顺利部署本地AI助理。
7220 16
|
8天前
|
存储 人工智能 机器人
OpenClaw是什么?阿里云OpenClaw(原Clawdbot/Moltbot)一键部署官方教程参考
OpenClaw是什么?OpenClaw(原Clawdbot/Moltbot)是一款实用的个人AI助理,能够24小时响应指令并执行任务,如处理文件、查询信息、自动化协同等。阿里云推出的OpenClaw一键部署方案,简化了复杂配置流程,用户无需专业技术储备,即可快速在轻量应用服务器上启用该服务,打造专属AI助理。本文将详细拆解部署全流程、进阶功能配置及常见问题解决方案,确保不改变原意且无营销表述。
4961 5
|
10天前
|
人工智能 JavaScript API
零门槛部署本地 AI 助手:Clawdbot/Meltbot 部署深度保姆级教程
Clawdbot(Moltbot)是一款智能体AI助手,具备“手”(读写文件、执行代码)、“脚”(联网搜索、分析网页)和“脑”(接入Qwen/OpenAI等API或本地GPU模型)。本指南详解Windows下从Node.js环境搭建、一键安装到Token配置的全流程,助你快速部署本地AI助理。(239字)
4838 23
|
16天前
|
人工智能 API 开发者
Claude Code 国内保姆级使用指南:实测 GLM-4.7 与 Claude Opus 4.5 全方案解
Claude Code是Anthropic推出的编程AI代理工具。2026年国内开发者可通过配置`ANTHROPIC_BASE_URL`实现本地化接入:①极速平替——用Qwen Code v0.5.0或GLM-4.7,毫秒响应,适合日常编码;②满血原版——经灵芽API中转调用Claude Opus 4.5,胜任复杂架构与深度推理。
9024 13