运维工程师面试线路
[ 2025.4.22更新 ]
运维工程师面试学习线路(七阶段高压实战流)
🎯 目标:掌握系统管理、网络配置、服务部署、自动化工具、监控告警、安全策略与高可用架构,具备抗压上线、事故处理、冷静重启的实战能力。
第一阶段:Linux 基础与系统管理
目标:没错,运维要从命令行开悟。鼠标?不存在的。
1. Linux 常用命令
top
,ps
,df
,du
,netstat
,lsof
,uptime
- 文件操作、用户权限、文件系统结构(/etc /proc /var)
2. 用户与权限管理
- 用户组、sudo、chown/chmod
- SSH 公钥登录配置
3. 系统启动与服务管理
- systemd:
systemctl
,journalctl
- crontab 定时任务
4. 面试常问
- 如何快速查看某个进程占用的端口和资源?
- SSH 卡顿或失败怎么办?查哪几层?
第二阶段:网络与基础设施配置
目标:网络问题一多,99%的锅先甩给你。所以你得真会。
1. 网络基础
- TCP/IP,子网掩码、端口、DNS、路由
ping
,traceroute
,telnet
,dig
,curl
,iptables
2. 服务部署
- Nginx/Apache 安装配置
- 域名绑定、反向代理、静态资源托管
- 配置 HTTPS(Let’s Encrypt)
3. 防火墙与安全
- UFW / firewalld 基础
- Fail2Ban、端口白名单、SSH 加固
4. 面试高频
- 服务部署后 curl 能通但浏览器打不开怎么排查?
- 一个服务突然无法访问,怎么一步步诊断?
第三阶段:脚本语言与自动化工具
目标:重复的命令不配由你敲第二遍。你是工程师,不是打字员。
1. Shell 脚本编写
- 条件判断、循环、函数、传参
awk
,sed
,xargs
,cut
,grep
熟练使用
2. Python 简易工具开发
- 日志分析脚本、接口监测脚本、API 拉数据
3. 自动化运维工具
- Ansible(agentless)、SaltStack、Fabric
- playbook 编写、inventory 管理
4. 面试问题
- 怎么写一个脚本监测服务器负载?
- Ansible 和 Shell 脚本的区别?
第四阶段:服务部署与中间件配置
目标:你不能只会上线 nginx,还得会配数据库和缓存。
1. 常见服务配置
- MySQL:安装、安全设置、权限管理、备份恢复
- Redis:主从复制、持久化配置、访问限制
- Nginx:负载均衡配置、proxy_pass、健康检查
2. 应用部署流程
- 单体 vs 分布式应用部署
- 零停机发布、滚动更新、灰度策略
3. 容器初识
- Docker 基础命令、镜像制作、数据卷挂载
- Docker Compose 多服务编排
4. 面试常问
- 如何实现 Redis 宕机自动切换?
- 项目更新过程中如何不打断业务访问?
第五阶段:监控、日志与告警系统
目标:比程序员早知道服务挂了,比老板快一步说“我们在处理”。
1. 日志系统
- 日志采集:rsyslog, filebeat
- 日志平台:ELK(Elasticsearch + Logstash + Kibana)
2. 系统监控
- Prometheus + Grafana
- node_exporter / mysqld_exporter 配置
3. 告警系统
- Prometheus AlertManager
- 企业微信 / 钉钉 告警推送配置
4. 面试高频
- 你们怎么发现服务挂了?
- 如何设置一个“请求量异常增加”的告警规则?
第六阶段:CI/CD 与运维工程化
目标:不是点脚本,是流水线自动把你工作替代一半。别怕,这是升级。
1. 持续集成平台
- GitLab CI / Jenkins:pipeline、环境变量、构建阶段
- 制品管理:Nexus、Harbor
2. 持续部署流程
- 流水线自动构建、测试、部署到预发 → 生产
- 自动回滚策略设计
3. 项目交付标准化
- 环境变量分离、配置中心(Nacos / Apollo)
- 日志、监控、版本回溯机制
4. 面试重点
- 你怎么保证每次上线都可控可追踪?
- CI/CD 出问题你怎么快速定位?
第七阶段:高可用架构与集群管理(进阶)
目标:系统不能挂,挂了能恢复,恢复后不能死人。你是系统的守夜人。
1. 高可用架构
- Keepalived + Nginx + VIP:主备架构
- 数据库主从/主主复制 + Sentinel/ProxySQL 读写分离
2. 集群与容器编排
- Kubernetes(k8s):Pod/Service/Deployment/Ingress
- Helm Chart:标准化部署方案
3. 容灾与备份
- 定时快照、异地容灾、全量 + 增量备份策略
- 业务恢复流程演练
4. 面试必考
- 如何设计一个“即使两台服务器炸了也能用”的架构?
- 你做过哪些容器编排?k8s 部署过哪些中间件?
附录:面试高频问题 TOP 10
- Linux 中如何排查 CPU 飙高的问题?
- 线上服务突然响应慢,你怎么查?
- 说说一次完整的上线流程?
- 怎样保证服务上线过程不中断?
- Redis 的持久化方式有哪些?各自利弊?
- 你如何实现日志的集中化收集与分析?
- Ansible 和 SaltStack 的区别?
- 什么是蓝绿部署?灰度发布怎么做?
- 怎么判断是网络问题还是服务自身问题?
- 你做过最棘手的一次线上事故是什么?怎么恢复的?
推荐工具 & 资源
📚 书籍:
- 《鸟哥的 Linux 私房菜》
- 《系统运维之美》
- 《SRE:站点可靠性工程》
📘 平台 & 文档:
- 腾讯蓝鲸平台
- GitOps 规范文档
- 阿里云/华为云运维手册
🛠️ 工具链:
- shell + Python
- Ansible、Docker、Kubernetes
- Grafana、Prometheus、Zabbix、ELK、Jenkins