zoukankan      html  css  js  c++  java
  • 运维故障处理方法论


    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
    张贺,多年互联网行业工作经验,担任过网络工程师、系统集成工程师、LINUX系统运维工程师
    个人网站:www.zhanghehe.cn
    笔者微信:zhanghe15069028807,现居济南历下区
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-


    运维故障处理方法论

    前言

    学一项技术,可能只需要几个小时,掌握一种网络协议也用不了几天,而养成解决问题的思路却需要经年累月的练习和思考,这个过程往往伴随着尴尬、纠结,甚至是痛苦。在三国演义当中,刘备因关张二人之死迁怒于孙权,率大军攻东吴,东吴节节败退,让孙权有了投降的想法,但是孙权觉得投降太过屈辱,子布对孙权说:“帝王的度量都是由世间常人不能忍受的屈辱撑大的”,我觉得一个技术人的水平也是如此,是由各种各样的难题、各种各样的痛苦和纠结给“堆”起来的。

    经常有那么一瞬间,我会发现有很多感觉是无法表述的,思考也无法触及,就比如你在模拟器做了很多的实验,但是在实际的生产环境当中却没有经验,但面对生产环境的故障时,还有可能会陷入其中,我们会发现在模拟器上我们是上帝视角,而在实际的生活环境当中,我们是用户视角,就是有很多事情如果你没有亲身经历过,你就无法有真正的经验。

    莫慌

    网络工程师也好,运维也罢,总是会遇到各种各样的紧急的故障,之前在做工程师的时候,遇到过最紧急的事是vmware无法连接存储,导致vmware上的虚拟机都无法正常工作,有好几个业务都在上面跑着,客户一直抱怨我们,而且老板也来了都站在身后,一个劲的催,我清楚的记得,初出茅庐的我敲打的键盘的手都有些发抖……

    紧张没什么好怕的,最关键的是人一旦紧张了,就很难发挥出他应该有的水平了,大脑一片空白,血液都流向四肢。我最讨厌别人告诉我不要慌张,要镇定,冷静,闭嘴!我靠!废话!!我难道不知道吗!!!

    那么到底有没有方法,让我们能不慌张,我苦苦探索良久,发现一些可行的方法,分享给大家。

    事前:

    • 平时多锻炼,这个方法亲测有效,我刚毕业的时候做入职培训,当众说话时紧张的不行,出丑出大了,后来我接触到了跑步,跑步跑了一年左右,又有一次我给新来的工程师做入职培训的时候,我本以为我会紧张 ,结果紧张的情绪好像是没有了,好奇怪,那一场培训是我的巅峰状态,在培训的过程当中谈笑风生,游刃有余,效果非常好。锻炼可以减少紧张的情绪是有科学依据的,有兴趣的同学可以去搜索一下相关的论文。
    • 对自己好一点,对世界好一点,可以非常有效的减少紧张和焦虑的情绪,这是我这些年摸索出来的终极法门。我们从打扫卫生说起,你把你的办公桌周围打扫的很干净,整齐,就会感觉心情很好,做事也有状态,这就是反馈,你打扫整理周围,周围的世界给你反馈,你的情绪会变好,自尊水平会提升,遇到事情的时候由于自尊水平特别高,所以往往不太在意别人的看法,水平也能正常发挥。我以为这是我独有的发现,为此沾沾自喜了许久,后来看到《扫除道》一书,好吧,我承认 ,有人很早就知道这个方法了……
    • 别骄傲,保持对周围的尊重。这也是亲身体验,我发现只要有一骄傲,一装13,遇到事情的就容易翻车;有一次客户那边的办公室休息,一个美女问我:“你会安装windows系统吗?”,我不知道安装过多少回了,骄傲的情绪立刻起来了,我立刻打保票说:“美女,你放心,30分钟之内保证完事!”,结果啪啪打脸,本以为手到擒来的小事,结果因为驱动问题却一直安装失败,当时我就紧张不行,我发觉自己被骄傲占据了身体之后,我关注的点不再是问题本身,而变成了如何讨好那个女生,我的紧张的原因竟然变成了千万不能让美女失望!啊!这该死的本性!当我发觉之后,我的关注点重新聚焦到问题本身上,结果很快发现了问题的症结,PE太老了,机器太新了,我重新做了一个最新PE就好了。你可能想问我事后怎么样了,事后我加了那个美女的微信,通过看她的朋友圈我发现她可能没有表面上那么清纯可人,于是我放弃了非分之想,从此没有再联系过她。

    上面都是在事情发生前,都是我自己的亲身体会,那如果一时无法解决的事情已经发生了,我们又该如何处理呢?如果你已经认真的践行了上述几点的话,想必此时的你已经稳如老狗。

    事后:

    • 抽一根,这绝对是相当中肯的建议,当你遇到一时不知道怎么处理的事情时,先停一下,深吸一口气,会抽烟的出去抽根烟冷静冷静,会抽烟的人都知道,抽烟有缓解紧张的作用,其实上抽烟会让人达到一种抽离当中事情的状态。那我们不会抽烟怎么办呢?还是先放下手中的活,走一走,观察一下自己到底是什么让自己这么紧张,当你一观察自己的时候,紧张的感觉就消失了,后来我才知道,这种方法叫正念,有兴趣的同学可以去网上找一找相关资料。
    • 控制二分法,这是斯多葛学派的一个最重要的心法,简单来说,就是将当前的事情分成你能控制的,和你不能控制的 ,能控制的尽力去做,不能控制的就不要瞎担心了,担心也没有用,我还为此专门写过一篇博客: https://www.cnblogs.com/yizhangheka/p/11566719.html
    • 把事情往坏处想,就算这件事我处理不好又能怎样呢?大不了被开除呗,此处不留爷,自有留爷处!当前是一个好机会,什么机会?学习的机会,把当前的事情当成你学习和练习的机会,让这件事情为你的成长“加料”,有了这样的心态,紧张感也会缓解不少。

    以上这三点,也是我自己的亲身体验,前两者有都有科学依据。

    观察-思考

    • 一定要仔细观察,观察故障发生的报错信息,有些报错信息会提示你如何解决,仔细查看报错信息。 收集问题出现时间点前后所有的告警、变更等相关的信息。有时候凭借足够的信息可以快速的定位问题。

    • 将问题的故障现象写到纸上,搞清楚当前要问题到底是什么?真的是我自己的的问题吗?如果排除到底是不是自己的原因?

    • 分析导致这个故障现象的原因有哪些?将原因都列到纸上,然后一个个地慢慢排除,这是仿照头脑风暴。

    • 不要轻易相信开发说的话,除非有实际的证据(代码,日志等)

    • 仔细观察日志!仔细观察日志!要搞清楚每个日志里面记录的是什么信息?而且平时没有故障的时候最好也要去查看日志熟悉熟悉,要知道正常的日志记录是什么样的?这样在意外发生的时候能快速看到异常的条目,具体可以参考我这篇博客: https://www.cnblogs.com/yizhangheka/p/12624580.html

    预演

    如果我们对线上的业务有充分的了解,当发生故障的时候,有时候头脑预演一遍,往往大概就能猜对问题的症结所在,前提是你对业务一定要熟悉,对各种技术也要有一定深度的了解。

    我通过预演就解决过好几个问题,有一次远程解决一个NFS挂载故障问题,ping、showmount探测时都没有问题,服务器端的权限设置都没有问题,但是死活都挂载不上,报错“ mount.nfs: access denied by …… ”我在头脑当中将NFS服务器相关的三个组件之间的作用和流程从头开始思考了一遍,在思考的过程当中要问自己,当前的情况符合挂载成功的前提吗?一边思考,一边验证现场的场景,最终在权限这个地方灵光一闪,ping和showmount只能证明两台主机可以通信,但是不能证明服务器就允许客户端挂载!随着这个思路向下想,最终发现客户端和服务器之间有路由,路由做了S-NAT转换,导致了客户端的挂载请求被拒绝!详细过程请看我这篇博客: https://www.cnblogs.com/yizhangheka/p/12625394.html

    走投无路

    如果所有已知的方法都无法解决时,只能用最后一招了,备份好信息重启或重装。 可以用一些重启的方案来把故障恢复到系统初始的状态,把这个故障解决掉,这是一个非常强有力的一个故障解决方法。当然,重启前需要考虑预期外的后果,比如可能启动失败会导致更差的后果。除了重启,还可以重装 / 重建系统,从默认或正常工作的系统复制一个副本出来。

    总结

    当遇到已经解决的故障,最好要记录下来的,不仅仅是对自己有一个交代,而且可以写成博客,写的好可能将来出版出书,也能增加个人影响力。

    我们将时间和精力出卖给老板,我们想要换取的不仅是金钱,还有经验。

  • 相关阅读:
    zoj 3279 线段树 OR 树状数组
    fzu 1962 树状数组 OR 线段树
    hdu 5057 块状链表
    hdu3487 Play with Chain
    bzoj 1588营业额统计(HNOI 2002)
    poj2823 Sliding Window
    poj2828 Buy Tickets
    poj2395 Out of Hay
    poj3667 Hotel
    poj1703 Lost Cows
  • 原文地址:https://www.cnblogs.com/yizhangheka/p/12703403.html
Copyright © 2011-2022 走看看