运维学习和发展的一个线路
1.搭建服务(部署并稳定的运行起来)
2.持续服务(监控、管理、优化)
3.自动化(解脱手工繁琐易出错的问题、连接服务协同工作)
4.产品设计(目标:如何设计一个监控系统、智能化云平台)
云计算的核心竞争力是运维! --赵班长语录
系统架构师分类:
1.偏技术:网络、系统、数据库、存储、开发、测试、自动化、云计算
2.偏管理:运维管理(ITIL)、项目管理(PMP)、服务管理
3.专家:大数据、数据分析、数据库、负载均衡、网络存储等
4.解决方案架构师:咨询、技术方案服务
运维工作内容分类
1.机房运维:负责设备上下架、巡检、报修、硬件监控
2.基础设施运维:系统初始化、网络维护
3.基础服务运维:运维开发(内部DNS、负载均衡、系统监控、资产管理、运维平台)
4.系统运维:架构层面的分布式缓存、分布式文件系统、日志收集、环境规划(测试、开发、 生产)、架构设计、性能优化
5.全运维:整体的安全方案、规范、漏洞监控、安全防护等
6.应用运维:业务熟悉、服务部署、业务部署、版本管理、灰度发布、应用监控
7.监控运维:7x24运维值班、故障处理
构建自动化运维次序表:
运维标准化 | 物理设备层面: 1. 服务器标签化、设备负责人、设备采购详情、设备摆放标准 2. 网络划分、运程控制卡、网络端口 3. 服务器机型、硬盘、内存统一、业务分类 4. 资产命名规范、编号规范、类型规范 5. 监控标准 |
操作系统层面: 1. 操作系统版本 2. 系统初始化配置(DNS、NTP、rsyslog、内核参数调优、主机名规范) 3. 基础Agent配备(Zabbix Agent、Logstash Agent、Saltstack minion | |
应用服务层面: 1. Web服务器选型(Apache、Nginx) 2. 进程启动用户、端口监听规范、日志收集规范(访问日志、错误日志、运行日志) 3. 配置管理(配置文件规范、脚本规范) 4. 架构规范(Nginx+Keepalived、LVS+Keepalived、Haproxy等) 5. 部署规范(位置、包命名等) | |
运维操作层面: 1. 机房巡检流程(周期、内容、报修流程) 2. 业务部署流程(先测试、后生产、注意回滚) 3. 故障处理流程(紧急处理、故障升级、重大故障管理) 4. 工作日志流程(如何编写工作日志) 5. 业务上线流程(1.项目发起 2.系统安装 3.部署Nginx 4.解析域名 5.测试 6.加监控 7.备份) 6. 业务下线流程(谁发起,数据如何处理) 7. 运维安全规范(密码复杂度、更改周期、VPN使用规范、服务登录规范) | |
工具化 | SHELL脚本:功能性(流程)脚本、检查性、报表性 开源工具:Zabbix、ELKStack、SaltStack、Cobbler |
目标: 1. 促进标准化的实施 2. 流程次序化 3. 减少重复操作,减少人为犯错率 | |
痛点: 1. 至少要ssh到服务器上执行命令,可能犯错 2. 多个脚本有执行顺序的时候,可能犯错 3. 权限不好管理,日志没法统计 4. 无法避免手工操作 5. 难以确定对关联任务所造成的影响 | |
平台化 | 运维操作平台(如监控平台、JOB管理平台等) 1. 做成Web界面,弱化流程 2. 统一权限控制,日志纪录管理 3. 统一可视化操作、减少人为操作造成的故障 |
服务化 | 调用各种开放接口、按需提供服务 1. 调用cobbler-api安装操作系统 2. 调用saltstack-api进行系统初始化 3. 调用dns-api解析主机名 4. 调用zabbix-api将该新上线机器加上监控 5. 再次调用saltstack-api部署软件(安装Nginx+PHP) 6. 调用deploy-api将当前版本的代码部署到服务器上 7. 调用test-api测试当前服务运行是否正常 8. 调用slb-api将该节点加入集群 |
自动化 | 云计算、虚拟化、智能化的自动化扩容、缩容(服务阶级、故障自愈) |
总结:
标准化(规范化、流程化、文档化) 目标:文档化
工具化和标准化是好基友!--赵班长语录
运维自动化架构思维导图
附赵班长运维架构层级图https://www.unixhot.com/page/ops