变更风险

序言

     据不完全统计,每年故障的百分之九十都死在变更上。。。各种各样的原因,各种各样的理由。。。


    变更导致的锅能绕地球一圈。。。

风言风语

     开发与运维之战。。。这是一场巅峰之战,到底鹿死谁手。。。其实,并没有输赢,输了,对谁都没有好处,赢了,那就是双赢。。。


    开发与运维的目标不同,从而造成天然的目标的冲突:开发想着快速迭代版本,快速上线测试。。。线上测试环境了解一下;运维想着保证生产环境安全,规定各种流程,规定各种前置检查。。。


    理想是丰满的,现实是骨干的,再多的前置检查,如果草草了事,也是一盘散沙。。。再多的流程,再多的规章制度,在业务逼迫要上线的时候,总是跳过这些所谓的流程,所谓的规章制度。。。


    本来变更是一件很好玩的事儿,到最后。。。变成了一种心惊肉跳的事儿,没人知道会发生什么,没人知道即将会造成什么影响,没人去思考会怎么解决问题,没人会去仔细检查每一步的正确性。。。到后面就是大家一起来摔锅。。。


    1、 自己撒的狗粮自己吃

    自己写的变更方案,自己去做,在规定的时间,可预期的影响范围内自己操作。。。自己体验自己的考虑是否周全,等自己弄出了一次故障,就知道下次变更的时候需要考虑哪些东西,需要注意哪些方面。。。连自己都不敢做的事,怎么可以让给别人做。


    自己写的系统,自己运维一段时间,让你体验一下,什么叫做垃圾系统无法运维,今天这个报错,明天那个OOM,各种BUG层出不穷。。。


    自己写的垃圾方案,哭着也要执行完毕。。。自己写的垃圾系统,跪着也要保证安全生产。


    这就是运维的来源。。。自己拉的史自己扫干净,不要天天让别人来替你擦屁股。


    2 、 二次检查

    在执行变更的时候,我们总是黑屏操作,因为看着指令在流动,感觉比较酷。。。感觉看着日志比较爽。。。


    误操作了解一下。。。黄金指了解一下。。。


    所以就有了二次检查,所以就有了指令的二次核对。。。很多人认为自己比较熟悉,那么各种指令信手拈来,对于高危指令,并不会进行太多的考虑,一不小心。。。哎哟,背了一个故障


    为什么会黑屏变更?因为目前的技术水平并不能达到全部使用白屏来进行操作变更,黑屏。。。黑夜给了你一双明亮的眼睛,而你用来背锅。。。


    poweroff关闭核心数据库了解一下。。。还没找到数据库是在哪个机架,还没找到数据库的带外IP。。。恢复都没法恢复,20分钟够不够?


    二次检查,双人操作,主要作用是对于重大的变更,高危的指令进行二次确认,防止误操作。。。


    3、 变更方案

    多一次变更,就多了一次背锅的机会。。。无论你是执行者,还是方案的提供者,都会存在风险。。。


    只因为在人群中看了你一眼,所以。。。背了一个故障


    在出变更方案的时候,多考虑一点点总比考虑少一点点要好的多的多,能大大的减少变更的风险。


    云环境。。。风起云涌,在底层,错综复杂的各种进程,复杂的网络环境,各种调用的接口,都存在不可预期的风险


    在出变更方案的时候,只能做到多检查,检查各种前置条件,在测试环境进行演练,对比各种环境的差异,从而做到要做的事,哪些可能产生风险,哪些没有风险做到心中有数。。。


    蒙着眼睛走路,也是一种不错的方式。。。命令的执行用户是啥?root用户还是admin用户?命令的执行路径是否写全了?先启动,后关闭,启动关闭脚本是否存在?在启动进程后有没有检查的指令?在关闭进程后有没有检查的指令?启动关闭的日志路径在哪儿?一切是否准备就绪。。。。


    每一步都需要有检查,每一步都要做好回滚的准备。。。


    4、只看结果不看过程

    作为领导者,从来只看结果不看过程。。。过程你做了多少准备,你做了多少功课,一切取决于结果。。。


    结果是坏的,一跳绳上的蚂蚱,全部炖了吃了。。。


    结果是一个故障,从上到下全部挂掉。。。。必须有人扛了解一下。。。


    不看功劳看苦劳?不可能的。。。这辈子都不可能的。。。需要的只是结果,没有结果的东西为什么需要?


    命令的执行者也是具有责任的。。。虽然不是导致故障的直接者。。。


    不出问题是本份,不出问题的时候要运维干啥。。。出了问题要你何用,出了问题。。。运维你该出来背锅了。。。来,大家排排站,一个个分,都跑不了,哈哈


    5、 不懂就是不懂

    懂?还是不懂?你说我到底是懂还是不懂啊。。。我不知道啊,我是谁,我在哪儿,我在做什么?


    提一个正确的问题,非要顾左而言他。。。就是不给出正面的回答,最后的结果是,TM的他也不懂,还不愿意承认。。。承认不懂会死?会丢面子?


    理直气壮的不懂。。。我不懂我自豪了吗?我不懂我骄傲了吗?


    不懂。。。找个懂的人来问问不就好了?那么简单的事,那么多的人,总会有懂的人,总能找到懂的人,总能查出来是什么原因。。。是因为不愿意?还是不好意思?还是要丢脸。。。脸有个屁的用,有的时候,还不如屁股值钱。。。屁股打了不疼,等打你脸的时候,你就知道什么叫疼了。。。


    不懂装懂的最可恨,WTF!!!这种人需要怼,怼到怀疑人生。。。


    6、 新人带老人,老人带新人

    每个人都有自己做事的方式,各有其优点。。。

    

    新人带来新鲜的血液,带来新的活力。。。到底是带来了活力还是拖累了整个团队,莫非你心里没点X数?


    新人带老人,带来新的动力,带来新的激情,带来新的活力。


    老人带新人?不可能的。。。这辈子都不可能的。。。


    本身忙如狗,还能带着你玩耍。。。战略性的失误,导致整个节奏变慢。。。


    带吧,浪费那么多时间,还不一定有用。。。不带吧,到处擦屁股。。。识人的眼光了解一下。。。眼瞎了解一下。。。


    新人。。。花费多少时间培养,花费多少资源培养,慢慢自己摸索起来?不可能的。。。坑那么多,没准就填了一个坑,然后就爬不出来了。。。


    


    嗯。。。超无聊的文章。。。。很无趣。。。如果你看到了这里。。。那么。。。在下佩服。。。。


猜你喜欢

转载自blog.51cto.com/15060545/2653104