码迷,mamicode.com
首页 > 其他好文 > 详细

运维三刀流

时间:2015-11-22 13:51:49      阅读:337      评论:0      收藏:0      [点我收藏+]

标签:

前言

作为一名资深海贼迷,资深运维工程师,今天我想在这里做个融合,讲讲我的运维三刀流。
之所以有这篇文章我想大家都应该猜得到,我是个海贼迷。但大家不一定知道我的从业经历,我曾在江西最豪华的电信机房—红谷滩电信机房(跟全国最豪华的机房还是有些差距的)工作过,亲手参与了机房的搭建,网络的从无到有,服务器的从无到有,团队的从无到有。
在这里我积淀了我最初的运维理念和模型,那就是三刀流运维模型。在此之后几经辗转,从机房运维我又步入了系统软件运维工作,脱离了底层的环境,进入了更高的软件架构维护层面。之后我发现这个模型套用到现在的运维工作中也能得心应手。

海贼王介绍

技术分享

 

简介
《ONE PIECE》(海贼王、航海王)是日本漫画家尾田荣一郎作画的漫画作品,这是一部青春热血励志的漫画。
故事背景
拥有财富、名声、权力,这世界上的一切的男人 “海贼王”哥尔·D·罗杰,在被行刑受死之前说了一句话,让全世界的人都涌向了大海。“想要我的宝藏吗?如果想要的话,那就到海上去找吧,我全部都放在那里。”,世界开始迎接“大海贼时代”的来临。
时值“大海贼时代”,为了寻找传说中海贼王罗杰所留下的大秘宝“ONE PIECE”,无数海贼扬起旗帜,互相争斗。一个叫路飞的少年为了与因救他而断臂的香克斯的约定而出海,在旅途中不断寻找志同道合的伙伴,开始了以成为海贼王为目标的伟大冒险旅程。
三刀流剑客—罗罗亚·索隆
能够自由操纵三把刀战斗。爱喝酒,爱睡觉,讲义气,海贼第一超级大路痴。
为了小时候与挚友的约定而踏上了前往世界第一剑士的道路,随后成为主角蒙奇·D·路飞的第一个伙伴。在初次败给世界第一剑士“鹰眼米霍克”后向路飞发誓永不再败,并且更加努力的锻炼自己。两年后的他成功与伙伴们汇合,并且为了实现自己的梦想,奔赴强者如云的新世界。

技术分享

三刀流初现

在机房大量的服务器管理中有很多事情,但把事情分门别类来看的话,主要的事物就是三类并能构成三刀的基本原型。

  • 监控—和道一文字
    机房运维中监控是最重要的一项事情,有了监控,我们能看清楚现在网络,机房在什么时候出现了什么故障,能及时的给客户反馈故障信息,故障分析,让故障在第一时间内解决。同时有了监控我们才好掌握数据,在对数据不断的分析过程中对运营的业务进行不断的优化和完善。监控是处理运维问题的上等快刀。
    技术分享
  • 统计—三代鬼彻
    作为机房运维,最主要的职责之一是管理好客户的资产,那么清楚机房的资产是件很重要的事情,所以能不能有效的统计机房资产,清楚的知道机房的资产在哪里,这个非常关键。而且在以前的公司里统计每天都要来找麻烦,非常头疼。但是掌握好了统计就能快速的处理问题提高效率,节约查找的时间。统计这把刀要用好了非常好,但用不好自己弄得自己头疼,因为统计出来的东西说不清道不明,所以用妖刀三代鬼彻来形容应该比较贴切。
    技术分享
  • 维护—黑刀秋水
    维护主要是维护方法论,把每次进行维护的方式进行整理,步骤化,标准化,流程化,工具化,服务化,最终实现机器管理机器的目的。通过方法论的收集和整理,步骤化,标准化,流程化,工具化,服务化之后,运维效率会呈现几何数量级的提升,所以这里用大快刀—黑刀秋水来形容一点不为过。
    技术分享

    三刀流牛刀小试

    在机房的运维工作中的三刀流已经初具效应,接下来我进入了软件系统运维领域,初入公司,我也很好奇之前的三刀流还适用吗,带着忐忑的心情,我入职了。可能由于业务模型相似,我发现我的运维三刀流依旧有用,而且还很有成效,虽谈不上能立马处理问题,但原理基本相通,解决和处理日常的运维问题十分简单。我需要做的就是扩大范围,我开始继续磨练我的刀。
    技术分享
  • 监控范围扩大
    以前在机房里监控设备,仅仅监控流量使用情况就基本能满足日常需求了,由于机房服务器众多,要监控所有的服务器有且仅能监控流量。但在应用维护里除了监控流量还要监控CPU,内存,SQL查询情况等等,会造成系统卡慢的所有性能指标最好都给监控上。
  • 统计范围扩大
    统计已经不单单是统计资产那么简单了,从业务使用情况,负载情况,到知识管理等等都需要统计记录,而且当统计记录到一定的量的时候,我们会发现很多事物是有相通性的。通过统计我们可以分析出事情的对象,以及解决问题的方法。这个时候我们需要用到合适的管理工具来帮助我们统计和分析事物。很幸运的是我遇到了一款知识管理软件,wecenter,这款软件能提供类知乎的问答管理。十分赞,大家有兴趣可以去了解试用下。
  • 维护方式升级
    维护方式以前在机房只是走过了步骤化,流程化,进入新的运维环境,我开始了工具化(程序化)的工作,并朝着服务化前进。我开始用生涩的编程技术来写小工具。
    通过这几步,我基本完成了日常事务的高效处理。特别是系统配置从原来的手工一步步点击配置,大约半小时到一小时的流程逐步缩短到5分钟,配置步骤降低到10步以内,大大降低了配置复杂度。

    三刀流招式简介

    技术分享

    一刀流 居合斩 狮子歌歌 监控

    通过监控,我们能收集系统在不同时间的运行数据,汇总到一起进行图形化分析,我们就能推测出问题发生的情况,还原出事情的起因、经过和结果。
    这一招几乎是一击即中的必杀,因为任何问题的发生一定会留下痕迹,而这些痕迹会通过数据显现在图表中,通过监控记录,分析还原事情的本质。从而在根本上将问题处理掉。
    举个例子:

     

    在一次更新之后系统时常出现卡死的情况,这种卡死的情况始终都找不到问题在哪,之前认为是数据库的问题,一个劲的在数据库上做优化,但是到了最后所有能优化的索引都优化完了,问题依旧。
    这个时候上了监控,通过监控数据的分析发现WEB服务器每次卡死的时候有几个指标异常标高1.是进程数,2.是tcp连接数,后进行TCP抓包,发现大量向数据库发送的空连接请求,在后来把这个问题整理成文档提交给研发后这件事情被低调的处理掉了,在也没提这个事情。

一刀流·三十六烦恼凤 统计

这里的统计指的是资产统计,项目统计,以及配置统计。通过这些统计信息,我们可以非常准确的管理整个系统的内容,我们清楚哪里是干什么的,并能清晰的知道我们要做什么,应该怎么做,因为所有的东西资产都能看得到,一目了然。
统计是一件很烧脑的事情,因为一个变更就要全部变更,配套的动作得处理到位,在机房的时候使用的还是execl表格所以处理很多数据统计很吃力,还经常出错,结果往往自己受伤。
但统计确实让工作效率提高了,举个例子

 

一个完善的表格,上面有机器的配置信息,位置信息,系统信息,在一个表格里面能查到所有的信息。
一件事情派发过来,只要一查到机器的记录,维护需要的数据就都出来了,机器在哪?什么配置?什么系统?立马就能干活。而且别人一问全部都清楚都了解。

一刀流·三百六十烦恼凤 维护

维护方式整理,将维护方式步骤化,流程化,形成标准的模板体系。这种模板体系建立完成以后,我们可以尝试程序化,自动化,把它与作业流程结合起来。以下说一个我在步骤化,流程化,形成标准的模板体系这方面的实践。

 

机房运维的过程中做错系统我想是大家最头疼的一件事情,相信各位有碰到或听说过机房做错系统把数据清空掉的情况,到了最后机房恢复数据赔钱了事。
谁都不想出现错误,但是人非圣贤孰能无过呢?关键是时候怎么去预防和避免错误。
为了解决上面的问题,领导教了我一个最佳实践—每次要做系统都拿笔把事情记录在本子上,在进机房操作。
得此方法以后,我自行设计了个机房事物统计记录表,并打印出来,形成一张张表格,这样一来解决了做的事情时常要统计两次的问题,电脑上统计一次,本子上记一次,防止了小伙伴们为了偷懒只在电脑上记然后凭记忆力操作造成出错的问题。
强制要求小伙伴们通知的事情一定要记录在打印的表格上,在多次核对清楚了以后,看清楚了在执行,以此来避免因为漏记错记发生错误的概率。

施行一段时间以后效果还是很不错的,做事情相比来说更加清晰易整理了。事实证明通过良好的流程化步骤化的设计,是能避免错误发生的并提高运维效率。解决运维中的难题。

三刀流奥义—一大·三千·大千·世界

 

出招前索隆会吟咏几句台词:“九山八海、为一世界,聚千界则成“小千世界”,此界乘三,无我不端者,三刀流奥义….一大?三千?大千?世界!!

我引用这段话是想说明我的一个观点,未来的运维,分布式的管理,将聚少成多,聚沙成丘,通过运维三刀的调理,我想实现数万台的服务器管理也不会是难事。当然这是我的一个理想状态。

尾声:

技术分享
作为一名运维工作者,我觉得运维工作中资料的整理学习和分析应当占工作的80%而操作应当在整体工作量的20%日常的整理学习和分析是为操作服务的。
而目前我们运维工作的重心却恰好相反,操作第一,学习汇总第二,而且运维考核指标中用大量的工厂计件的方式来考量运维,运维成了面向操作化的一个体系,但大部分老板会喜欢这么做,因为他们注重结果,他们注重的结果是你拿了钱替我干了多少我需要你干的活,其他的事情你不需要去考虑也不用考虑。
工作中不去考虑太多的问题是正确的,但这样做的结果是每个人都是老板赚钱的一个工具而已,相互的粘合性差,一些深层的问题不能真实的反馈出来,久而久之问题累积越累越大,最后会走向崩溃的边缘。
对于运维来说,大量的操作时间排挤掉了总结学习思考的时间带来的是灾难性的恶果,操作缺乏保护,经验得不到累积(无法妥善的记录问题,没时间,只能顾自己的),每个人都在重复踩坑,重复造轮子,一件事情问几遍,问到最后没朋友,造成产品品质下降,问题繁多,反复修复问题,工作中时常会犯错。
俗话说的好,常在河边走哪有不湿鞋,常在江湖飘哪有不挨刀,那些没有做错过事的“圣人”一定是没做过运维的。系统时常变更的话一定容易造成不稳定的,而且大变更就意味着大问题,大风险。每一次变更都意味着踩坑和犯错。如何不掉进坑里是每一个运维都要面临的问题。

 

“变更是常态,需要在常态机制下建立控制变更,给可能引入的故障”

系统变更是一种常态化的操作,是运维吃饭的本钱,系统在迭代,要满足需求就需要变更,作为运维人员既然是吃运维这碗饭,就不能够因噎废食。
所以想要系统稳定,我想方法得是降低人为变更执行,明确影响范围,引入变更控制,控制影响面。这几点在《持续交付—发布可靠软件的系统方法》一书中有实际详细的案例。
运维真正在做的事情,应该是不断发现问题解决问题的事情,运维人应当具备的精神应该就是像罗罗亚·索隆那样,想要当天下第一大剑豪,像海贼王承诺今后再也不会输一样。不断的去完善自己,充实自己,挑战自己并超越自己。
技术分享
亮出你们的大宝剑吧!运维的兄弟们!朋友们!向汹涌而来的问题砍去吧!当你砍掉所有问题的时候你会有无比的自豪感与荣耀感,成为大剑豪的目标也会指日可待。
最后想说一句话,请尊重身边的每一位朋友,相逢相知相识都是缘,有缘未必有份,缘是因份是果,愿各位朋友结善因得善果。
最后谢谢各位的品读,文章中生搬硬套之处还请海涵

?

运维三刀流

标签:

原文地址:http://www.cnblogs.com/pangzih/p/4985592.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!