运维面试高频真题汇总:15道高频题+标准答案
- 2026-09-18 20:58:29
运维面试高频真题汇总:15道高频题+标准答案金三银四、金九银十,加上现在大厂小厂都在招运维,面试官那几道题翻来覆去就那些。我把高频真题按方向分了类,每题附标准答案,建议收藏反复刷。别光背,能讲出自己踩过的坑才是真的会。 --- 软链接是独立文件,指向源文件路径,可跨文件系统、可链目录,源文件删了软链就失效(悬空)。硬链接和源文件共用同一个 inode,不能跨文件系统、不能链目录,删掉任意一个不影响数据,只有最后一个链接删了数据才真正释放。 三种常见情况:inode 耗尽(`df -i` 看,小文件太多会把 inode 占满);文件系统被挂成只读(磁盘错误或 `errors=remount-ro`);某个大文件被删但进程还占着句柄(`lsof | grep deleted`,空间不释放)。 `dmesg | grep -i oom` 看被 kill 的 pid 和得分;被选中通常是因为它占用内存最多。长期方案:调 `oom_score_adj` 保护关键进程,查应用内存泄漏,设 cgroup 内存上限。 --- 客户端发 SYN,服务端回 SYN+ACK,客户端再发 ACK,连接建立。本质是用三次交互确认双方的收发能力都正常。 TIME_WAIT 在主动关闭方,是正常状态(保证最后一个 ACK 可靠、防旧报文串扰)。过多说明短连接太频繁。处理:开启 `tcp_tw_reuse=1`、用长连接、连接池复用;别轻易关 `tcp_tw_recycle`(已废弃且有坑)。 端口通只说明 TCP 层没问题,业务超时多半在应用层。用 `curl -w "%{time_connect} %{time_starttransfer} %{time_total}"` 看连接/首字节/总耗时分段;`tcpdump` 抓包看卡在哪一段;再查 DNS 解析、后端慢查询、TLS 握手。 --- SLI 是具体的度量指标(如请求成功率、延迟);SLO 是给 SLI 定的目标值(如成功率 99.9%);错误预算 = 1 - SLO 的可用额度(如每月允许 0.1% 失败)。预算没烧完可以放心发版,烧完了就停新功能、保稳定。 限流是控制入口 QPS,防止系统被冲垮;熔断是依赖服务故障时快速失败,避免雪崩;降级是保核心功能,非核心的直接返回默认值或走简化逻辑。 看历史峰值的 QPS/资源占用,乘以业务增长系数,再加冗余(通常 30–50%);用压测验证瓶颈;设利用率告警;最后 HPA/弹性兜底。别拍脑袋买机器。 --- `kubectl describe pod` 看 Events:最常见是节点资源不够(CPU/内存 request 满足不了)、节点亲和/污点(toleration)不匹配、PVC 绑不上、或者镜像拉取失败(私有仓库没配 imagePullSecret)。 检查:metrics-server 装了没、指标有没有数据;HPA 里 target 的指标名写错(比如用了不存在的 metric);minReplicas 可能限制了下限;Pod 没设 resource request,导致算不出利用率,HPA 直接不工作。 用环境变量的方式注入,必须重启 Pod 才生效;用 volume 挂载的方式,kubelet 会定期同步(有缓存延迟,几十秒到几分钟),或触发一次滚动更新立刻生效。 --- 开慢查询日志定位,用 `EXPLAIN` 看执行计划,加合适索引、避免全表扫;改写 SQL 减少回表;大表考虑分库分表。索引不是越多越好,写多读少的表索引多了反而拖慢写入。 看 `Seconds_Behind_Master`:大事务(比如一次性删几百万行)、从库硬件/配置差、网络抖动、单线程复制跟不上写峰。解决:拆大事务、升级从库、开并行复制(多线程 apply)。 查 `innodb_lock_waits` / `information_schema` 锁视图,找到互相等待的两个事务;根本解法:统一加锁顺序、缩短事务、降低隔离级别、控制并发。死锁发生时 MySQL 会回滚代价小的事务,应用要能重试。 --- **项目经验 > 八股**:准备 2–3 个能讲深的故障复盘,讲清"现象→排查→根因→整改",比背标准答案加分多。 **简历每条都能展开**:写上去的每一项,面试官都可能追问"为什么这么做、结果指标是多少",答不上来就是减分。 **算法别裸考**:很多厂考中等难度算法,LeetCode 热题先刷一遍。 **反问环节有准备**:问团队规模、告警体系、oncall 机制、技术栈演进,既显专业也帮你判断坑不坑。 --- 你被问过最刁钻的运维面试题是什么?或者哪道题当场卡壳了?评论区聊聊,我挑典型的后续出一篇深度解析。 觉得有用收藏起来,跳槽前刷一遍;也转发给正准备面试的运维兄弟,互相提个醒。
一、Linux 基础
Q1:软链接和硬链接区别?
Q2:磁盘显示有空间,但写不进文件,为什么?
Q3:OOM Killer 杀进程后怎么定位?
二、网络
Q4:TCP 三次握手?
Q5:TIME_WAIT 过多怎么处理?
Q6:端口能通但业务超时?
三、SRE / 稳定性
Q7:SLO、SLI、错误预算是什么?
Q8:熔断、降级、限流区别?
Q9:容量规划怎么做?
四、云原生 / K8s
Q10:Pod 一直 Pending?
Q11:HPA 不扩不缩?
Q12:改了 ConfigMap,Pod 里没生效?
五、数据库
Q13:慢查询怎么优化?
Q14:主从延迟怎么排查?
Q15:死锁怎么处理?
六、准备建议(比背题重要)
本文来自网友投稿或网络内容,如有侵犯您的权益请联系我们删除,联系邮箱:wyl860211@qq.com 。