运维管理体系
运维学习和发展的一个线路
1) 搭建服务(部署并运行起来)
2) 用好服务(监控、管理、优化)
3) 自动化(服务之间的关联和协同工作)
4) 产品涉及(如何设计一套监控系统)
P1 运维职业发展 运维学习和发展的一个线路 1) 搭建服务(部署并运行起来) 2) 用好服务(监控、管理、优化) 3) 自动化(服务之间的关联和协同工作) 4) 产品涉及(如何设计一套监控系统) 云计算的竞争力的核心是运维 网络,系统、数据库 + 云计算、自动化运维、web架构 服务管理、 项目管理、测试、业务 备案种类 产品即服务 专注于某一个领域专家(如:负载均衡) 58 shenjian 架构师之路 安全宝 百度加速乐 腾讯蓝鲸监控 P2 运维知识体系 赵舜东 运维工作内容的分类 监控运维:(7*24小时值班、故障处理) 安全运维:(整体的安全方案、规范、漏洞监测、安全防护) 应用运维:(项目上线、服务部署、业务部署、版本管理、灰度发布、应用监控) 系统运维:(架构层面的:分布式缓存、分布式文件系统、日志收集、环境规划-测试开发生产、架构设计、性能优化) 基础服务运维:(包含运维开发)(内部DNS、负载均衡、系统级别监控、资产管理、运维平台) 基础设施运维:(系统初始化、网络维护) 机房运维:(负责设备上下架、巡检、保修、硬件监控) 阿里: SLB :LVS+Tengine(Nginx) ECS :KVM 云解决方案架构师 P3-P7 运维自动化 P3 自动化运维发展-标准化 1 运维标准化 物理设备层面 1) 务器标签化(结合IP地址更准确判断识别)、负责人、设备采购详情、设备摆放标准(负载均衡高可用分机柜放)。 2) 网络划分、远程控制卡、网卡端口 3) 服务器机型、硬盘、内存统一。跟进业务分类(CPU,内存,IO,网卡,电源,raid) 4) 资产命名规范、编号规范 5) 监控标准:日志、温度、cpu 操作系统层面 1) 操作系统版本 2) 系统初始化(DNS\NTP\内核参数调优、rsyslog、主机名规范) 3) 基础Agent配置(Zabbix Agent、Logstash Agent、Saltstack minion) 4) 系统监控标准(CUP、内存、硬盘、网络、进程) 应用服务层面 1) web服务器选型(Apache、Nginx) 2) 进程启动用户、端口监听规范(apache 8080, nginx 8081)、日志收集规范(日志类型:访问日志、错误日志、运行日志) 3) 配置管理(配置文件规范、脚本规范) 4) 架构规范(Nginx+Keepalived、LVS+Keepalived) 5) 部署规范(位置、包命名等) 运维操作方面 1) 机房巡检(周期、内容、保修流程) 2) 业务部署流程(先测试、后生产、回滚) 3) 故障处理流程(紧急处理、故障升级、重大故障管理) 4) 工作日志标准(如果编写工作日志-工作日志如何来写) 5) 业务上线流程(项目发起、设备环境准备、部署Nginx、解析域名、测试、加监控) 6) 业务下线流程(谁发起、数据如何处理) 7) 运维安全规范(密码复杂度、更改周期、VPN使用规范、服务器登录规范) 运维标准化(规范化、流程化、文档化) 目标:文档化 P4 自动化运维发展-工具化 工具化: 1 shell脚本(功能行脚本【流程性】:系统初始化、备份、部署等;检测性的脚本、报表性的脚本) 2 开源工具:Zabbix、ELKStack、Saltstack、 Cobbler 目标: 1 促进标准化的实施 2 将重复的操作简单化 3将多次操作流程化 4 减少认为操作低效和故障 痛点: 1) ssh登录服务器执行,可能出现操作错误 2) 多个脚本有执行顺序,容易调用出错 3) 权限不好管理、日志没法统计(很多脚本日志都没有写) 4) 无法避免手工操作 例子:对某台数据库从库进行版本升级。 要进行评估: 停机的影响,比如3点晚上会有定时任务连接该数据库做报表数据统计。 1) 凌晨3点所有crontab 任务 2) 这些crontab 要有哪些需要连接该数据库 3) 哪些可以停,哪些不能停(不能停的要修改连接到主库)云计算 操作系统,哪些需要后补 4) 这些后补的脚本哪个业务、谁加的、什么时候加的。 P5 自动化运维发展-web化 运维平台 例子:Job管理平台 1 做成web界面 2 权限管理 3 日志记录 4 弱化流程 5 不用ssh 到服务器,减少人为失误,web ssh P6 自动化运维发展-服务化 服务化(API化) DNS web管理 bind-DLZ dns-api 负载均衡web管理 slb-api Job管理平台 job-api 监控Web管理 Zabbix zabbix-api 操作系统安装平台 cobbler-api 部署平台 deploy-api 配置管理平台 saltstack-api 自动化测试平台 test-api 1 调用cobbler-api 安装操作系统 2 调用saltstack-api 进行系统初始化 3 调用dns-api 解析主机名 4 调用zabbix-api进行该新上线机器加监控 5 调用saltstack-api 进行软件部署(Ngnix+php) 6 调用deploy-api 将当前代码部署在服务器上 7 调用test-api 测试当前服务是否正常 8 调用slb-api 将该节点加入集群 P7 自动化运维发展-智能化 智能化的自动扩容、缩容、服务降级、故障自愈 自动扩容 1 决策: 1) qps > 1000 2) 并持续5分钟 3) 不是攻击 4) 资源充足 4.1) 资源池子充足 4.2) 网络带宽充足 4.3) 公有云账户余额充足 5) 当前节点后端服务支撑量是否超过阈值,如果超后端先扩容(如依赖数据库,考虑数据库是否扛得住) 6)当前自动化扩容队列是否有其它扩容任务 7) 其它业务相关 2 openstack 创建虚拟机 3 Saltstack 配置环境 --- 加监控 4 部署系统部署当前代码 5 测试服务是否可用 6 加入集群 6 扩容完成通知 P8 基于ITIL的运维管理体系 技术:运维知识体系 管理: 1 服务管理ITIL 2 项目管理PMP P9 ITIL 服务员运营-服务台 ITIL V3 将理论分成了5部分: 1)服务战略(Service Stragegy) 2)服务设计(Service Design) 3)服务转换(Service Translation) 4)服务运营(Service Operation) 5)持续服务改进(Continual Service Improvement) ITIL V2 ITIL V3 智能 服务战略:战略生产、需求管理、服务组合管理、财务管理 服务设计:供应商管理、服务目录管理、信息安全管理、IT服务持续性管理、容量管理、可用性管理、服务级别管理(SLA) 服务转换:知识管理、评估、服务检验与测试、转换规划与支持、发布与部署管理、服务资产与配置管理(CMDB)、变更管理 服务运营:IT运营管理、应用管理、技术管理、请求实现、事件管理、访问管理、问题管理、事故管理、服务台 服务持续改进 SLA 服务级别协议 service level agreement OLA 运营级别协议 Operation level agreement CSF 关键成功因素 Critical Success Factor KPI 关键绩效指标 Key Performance Indicator 月报 服务台:路由器、监视器、单一联系点、客服窗口、广播台、过滤器 故障职能升级 IT运维事件管理: 运营服务-故障管理 目标:快速恢复 分级:影响度 + 紧急度 运营服务-问题管理 目标:预防问题的产生及由此产生故障,消除重复出现故障,并对不能预防的故障尽量降低对其业务的影响。 故障管理和问题管理的区别 根本目标:尽快恢复 |查明根源,彻底解决 手段:应急措施或者代替方案 |永久性解决方案 关注点:速度 |质量(彻底性) 耗时: 短 |长 优先级:根据影响度和紧急度,侧重紧急度|根据影响度和紧急度,侧重影响度 面向用户:需面向用户 |不面向用户 分类:可使用相同分类 问题管理的输入和输出: 输入: 故障的历史记录 问题识别和确认规则 问题记录单模板 IT基础架构、IT服务监控数据和报表 IT服务绩效与SLA差距分析报告 输出: 问题的根本原因 替代解决方案 永久性解决方案 变更请求(RFCs)(开发修改代码) 问题分类汇总报表 ITSM工具架构: 1) 自动化运维平台:自动化安装、自动化配置、自动化部署、数据备份管理、系统集中管理 2) 多维监控平台(zabbix):网络监控、业务监控、流量分析、性能监控、预警报警 3) IT服务管理:事件管理、问题管理、变更管理、SLA管理、资产管理、可用性管理 (编辑:海南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |