K8s 与云原生故障排查 · 系列目录

叙事框架:容器排障的独特之处在于可见性缺失 总计 82 篇,已发布 33 篇,49 篇待完善


一、Pod / 工作负载类

二、网络类

三、存储类

四、集群 / 节点类

  • ⏳ K8s 节点 NotReady 排查实录
  • ⏳ kubelet 证书过期导致节点无法注册
  • ⏳ etcd 性能瓶颈导致集群不稳定
  • ⏳ 控制面组件(kube-apiserver/scheduler/controller-manager)异常排查
  • ⏳ 集群 DNS(CoreDNS)解析失败或性能下降
  • ⏳ 集群资源碎片化:节点资源充足但 Pod 调度失败
  • ⏳ K8s 版本升级踩坑:从 kubeadm 升级到集群迁移
  • ⏳ 节点内核版本不统一导致应用行为不一致
  • ⏳ 节点备用(cordon/drain)操作导致现有 Pod 被驱逐
  • ⏳ 污点和容忍度配置错误导致关键 Pod 被调度到错误节点
  • ⏳ kube-proxy 模式切换(iptables→IPVS)引发的连接异常

五、资源管理类

  • ⏳ 命名空间资源配额 ResourceQuota 设太严导致部署失败
  • ⏳ LimitRange 默认资源限制导致 Pod 启动参数被覆盖
  • ⏳ 服务质量类(Guaranteed/Burstable/BestEffort)选错导致 OOM 优先被杀
  • ⏳ 集群资源超分导致节点压力过大
  • ⏳ 节点资源预留(kube-reserved/system-reserved)配置不当

六、监控 / 可观测类

  • ⏳ Metrics Server 部署失败排坑
  • ⏳ K8s 日志收集方案(EFK/Loki)配置导致 Pod 日志丢失
  • ⏳ 容器内 Java 应用监控指标不准——cgroup 视角的 CPU/内存误解
  • ⏳ Prometheus 采集目标丢失——ServiceMonitor 配置排查
  • ⏳ K8s Audit Log 未开启——安全事件无法溯源
  • ⏳ 事件(Events)信息太多淹没有效告警

七、容器运行时类

  • ⏳ 容器中 Java 进程 CPU 使用率不准——容器视角的 CPU 误解
  • ⏳ 容器中 -Xmx 不生效?JVM 不能识别 cgroup 限制
  • ⏳ 容器镜像太大导致拉取超时——镜像分层优化
  • ⏳ 容器内文件系统性能问题——overlay2 vs aufs 选型
  • ⏳ Docker/Containerd 运行时异常——daemon 日志排查
  • ⏳ 镜像拉取策略 ImagePullPolicy 引发的版本不一致
  • ⏳ 容器退出码(Exit Code)看不懂——137/139/143 分别代表什么
  • ⏳ Init Container 资源占用过高阻塞后续容器启动

八、安全 / 权限类

  • ⏳ RBAC 权限配置不当导致 CI/CD 部署失败
  • ⏳ ServiceAccount 没配好导致 Pod 无法调用 API
  • ⏳ PodSecurityPolicy/PSA 限制过严导致容器无法启动
  • ⏳ 镜像安全扫描漏洞修复后镜像更新策略问题
  • ⏳ Secret 加密存储(etcd 加密/KMS)配置排查
  • ⏳ 容器以 root 运行的安全风险与配置检查

九、CI/CD / GitOps 类

  • ⏳ Helm Chart 升级失败——values 覆盖顺序理解错误
  • ⏳ K8s 滚动更新策略导致服务中断——maxSurge/maxUnavailable 设错
  • ⏳ ConfigMap/Secret 更新后 Pod 不自动重启
  • ⏳ ArgoCD 同步状态显示 OutOfSync——资源漂移排查
  • ⏳ Kustomize overlay 层配置覆盖关系理解错误

十、集群运维类

  • ⏳ 证书管理:kubelet/kube-apiserver 证书到期处理流程
  • ⏳ 集群备份和恢复(Velero)失败排查
  • ⏳ 节点内核升级后需要重启——Pod 迁移策略
  • ⏳ 集群联邦(Cluster Federation)多集群管理问题
  • ⏳ K8s 控制面高可用配置——多 apiserver 负载均衡排障
  • ⏳ 集群网络 MTU 不一致导致 Pod 通信异常

最后更新:2026-06