Kubernetes

K8s 故障排查面试题

·3 分钟阅读·1020 字
📋 目录

K8s 故障排查面试题


💡 ClusterIP 连通超时

【题目】 K8s Pod 状态 Running,curl ClusterIP:port 超时无法连通,排除安全组,列举 4 类生产高频故障+排查命令?

【参考答案】

  1. readiness 探针失败,Pod 未加入 ep:kubectl get ep svc-name
  2. 进程监听 127.0.0.1 未监听 0.0.0.0:kubectl exec -it pod -- ss -ltnp
  3. kube-proxy 异常 ipvs/iptables 规则丢失:ipvsadm -Ln
  4. 节点内核防火墙、nftables 拦截端口:iptables-save / nft list ruleset

💡 ipvs 长连接断连

【题目】 K8s 集群大规模部署,kube-proxy 选用 ipvs,上线后出现大量长连接偶发断连、源端口耗尽,原因+优化配置?

【参考答案】 根因:ipvs 默认端口回收慢,内核 tcp_tw_reuse 参数不合理 优化:内核调优 tcp 回收参数、ipvs 配置 tcp 超时时间、开启端口复用


💡 PDB 生产配置

【题目】 K8s PDB 生产作用?什么业务必须配置?drain 节点时 PDB 阻止驱逐如何应急处理?

【参考答案】 PDB 限制集群主动运维时最小可用副本 必须配置:网关、注册中心、数据库中间件 应急:临时调高最小可用配额、短时删除 PDB


💡 GPU Pod 无法申请资源

【题目】 GPU 节点 K8s 集群,nvidia-device-plugin 正常运行,新创建 GPU Pod 提示无法申请 nvidia.com/gpu 资源,全链路排障?

【参考答案】

  1. 节点 GPU 资源已被存量 Pod 占满
  2. device-plugin 标签/污点变更,节点失去 GPU 资源上报
  3. Pod 资源声明字段书写错误(nvidia.com/gpu 拼写错误)
  4. kube-scheduler 调度策略阻止调度

💡 滚动升级错误率飙升

【题目】 全量业务滚动升级中,5 分钟后监控错误率从 0 飙升至 30%,要求用户零损失紧急止损回滚,操作步骤?

【参考答案】

  1. 暂停新版本放量,Ingress/SLB 权重 100% 切回旧版本
  2. kubectl rollout undo deployment 回滚
  3. 临时关闭 HPA,防止旧实例被自动缩容销毁
  4. 流量恢复后再排查新版本 bug

关联文档