Skip to content

K8s运维工程师 - 面试帮助文档

基于 JD:混合云环境下 Kubernetes 集群运维、算力平台保障、可观测体系建设、运维自动化与 AI Agent 工具应用。


一、岗位核心能力画像

维度重点
基础能力Linux 排障、Kubernetes 对象与运维场景、公有云/私有云基础产品
进阶能力混合云多集群运维、算力/Agent 任务调度保障、SRE 稳定性建设
工具能力Prometheus/Grafana/Alertmanager/Loki/ELK、Shell/Python/Go
AI 能力熟练使用 Claude Code/Codex 等 AI Agent 辅助运维开发与排障

二、高频面试问题与回答思路

2.1 Linux 系统与排障

Q1:线上 CPU 飙高,如何排查?

  • top/htop 定位高 CPU 进程与线程
  • pidstat -t -p <pid> 看线程级 CPU 占用
  • perf top / perf record 抓热点函数
  • 结合应用日志、火焰图分析耗时路径
  • 检查是否因 GC、死循环、定时任务或流量突增导致

Q2:内存 OOM 排查思路?

  • dmesg | grep -i "killed process" 查看 OOM 日志
  • free -mvmstatsar -r 分析内存趋势
  • pmap/proc/<pid>/status 看进程内存分布
  • 检查缓存使用、内存泄漏、大对象、未限制资源

Q3:磁盘 IO 高如何处理?

  • iostat -x 1iotop 定位高 IO 进程
  • df -hdu -sh 排查磁盘空间与目录占用
  • 检查日志暴涨、临时文件、大文件删除未释放(lsof +L1
  • 评估是否需要拆分存储、限速或扩容

Q4:网络不通怎么排查?

  • 分层排查:物理层 → 链路层 → 网络层 → 传输层 → 应用层
  • ip addrip routess -snetstat -antp
  • pingtraceroutetelnet/nc 测试连通性与端口
  • 检查安全组/ACL、iptables/nftables、DNS、MTU、Conntrack

2.2 Kubernetes 核心与排障

Q5:K8s 核心对象及使用场景?

对象用途
Pod最小调度单元
Deployment无状态应用滚动更新/扩缩容
StatefulSet有状态应用(数据库、消息队列)
DaemonSet每个节点运行一个 Pod(日志、监控 Agent)
Service集群内服务发现与负载均衡
Ingress七层流量入口
ConfigMap/Secret配置与敏感信息管理
PV/PVC/StorageClass持久化存储
Namespace资源隔离
RBAC权限控制

Q6:Pod Pending 的常见原因?

  • 资源不足:CPU/内存/磁盘/GPU 不够
  • 节点亲和性/反亲和性、污点容忍不匹配
  • PVC 未绑定或 StorageClass 问题
  • 镜像拉取失败
  • 调度策略限制(PodTopologySpread、ResourceQuota)

Q7:CrashLoopBackOff 如何排查?

  • kubectl describe pod 看 Events
  • kubectl logs --previous 看上次退出日志
  • 检查启动命令、环境变量、依赖服务、资源限制
  • 进入容器调试:kubectl debug 或临时修改 command

Q8:OOMKilled 调优思路?

  • 确认是真实内存不足还是 Limit 设置过低
  • 优化应用内存使用、调整 JVM/Node/Python 堆内存参数
  • 合理设置 Request/Limit,避免 Limit 过小触发 OOM
  • 使用 VPA 动态建议资源配额

Q9:节点 NotReady 怎么处理?

  • kubectl describe node 看 Conditions
  • 检查 kubelet 状态:systemctl status kubelet
  • 检查节点资源:磁盘压力、内存压力、PID 压力
  • 查看节点日志:journalctl -u kubelet -f
  • 检查网络插件(CNI)、Docker/containerd 运行时

Q10:Service 不通怎么排查?

  • 确认 Pod 是否 Ready,Endpoints 是否存在
  • kubectl get endpoints <svc>
  • 检查 kube-proxy 规则:iptables -t nat -L 或 ipvsadm
  • 测试 DNS:nslookup <svc>.<ns>.svc.cluster.local
  • 检查 NetworkPolicy、安全组、CNI 插件状态

Q11:CoreDNS 异常排查?

  • 查看 CoreDNS Pod 状态与日志
  • 检查 ConfigMap:coredns 的 upstream DNS
  • 检查是否有循环转发(loop plugin)
  • 关注 DNS 缓存、QPS、解析延迟,必要时扩容 CoreDNS

Q12:Ingress 访问异常?

  • 检查 Ingress 规则、Service、Endpoints
  • 查看 Ingress Controller 日志
  • 检查证书是否过期
  • 排查后端健康检查失败、超时配置、Rewrite 规则

2.3 云产品与混合云

Q13:混合云 K8s 运维的挑战?

  • 网络互通:VPC 对等连接、专线、VPN
  • 统一认证与权限管理
  • 镜像与配置跨云同步
  • 流量调度与容灾切换
  • 成本分摊与资源治理
  • 多云监控告警统一

Q14:熟悉哪些云产品?

  • 计算:云主机/裸金属/弹性伸缩
  • 网络:VPC、子网、安全组、负载均衡、NAT 网关
  • 存储:云盘、对象存储、文件存储
  • 安全:IAM、KMS、WAF

2.4 可观测性体系

Q15:如何建设监控告警体系?

  • Metrics:Prometheus + Grafana,核心指标包括节点资源、Pod 资源、K8s 组件、应用黄金指标(延迟/流量/错误/饱和度)
  • Logging:Loki 或 ELK,按 Namespace、Pod、应用聚合
  • Tracing:Jaeger/Tempo/SkyWalking,定位链路性能瓶颈
  • Alerting:Alertmanager,分级告警、抑制、静默、路由
  • On-call:PagerDuty/飞书/钉钉/企业微信集成

Q16:Prometheus 高可用方案?

  • Prometheus HA:双副本 + Thanos 远端存储
  • 使用 Thanos Sidecar/Receive/Query 实现全局查询与长期存储
  • Remote Write 到 VictoriaMetrics/Cortex
  • Alertmanager 集群模式避免单点

Q17:如何减少告警噪音?

  • 告警分级(P0/P1/P2/P3)
  • 设置合理的阈值与持续时间
  • 告警抑制与依赖分组
  • 定期复盘,清理无效告警
  • 引入 SLO/SLI,基于错误预算告警

2.5 运维自动化与 SRE

Q18:你做过哪些运维自动化工具?

  • 自动巡检脚本:集群/节点/Pod/证书/镜像漏洞扫描
  • 批量变更工具:ConfigMap/Secret 分发、镜像更新、节点打补丁
  • 资源回收:僵尸 Pod、未使用 PVC/LB/IP 清理
  • 弹性伸缩:HPA/VPA/Cluster Autoscaler/自定义调度器
  • 成本统计:按 Namespace/业务线分摊资源成本
  • 故障自愈:节点异常自动驱逐、Pod 自动重启、服务降级

Q19:Runbook 应包含哪些内容?

  • 故障现象与影响范围
  • 快速止血步骤(降级/回滚/扩容/切流)
  • 根因排查命令与检查清单
  • 修复操作与验证方法
  • 复盘与改进项

Q20:变更管理如何保障稳定性?

  • 变更评审、灰度发布、蓝绿/金丝雀
  • 可回滚、可观测、可审计
  • 变更窗口、双人复核、自动化变更平台

2.6 AI Agent 工具应用

Q21:如何用 Claude Code/Codex 提升运维效率?

  • 辅助编写 Shell/Python/Go 运维脚本
  • 自动生成 K8s YAML、Terraform、Ansible Playbook
  • 分析日志/监控数据,定位异常模式
  • 生成故障复盘报告与 Runbook
  • 代码 Review 与配置审计

Q22:AI 辅助运维的安全与可控性如何保障?

  • 明确权限边界,AI 操作最小权限原则
  • 关键变更需人工审批,禁止自动执行高危操作
  • 所有 AI 生成内容与操作记录审计日志
  • 对 AI 输出进行校验与测试,避免幻觉导致事故
  • 敏感数据脱敏,避免上传至外部 AI 服务

三、算力平台与 Agent 任务保障(加分重点)

该岗位强调算力平台大量 Agent 任务的稳定运行,面试中可能重点考察:

方向准备要点
任务调度了解 K8s Scheduler、自定义调度器、队列调度、批量调度(Volcano/Yunikorn)
资源池管理CPU/内存型资源池划分、节点亲和性、资源配额、LimitRange、ResourceQuota
容器异常Pod 频繁重启、任务卡住、资源竞争、Sidecar 干扰主容器
网络异常大量短连接、DNS 解析压力、东西向流量、带宽打满
存储异常共享存储挂载、临时存储清理、日志量过大
成本优化资源利用率分析、Spot/抢占式实例、弹性伸缩、任务调度错峰

准备建议:结合实际项目,准备 1-2 个关于"保障 Agent 任务高并发稳定运行"的案例。


四、面试准备清单

4.1 技术复习

  • [ ] Linux 性能分析工具:top/htop、iotop、pidstat、vmstat、iostat、perf
  • [ ] K8s 对象、调度、网络、存储、安全
  • [ ] K8s 排障命令与常见错误码
  • [ ] Prometheus/Grafana/Alertmanager/Loki/ELK 基础架构
  • [ ] 至少一门脚本语言:Shell/Python/Go
  • [ ] 公有云/私有云基础产品
  • [ ] SRE 稳定性建设:SLO、on-call、故障复盘、混沌工程

4.2 项目复盘

  • [ ] 准备 1 个 K8s 集群建设/运维项目
  • [ ] 准备 1 个故障排查/稳定性保障案例(STAR 法则)
  • [ ] 准备 1 个自动化/平台化建设案例
  • [ ] 准备 AI Agent 工具使用经验与安全意识

4.3 行为面试

  • 你如何平衡稳定性与迭代效率?
  • 遇到线上重大故障,你的处理流程是什么?
  • 你如何推动团队使用自动化/AI 工具?
  • 描述一次跨团队协作解决复杂问题的经历。

五、推荐学习资源

类型资源
K8s 官方Kubernetes 官方文档、kubectl cheatsheet
Linux 性能Brendan Gregg《Systems Performance》
SREGoogle SRE Book、《Kubernetes 最佳实践》
可观测性Prometheus 官方文档、Grafana Labs 教程
AI 运维Claude Code/Codex 官方文档、提示工程最佳实践

六、简历亮点建议

  1. 量化成果:例如"保障 X 节点、Y Pod 的 K8s 集群稳定性,P0 故障下降 Z%"
  2. 突出混合云/多集群经验
  3. 强调算力平台/Agent 任务/调度平台经验
  4. 展示自动化工具与 AI 辅助运维实践
  5. 提及可观测体系建设与成本优化成果

祝你面试顺利!