软件运维服务升级规划_第1页
软件运维服务升级规划_第2页
软件运维服务升级规划_第3页
软件运维服务升级规划_第4页
软件运维服务升级规划_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件运维服务升级规划作为一名在软件运维领域深耕多年的从业人员,我见过太多企业因为运维体系落后,一边要承受系统故障带来的业务损失,一边要让运维团队天天陷在无休止的救火工作里,团队累,用户怨,业务发展也受拖累。说出来不怕大家笑,我去年过年回老家,大年初一都被一个紧急故障叫回去远程处理,年夜饭都没吃痛快,所以我太知道一套合理顺畅的运维体系有多重要。为了改变这种被动局面,我们结合日常工作中积累的实际问题,梳理出这份完整的软件运维服务升级规划,目标就是把原来被动、零散、低效的运维服务,改造成主动、规范、高效的新体系,既支撑业务稳定发展,也改善运维团队的工作状态。1升级背景与现状诊断要做升级,首先得把我们现在到底有什么问题说清楚,不能拍脑袋瞎改造,所有规划都要从实际痛点出发。1.1升级的核心触发背景最近几年,企业的业务越来越依赖软件系统,原来软件只是内部辅助工具,现在不管是面向C端的营收平台,还是面向B端的客户服务系统,甚至内部的管理流程,全都是跑在软件上,系统哪怕宕机一小时,损失可能就是几十万起步。用户对服务体验的要求也越来越高,原来出了问题等大半天用户也能理解,现在超过半小时没恢复,用户可能就直接退款走了。加上我们现在的架构早就从原来的单体应用改成了微服务、云原生架构,原来针对单体应用的那一套运维方法,早就跟不上现在的技术和业务需求了,升级是迫在眉睫的事,不是我们想改,是不改不行了。1.2当前运维体系存在的核心问题结合我们日常工作的记录和团队访谈,我们梳理出了四个最突出的核心问题:1.2.1监控覆盖不全,响应永远滞后原来我们的监控只盯着服务器的CPU、内存这些基础指标,很多业务层面的问题根本监测不到,比如服务器资源看起来完全正常,但业务接口调用超时,用户已经没法用了,我们还不知道,得等用户打电话反馈才开始排查,等找到问题的时候,往往已经过去几十分钟了。还有微服务架构下的很多中间件节点、缓存节点,原来根本没纳入监控,经常出了问题才发现某个节点早就离线了,完全是靠运气发现问题,不是靠能力。1.2.2流程不规范,责任边界模糊原来出了问题全靠人盯,没有固定的处理流程,经常出现开发推运维、运维推第三方服务商的情况,大家来回扯皮,耽误的都是解决问题的时间。而且问题解决之后也很少做完整复盘,同一个问题换个人碰还是会踩坑,我就遇见过同一个配置错误,三个月里犯了三次,每次都折腾大半夜,说出来都是辛酸泪。出了问题之后也没有完整归档,后来人根本不知道之前出过什么问题,遇到了只能重新排查,效率特别低。1.2.3服务不分层,资源浪费严重原来不管是天大的故障,还是用户改个密码、重置个权限这种小事,全都找一线运维工程师,资深工程师天天处理这种重复的琐事,真正遇到核心系统故障的时候,反而抽不出人手去处理。用户那边也不满意,小问题也要等半天排单,体验特别差,说白了就是好钢没用到刀刃上,人力浪费太严重。1.2.4团队能力跟不上技术迭代现在新技术更新太快,很多老运维同事原来只会管理物理机、排查单体应用的问题,现在容器化、分布式链路追踪这些新技术,很多人都是一知半解,真出了微服务的分布式故障,根本不知道从哪下手排查,往往要请外面的专家过来,一来一回又耽误了很多时间,团队能力跟不上,再好的工具也用不起来。把这些核心问题梳理清楚之后,我们就能针对性地设定升级的方向,不会做那些花里胡哨没用的改造,所有升级都盯着解决这些痛点来。2升级的总体目标与核心原则升级不能漫无目的地做,得先明确我们要做成什么样,要遵守什么规则,避免走歪路。2.1总体升级目标我们这次升级的核心目标,就是把运维服务从原来的“被动救火”转向“主动预防”,从“零散处理”转向“体系化支撑”,最终实现三个核心提升:第一是提升核心系统的可用性,把核心系统的年度可用率提升到99.9%以上,减少大故障的发生概率;第二是提升服务响应效率,把普通问题的平均解决时间压缩一半,重大故障的恢复时间压缩三分之二;第三是提升用户和业务端的满意度,减少因为运维问题带来的投诉。往远了说,还要解放运维团队的人力,让大家从天天重复救火的低效工作里出来,能去做更有价值的架构优化、业务支撑工作,也能多留点时间给自己和家人,不用天天活在告警电话的恐惧里。2.2升级遵守的核心原则为了保证升级能平稳落地,我们定了三个不能碰的原则:2.2.1业务优先原则所有升级改造都不能影响现有业务的正常运行,不搞一刀切的全面替换,都是小范围试点验证没问题了,再逐步推广,改造都选在业务低峰期操作,提前做好回滚预案,万一出问题能立马切回原来的体系,绝对不影响用户正常使用。2.2.2问题导向原则不搞形式主义,不追求什么高大上的概念,原来哪个问题疼我们就治哪个,不因为别人都上某个工具我们就非要上,适合我们自己业务规模和技术架构的才是最好的,能解决实际问题比什么都重要。2.2.3人性化适配原则升级既要改体系,也要照顾团队和用户的接受度,不会一下子把所有东西都换掉,给大家留足够的适应时间,也会充分听取大家的意见,哪里用着不舒服就改哪里,不会强行推大家抵触的方案,毕竟升级最终还是要人来用的,大家觉得舒服才能用得好。明确了目标和原则,接下来就是整个规划最核心的部分,具体的升级实施内容,我们从四个维度层层推进改造。3运维服务升级的具体实施内容我们的升级从技术体系、流程规范、用户服务、团队能力四个层面同步推进,四个层面互相支撑,缺了哪一个都不行。3.1监控预警体系升级:从被动接报转向主动预防监控是运维的眼睛,眼睛不好,所有工作都是瞎蒙,所以我们第一个改的就是监控体系。3.1.1补全全链路监控覆盖我们把监控分成三层做全覆盖,第一层是基础设施层,服务器、网络、存储、数据库、中间件所有节点全部纳入监控,一个都不漏;第二层是业务接口层,每个业务接口的响应时间、调用成功率、错误率都做实时监控,只要超过阈值立马告警;第三层是用户体验层,我们在不同区域布置模拟探测节点,从用户的角度模拟访问,哪怕内部所有监控都正常,用户那边打开慢或者访问失败,我们立马就能收到告警。另外加上分布式链路追踪,微服务架构下哪个节点出问题,点一下就能看到整条调用链路的情况,不用像原来那样一个个节点排错,至少能把排查时间省掉三分之二。3.1.2优化告警分级机制原来我们的告警就是一锅粥,什么信息都往你手机上发,经常半夜手机响,爬起来一看是某个测试节点的CPU小幅波动,白折腾一顿,搞得大家神经衰弱。现在我们把告警分成四个等级,一级是核心系统全量故障,立马通过电话、短信、IM多渠道加急通知,不管什么时候都要第一时间响应;二级是非核心业务故障,工作时间通知处理,非工作时间转紧急值班人员;三级是提前预警,比如内存占用超过阈值、磁盘空间不足,这种提前发个提醒,上班之后处理就行,不用半夜叫醒人;四级是日常统计信息,每天汇总发一次邮件就行,不用实时打扰。这么改了之后,告警量减少了七成,真正的故障一个不会漏,也不会随便打扰大家休息,这个改变真的是深得人心。3.1.3搭建自动预处理机制我们把日常经常遇到的小问题,比如磁盘满了、进程异常退出、缓存雪崩这些,都提前写好自动修复脚本,监控监测到问题之后,直接触发脚本自动处理,不用人工介入,原来一天要处理五六个这种小问题,现在系统自己就搞定了,能省出很多人力去处理更复杂的问题。3.2服务流程标准化升级:解决混乱推诿的老问题流程顺了,效率才能提上来,我们把原来零散的处理流程改成全闭环的标准化流程。3.2.1建立全闭环问题处理流程所有问题都必须走线上工单系统,从问题接报、分级分诊、分配责任人、处理、用户验证、复盘归档全环节留痕,每个环节该谁处理、什么时候要完成,系统都自动提醒,所有人都能看到工单处理到哪一步了,不会出现找不到责任人的情况。问题解决完之后,必须输出完整的复盘报告,写清楚根因是什么、整改措施是什么,还要录入内部知识库,下次再出同样的问题,不管是谁,直接搜就能找到解决方案,不用重新踩坑。3.2.2落实分级SLA响应机制我们根据问题的影响范围和严重程度,定了明确的服务等级协议:一级核心故障15分钟内必须有人响应,2小时内必须恢复;二级故障30分钟内响应,4小时内恢复;普通问题一个工作日内处理完成,小问题比如权限申请,半天内搞定。这样就能把优质的人力优先留给最严重的故障,不会出现小问题占了资深工程师时间,大故障没人处理的情况。3.2.3明确多角色责任边界我们提前把运维、开发、第三方服务商各自的责任范围理得清清楚楚,什么问题归运维处理,什么问题归开发修复,什么问题要找第三方服务商,都写得明明白白,出了问题直接拉对应负责人进场,不用来回踢皮球,原来那种扯皮一小时才开始排查的情况,现在基本就杜绝了。3.3用户侧自助服务体系升级:把简单问题还给用户自己解决很多时候用户不满意,我们也累,就是因为小事都要找人工,所以我们搭了自助服务体系,双赢。3.3.1搭建统一的运维服务门户用户不管是要申请权限、重置密码、申请资源还是上报故障,都直接在统一门户提交,不用到处找人打电话,系统自动分流,简单的重复性问题直接走自动处理流程,用户改个密码点一下就完成了,不用等人工,用户省时间,我们也省力气。3.3.2完善公开化运维知识库我们把所有常见的问题,比如怎么登录系统、怎么调整个人配置、常见报错怎么解决,都写成通俗易懂的图文教程,配上截图,用户出了小问题,先在知识库搜一搜,百分之三四十的问题自己就能解决,根本不用找我们。原来我一天能接七八个问怎么改密码的电话,现在一周都没一个,省出来的时间能做太多有用的事了。3.3.3建立透明的进度公示机制用户提交了问题之后,能随时在门户上看到工单处理到哪一步了,大概什么时候能解决,不用天天打电话催,用户心里有数,体验好了很多,我们也不用天天接催单的电话,安静了不少。3.4运维团队能力升级:体系要靠人来跑体系再好,人的能力跟不上也白搭,所以我们同步做团队能力的升级。3.4.1建立分层培养体系我们根据工程师的能力分层培养,新人重点练基础排查、常规问题处理,熟悉流程和工具;资深工程师重点练架构优化、根因分析、新技术落地,每个月组织两次内部分享,让处理过故障的同事给大家讲自己踩过的坑,积累的经验,这种内部分享比外面的培训课有用多了,都是我们自己实际遇到的问题,学了就能用。3.4.2建立常态化故障演练机制我们每三个月组织一次模拟故障演练,故意关掉某个核心节点,制造故障场景,练大家的排查速度、恢复能力和协同能力,原来真出大故障的时候,大家都慌,不知道该先做什么,现在演练多了,遇到事心态稳得很,按流程走就能快速解决,能力提升得特别快。3.4.3调整考核激励机制原来我们考核就是看出了多少故障,谁背锅谁扣分,搞得大家都怕出问题,也不想主动做事。现在我们改成以主动预防、流程规范、用户满意度为核心的考核,主动提前发现隐患、规范处理问题、用户评价好的工程师,都有奖励,干得好拿得多,大家的积极性一下子就起来了,现在很多同事都会主动找系统里的潜在隐患,不用领导催着做。升级不是一蹴而就的,也不可能完全一帆风顺,所以我们得规划好落地节奏,提前做好风险应对,保证升级能平稳落地。4升级落地的节奏安排与风险保障4.1分阶段落地节奏我们把整个升级分成三个阶段,稳步推进:4.1.1第一阶段:试点验证先用两三个月时间,选一个非核心的业务系统做试点,把我们说的监控、流程、自助服务都搭起来,跑两三个月,收集团队和用户的反馈,调整优化不合适的地方,摸索出适合我们自己的模式,这个阶段试错成本低,不会影响核心业务。4.1.2第二阶段:全面推广试点验证没问题之后,用半年左右的时间,一个系统一个系统逐步推广上线,不搞一刀切,改完一个稳定一个,保证整个过程中核心业务不会受到影响。4.1.3第三阶段:持续优化全部推广上线之后,每个季度做一次整体复盘,收集大家的反馈,哪里用着不舒服就改哪里,持续迭代优化,毕竟运维升级不是一劳永逸的,业务在变,技术在变,我们的体系也要跟着变。4.2核心风险与应对措施我们也提前想到了升级过程中可能遇到的风险,做好了应对方案:第一个风险是团队抵触,大家原来干惯了老方法,不想改,我们的应对是提前沟通,把升级之后能减少多少加班、能减少多少无效工作给大家说清楚,先做小范围试点,让大家先感受到升级的好处,再逐步推广,同时做好培训,一步步带大家熟悉新体系,不会一下子就让大家全改。第二个风险是升级过程影响业务,我们所有改造都选在业务低峰期做,提前做好数据备份和回滚预案,万一出问题,十分钟就能切回原来的体系,不会影响正常业务。第三个风险是预算不足,我们优先改造痛点最明显、性价比最高的部分,先用成熟的开源工具搭起基础体系,看到实际效果之后,再申请预算升级工具,领导能看到收益,自然也会支持我们。总结总的来说,这次软件运维服务升级,不只是工具和流程的升级,更是整个运维服务理念的升级——我们从原来的“出了问题再

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论