一、初级运维工程师(0-2年)技能清单
1.操作系统基础
•Linux发行版安装与最小化部署(CentOS7/8、Rocky、Ubuntu20.04/22.04)
•目录结构:/etc、/var、/usr、/proc、/dev各自用途
•文件权限:chmod755、chownroot:root、umask默认值、SUID/SGID/stickybit
•用户管理:useradd-m-s/bin/bash、passwd、usermod-aGwheel、/etc/sudoers配置
•磁盘管理:fdisk/gdisk分区、mkfs.xfs/mkfs.ext4格式化、/etc/fstab开机自动挂载、LVM创建PV/VG/LV扩容
•基础命令:psauxf、top/htop、netstat-tunlp、ss-antp、lsof-i:端口、strace-pPID、tcpdump-ieth0port80
2.网络基础
•TCP/IP协议栈:三次握手/四次挥手抓包分析、TIME_WAIT/CLOSE_WAIT状态排查
•子网划分:CIDR表示法、VLSM计算、网关/DNS配置
•路由与交换:iprouteadd、iptables-tnat-APOSTROUTING-s内网-jMASQUERADE
•DNS:/etc/resolv.conf、nslookup/dig查询、bind搭建内网DNS
•网卡绑定:bondingmode0/1/4/6配置、多队列网卡中断均衡
3.Shell脚本
•变量定义与引用、条件判断[-ffile]、[[a-gtb]]、case语句
•循环:foriin$(seq110)、whilereadline
•函数封装、exit状态码、set-euxopipefail严格模式
•实战:日志切割脚本(find/var/log-name"*.log"-mtime+7-delete)、批量主机巡检(foripin(catiplist);dosship"df-h";done)、自动备份(mysqldump|gzip)
4.服务部署
•Nginx:编译参数--with-http_ssl_module、虚拟主机server_name匹配、upstream轮询/权重/ip_hash、location正则优先级、access.log格式自定义
•Apache:MPMprefork/worker/event切换、.htaccess重写规则
•MySQL:二进制/源码安装、my.cnf参数innodb_buffer_pool_size=物理内存70%、slow_query_log=ON、binlog_format=ROW、主从GTID复制
•Redis:单机/哨兵/集群三种模式、maxmemory-policyallkeys-lru、RDB/AOF持久化选择
•域名解析与备案流程、CDN回源配置、SSL证书申请(Let'sEncryptcertbot)与Nginx配置
5.监控与排障
•Zabbix:agent主动/被动模式、itemkey自定义、trigger表达式{host:system.uptime.last()}<86400、graph出图
•日志查看:tail-f/var/log/messages、journalctl-unginx-f、grep-ierror、awk'{print$1}'access.logsortuniq-csort-rn
head
•性能排查:iostat-x1(%util>80%磁盘瓶颈)、vmstat1(si/so非零说明swap频繁)、free-h
二、中级运维工程师(2-5年)技能清单
1.自动化工具
•Ansible:inventory分组、playbook幂等编写(yum/module/notify/handler)、roles目录结构(tasks/main.yml、handlers/main.yml、templates/nginx.conf.j2)、ansible-vault加密变量
•SaltStack:master/minion架构、state.sls编写、grains/pillar数据分离
•Jenkins:自由风格+PipelineasCode(Jenkinsfile)、GitLabWebhook触发、参数化构建(ChoiceParameter选环境)、构建产物归档
•Git:分支策略gitflow、rebase与merge区别、.gitignore规则、tag打版本
2.虚拟化与容器
•KVM:virshlist--all、virt-install装系统、qcow2快照创建/回滚、virshattach-disk热添加磁盘
•Docker:Dockerfile多阶段构建(FROMgolang:1.21ASbuilder→FROMalpine)、docker-compose.yml服务编排(depends_on/healthcheck/restart:always)、volume数据持久化、dockernetwork自定义桥接
•Kubernetes:kubeadm初始化集群、Pod/Deployment/Service/ConfigMap/Secret/Ingress资源编写、kubectlgetpods-owide、kubectldescribepod查事件、HPA基于CPU/内存自动扩缩
•Helm:Chart结构(Chart.yaml/values.yaml/templates/)、helminstall-fcustom-values.yaml、helmrollback
3.云平台
•阿里云/腾讯云/AWS:ECS实例规格选型(计算型/内存型/通用型)、VPC网段规划(10.0.0.0/16拆多个/24子网)、安全组规则(入站22/80/443,出站全通)、SLB七层转发+会话保持、RDS参数组调优、OSSS3API兼容挂载
•Terraform:provider"alicloud"配置、resource"alicloud_instance"定义、terraforminit/plan/apply流程、state文件远程存储(OSSbackend)
•弹性伸缩:ASG基于CPU指标触发、定时任务扩缩、生命周期钩子
4.监控进阶
•Prometheus:pull模式抓取、node_exporter/cadvisor/mysqld_exporter部署、PromQL查询(rate(http_requests_total[5m])、up{job="kubernetes-pods"})、RecordingRules预计算
•Grafana:数据源添加Prometheus、DashboardJSON导入/自定义Panel(Graph/Singlestat/Table)、告警通道配置(钉钉/企业微信Webhook)
•ELK/EFK:Filebeat采集→Logstashgrok解析(%{COMBINEDAPACHELOG})→Elasticsearch索引模板→KibanaDiscover/Visualize/Dashboard
•告警体系:Alertmanager分组/抑制/静默、route匹配severity=critical发电话、severity=warning发群消息
5.数据库进阶
•MySQL主从切换演练:stopslave→resetslaveall→changemasterto新主→startslave
•分库分表:MyCat/ShardingSphere中间件配置、水平拆分按user_id%16
•备份恢复:xtrabackup物理热备、binlog按位点/时间点恢复(mysqlbinlog--start-position=xxxmysql-bin.000123|mysql)
•Redis集群:redis-cli--clustercreate6节点、reshard迁移slot、CLUSTERFAILOVER手动切换
6.故障演练
•ChaosMesh:PodKill/NetworkChaos/IOChaos注入、稳态假设验证
•模拟场景:拔网线、kill-9mysqld、磁盘写满、CPU打满(stress-ng--cpu8)
三、高级运维工程师(5年以上)技能清单
1.架构设计
•高可用:KeepalivedVRRP虚拟IP漂移、HAProxy四层负载+健康检查、etcd三节点Raft集群
•容灾:同城双活(DNS智能解析+GSLB)、异地冷备(每日全量+binlog增量同步到备中心)、RTO<30分钟RPO<5分钟
•微服务治理:Istio流量管理(VirtualService权重路由90%v1+10%v2)、熔断(outlierDetection)、限流(QuotaSpec)
•多活架构:单元化部署(用户按uidhash路由到固定机房)、消息队列跨城同步(RocketMQDLedger)
2.性能调优
•内核参数:net.ipv4.tcp_tw_reuse=1、net.core.somaxconn=65535、vm.swappiness=10、fs.file-max=1000000
•JVM:GC选择(G1for<=32Gheap)、-Xms=-Xmx防动态扩容、-XX:+HeapDumpOnOutOfMemoryError
•MySQL:innodb_flush_log_at_trx_commit=2(非金融场景)、sync_binlog=1000、thread_cache_size=64、table_open_cache=4096
•Nginx:worker_processesauto、worker_connections65535、epoll多路复用、sendfileon、tcp_nopushon
3.安全合规
•等保2.0:三级等保要求(身份鉴别双因子、访问控制最小权限、审计日志留存6个月以上、入侵防范定期漏扫)
•堡垒机:JumpServer部署、SSH代理+录像审计、命令过滤(禁止rm-rf/)
•漏洞扫描:Nessus/OpenVAS定期扫描、CVE补丁优先级评估(CVSS评分>7.0紧急)
•数据加密:TLS1.3全链路、KMS密钥管理、数据库透明加密(TDE)
4.成本优化
•资源利用率分析:Prometheus采集node_cpu_usage/container_memory_usage,识别CPU<10%的低负载实例
•降配/混部:在线业务(白天高峰)+离线任务(夜间批处理)混部在同一批节点,提升整体利用率到40%+
•Spot实例:AWSSpot/阿里云抢占式实例跑无状态服务,成本降70%,配合ASG自动补充
•存储分层:热数据SSD、温数据高效云盘、冷数据OSS归档(生命周期规则30天转低频→90天转归档)
5.团队管理
•运维规范:变更窗口(每周二/四02:00-04:00)、变更审批(OA工单+双人复核)、回滚预案(每次变更必须附带一键回滚脚本)
•文档体系:Confluence架构决策记录(ADR)、Runbook故障处理手册(含命令模板)、On-Call交接记录
•培训体系:新人入职前两周学习路径(Linux基础→公司架构→模拟故障排查)、季度技术分享(每人一个深度主题)
•考核指标:MTTR(平均恢复时间)目标<15分钟、变更成功率>95%、SLA99.95%可用性
四、学习路径时间线
•第1-3个月:装虚拟机跑CentOS,练tar/grep/awk/sed,写10个以上shell脚本,搭LNMP环境并排查3次以上502/504错误
•第4-6个月:学Ansible批量管10台机器,Docker化一个Web应用,用Prometheus+Grafana监控自己的服务器
•第7-12个月:考RHCE或CKA认证,搭Kubernetes集群跑真实业务,用Jenkins做CI/CD流水线
•第2年:深入MySQL调优(explain/showprofile),学Redis源码级原理,参与一次线上故障复盘并写报告
•第3年:主导一次架构升级(如单体迁微服务),设计多活方案,带1-2个新人
•第4-5年:输出技术文章/演讲,建立团队运维体系,推动SRE转型(SLI/SLO定义、错误预算、自动化闭环)
五、常用工具速查
•终端复用:tmux(session/window/pane三层结构、Ctrl-b%左右分屏)
•文件同步:rsync-avz--delete源目标、scp-P2222、lftp断点续传
•压测:ab-c100-n10000、wrk-t12-c400-d30s、jmeterGUI录制+CLI分布式压测
•数据库客户端:mycli(MySQL自动补全)、redis-cli--stat(实时监控)
•网络诊断:mtr(结合ping+traceroute)、nmap-sS-p1-65535(端口扫描)、iperf3(带宽测试)
•配置校验:nginx-t、mysqld--validate-config、kubectlapply--dry-run=client
1.操作系统基础
•Linux发行版安装与最小化部署(CentOS7/8、Rocky、Ubuntu20.04/22.04)
•目录结构:/etc、/var、/usr、/proc、/dev各自用途
•文件权限:chmod755、chownroot:root、umask默认值、SUID/SGID/stickybit
•用户管理:useradd-m-s/bin/bash、passwd、usermod-aGwheel、/etc/sudoers配置
•磁盘管理:fdisk/gdisk分区、mkfs.xfs/mkfs.ext4格式化、/etc/fstab开机自动挂载、LVM创建PV/VG/LV扩容
•基础命令:psauxf、top/htop、netstat-tunlp、ss-antp、lsof-i:端口、strace-pPID、tcpdump-ieth0port80
2.网络基础
•TCP/IP协议栈:三次握手/四次挥手抓包分析、TIME_WAIT/CLOSE_WAIT状态排查
•子网划分:CIDR表示法、VLSM计算、网关/DNS配置
•路由与交换:iprouteadd、iptables-tnat-APOSTROUTING-s内网-jMASQUERADE
•DNS:/etc/resolv.conf、nslookup/dig查询、bind搭建内网DNS
•网卡绑定:bondingmode0/1/4/6配置、多队列网卡中断均衡
3.Shell脚本
•变量定义与引用、条件判断[-ffile]、[[a-gtb]]、case语句
•循环:foriin$(seq110)、whilereadline
•函数封装、exit状态码、set-euxopipefail严格模式
•实战:日志切割脚本(find/var/log-name"*.log"-mtime+7-delete)、批量主机巡检(foripin(catiplist);dosship"df-h";done)、自动备份(mysqldump|gzip)
4.服务部署
•Nginx:编译参数--with-http_ssl_module、虚拟主机server_name匹配、upstream轮询/权重/ip_hash、location正则优先级、access.log格式自定义
•Apache:MPMprefork/worker/event切换、.htaccess重写规则
•MySQL:二进制/源码安装、my.cnf参数innodb_buffer_pool_size=物理内存70%、slow_query_log=ON、binlog_format=ROW、主从GTID复制
•Redis:单机/哨兵/集群三种模式、maxmemory-policyallkeys-lru、RDB/AOF持久化选择
•域名解析与备案流程、CDN回源配置、SSL证书申请(Let'sEncryptcertbot)与Nginx配置
5.监控与排障
•Zabbix:agent主动/被动模式、itemkey自定义、trigger表达式{host:system.uptime.last()}<86400、graph出图
•日志查看:tail-f/var/log/messages、journalctl-unginx-f、grep-ierror、awk'{print$1}'access.logsortuniq-csort-rn
head
•性能排查:iostat-x1(%util>80%磁盘瓶颈)、vmstat1(si/so非零说明swap频繁)、free-h
二、中级运维工程师(2-5年)技能清单
1.自动化工具
•Ansible:inventory分组、playbook幂等编写(yum/module/notify/handler)、roles目录结构(tasks/main.yml、handlers/main.yml、templates/nginx.conf.j2)、ansible-vault加密变量
•SaltStack:master/minion架构、state.sls编写、grains/pillar数据分离
•Jenkins:自由风格+PipelineasCode(Jenkinsfile)、GitLabWebhook触发、参数化构建(ChoiceParameter选环境)、构建产物归档
•Git:分支策略gitflow、rebase与merge区别、.gitignore规则、tag打版本
2.虚拟化与容器
•KVM:virshlist--all、virt-install装系统、qcow2快照创建/回滚、virshattach-disk热添加磁盘
•Docker:Dockerfile多阶段构建(FROMgolang:1.21ASbuilder→FROMalpine)、docker-compose.yml服务编排(depends_on/healthcheck/restart:always)、volume数据持久化、dockernetwork自定义桥接
•Kubernetes:kubeadm初始化集群、Pod/Deployment/Service/ConfigMap/Secret/Ingress资源编写、kubectlgetpods-owide、kubectldescribepod查事件、HPA基于CPU/内存自动扩缩
•Helm:Chart结构(Chart.yaml/values.yaml/templates/)、helminstall-fcustom-values.yaml、helmrollback
3.云平台
•阿里云/腾讯云/AWS:ECS实例规格选型(计算型/内存型/通用型)、VPC网段规划(10.0.0.0/16拆多个/24子网)、安全组规则(入站22/80/443,出站全通)、SLB七层转发+会话保持、RDS参数组调优、OSSS3API兼容挂载
•Terraform:provider"alicloud"配置、resource"alicloud_instance"定义、terraforminit/plan/apply流程、state文件远程存储(OSSbackend)
•弹性伸缩:ASG基于CPU指标触发、定时任务扩缩、生命周期钩子
4.监控进阶
•Prometheus:pull模式抓取、node_exporter/cadvisor/mysqld_exporter部署、PromQL查询(rate(http_requests_total[5m])、up{job="kubernetes-pods"})、RecordingRules预计算
•Grafana:数据源添加Prometheus、DashboardJSON导入/自定义Panel(Graph/Singlestat/Table)、告警通道配置(钉钉/企业微信Webhook)
•ELK/EFK:Filebeat采集→Logstashgrok解析(%{COMBINEDAPACHELOG})→Elasticsearch索引模板→KibanaDiscover/Visualize/Dashboard
•告警体系:Alertmanager分组/抑制/静默、route匹配severity=critical发电话、severity=warning发群消息
5.数据库进阶
•MySQL主从切换演练:stopslave→resetslaveall→changemasterto新主→startslave
•分库分表:MyCat/ShardingSphere中间件配置、水平拆分按user_id%16
•备份恢复:xtrabackup物理热备、binlog按位点/时间点恢复(mysqlbinlog--start-position=xxxmysql-bin.000123|mysql)
•Redis集群:redis-cli--clustercreate6节点、reshard迁移slot、CLUSTERFAILOVER手动切换
6.故障演练
•ChaosMesh:PodKill/NetworkChaos/IOChaos注入、稳态假设验证
•模拟场景:拔网线、kill-9mysqld、磁盘写满、CPU打满(stress-ng--cpu8)
三、高级运维工程师(5年以上)技能清单
1.架构设计
•高可用:KeepalivedVRRP虚拟IP漂移、HAProxy四层负载+健康检查、etcd三节点Raft集群
•容灾:同城双活(DNS智能解析+GSLB)、异地冷备(每日全量+binlog增量同步到备中心)、RTO<30分钟RPO<5分钟
•微服务治理:Istio流量管理(VirtualService权重路由90%v1+10%v2)、熔断(outlierDetection)、限流(QuotaSpec)
•多活架构:单元化部署(用户按uidhash路由到固定机房)、消息队列跨城同步(RocketMQDLedger)
2.性能调优
•内核参数:net.ipv4.tcp_tw_reuse=1、net.core.somaxconn=65535、vm.swappiness=10、fs.file-max=1000000
•JVM:GC选择(G1for<=32Gheap)、-Xms=-Xmx防动态扩容、-XX:+HeapDumpOnOutOfMemoryError
•MySQL:innodb_flush_log_at_trx_commit=2(非金融场景)、sync_binlog=1000、thread_cache_size=64、table_open_cache=4096
•Nginx:worker_processesauto、worker_connections65535、epoll多路复用、sendfileon、tcp_nopushon
3.安全合规
•等保2.0:三级等保要求(身份鉴别双因子、访问控制最小权限、审计日志留存6个月以上、入侵防范定期漏扫)
•堡垒机:JumpServer部署、SSH代理+录像审计、命令过滤(禁止rm-rf/)
•漏洞扫描:Nessus/OpenVAS定期扫描、CVE补丁优先级评估(CVSS评分>7.0紧急)
•数据加密:TLS1.3全链路、KMS密钥管理、数据库透明加密(TDE)
4.成本优化
•资源利用率分析:Prometheus采集node_cpu_usage/container_memory_usage,识别CPU<10%的低负载实例
•降配/混部:在线业务(白天高峰)+离线任务(夜间批处理)混部在同一批节点,提升整体利用率到40%+
•Spot实例:AWSSpot/阿里云抢占式实例跑无状态服务,成本降70%,配合ASG自动补充
•存储分层:热数据SSD、温数据高效云盘、冷数据OSS归档(生命周期规则30天转低频→90天转归档)
5.团队管理
•运维规范:变更窗口(每周二/四02:00-04:00)、变更审批(OA工单+双人复核)、回滚预案(每次变更必须附带一键回滚脚本)
•文档体系:Confluence架构决策记录(ADR)、Runbook故障处理手册(含命令模板)、On-Call交接记录
•培训体系:新人入职前两周学习路径(Linux基础→公司架构→模拟故障排查)、季度技术分享(每人一个深度主题)
•考核指标:MTTR(平均恢复时间)目标<15分钟、变更成功率>95%、SLA99.95%可用性
四、学习路径时间线
•第1-3个月:装虚拟机跑CentOS,练tar/grep/awk/sed,写10个以上shell脚本,搭LNMP环境并排查3次以上502/504错误
•第4-6个月:学Ansible批量管10台机器,Docker化一个Web应用,用Prometheus+Grafana监控自己的服务器
•第7-12个月:考RHCE或CKA认证,搭Kubernetes集群跑真实业务,用Jenkins做CI/CD流水线
•第2年:深入MySQL调优(explain/showprofile),学Redis源码级原理,参与一次线上故障复盘并写报告
•第3年:主导一次架构升级(如单体迁微服务),设计多活方案,带1-2个新人
•第4-5年:输出技术文章/演讲,建立团队运维体系,推动SRE转型(SLI/SLO定义、错误预算、自动化闭环)
五、常用工具速查
•终端复用:tmux(session/window/pane三层结构、Ctrl-b%左右分屏)
•文件同步:rsync-avz--delete源目标、scp-P2222、lftp断点续传
•压测:ab-c100-n10000、wrk-t12-c400-d30s、jmeterGUI录制+CLI分布式压测
•数据库客户端:mycli(MySQL自动补全)、redis-cli--stat(实时监控)
•网络诊断:mtr(结合ping+traceroute)、nmap-sS-p1-65535(端口扫描)、iperf3(带宽测试)
•配置校验:nginx-t、mysqld--validate-config、kubectlapply--dry-run=client

