读SRE Google运维解密有感(二)
《读SRE Google运维解密有感(二)》要点: 前言这是读“SRE Google运维解密”有感第二篇,第一篇参见 这本书最近又读了几章,结合自己的经历,有些地方真的能感同身受,有些地方也惊叹SRE充满辩证的思想,总之SRE是好一本好书,会给你很大的启发. 充满辩证的思想本书主要是讲通过SRE思想进行运维体系的构建,除了技术层面以外,我更关注SRE内在充满辩证的思想. 一个辩证的思想是凡事都有两面性,这个道理很简单,大家一听就说“对啊,这不是废话么”,可是面对具体问题的时候,有时候往往做不到这一点. 服务太稳定不好“什么?我有没有听错”,一直以来运维人员所追求的不就是稳定的服务么?可是谷歌认为“在内部程序质量没有达到一定标准,服务太稳定会产生盲目的依赖” 它举了一个例子,谷歌的chubby锁服务,它是一个基础服务,做为基础组件很多上层服务依赖于它,但是工程师们认为它还是有缺陷,有问题隐患,而在一段时间内它的表现还异常稳定,这样就给调用方一种错觉,这个服务很好,越来越多的服务依赖于它. 琐事也有好处工作中的琐事是指那么“无聊”,“无效率”,“流程化”的事情,很多人都很抵触,认为它把你的时间碎片化了,使工作没有效率. SRE有很大篇幅讨论了琐事(toil)的问题,它认为琐事也有好处,比如可以适当的减压,因为做起来不用过多的思考,可以做为创造性工作的一种调剂,从中也能发现需要优化的问题. 当然SRE还是在尽量减少琐事,它的坏处还是多于好处. 少即是多谷歌追求一种简单,有效的解决方案,比如监控项不是越多越好,它列出监控的4个黄金指标
通过这四个指标,基本可涵盖大部分问题,设置监控项的时候,我们往往生怕漏掉某个项目,设置非常详细的监控策略,这些监控项不一定真的有意义,反而会带来大量的干扰报警. 在代码层面也遵循少即是多的原则,无用的代码,大量冗余的注释都要删除掉,提供简单的api入口,我们常常为了以后的扩展性,预先加入很多冗余功能代码,谷歌反其道而行,鼓励代码的精简.
自动化的坏处“什么?我没有听错?自动化会有坏处“,是的,谷歌认为运维自动化是有坏处的. 自动化的坏处在于,对于一个运维工程师来讲,操作变成黑盒了,他不用明白一个脚本的原理,只要运行就好了,对于他来讲是一件很开心的事,可是带来的副作用是他对于线上的熟悉程度越来越少,他只会执行这个脚本,那么这个脚本一旦出问题,因为缺少对线上环境的了解,无法很快进行修复. 体会到了自动化带来的负面作用,谷歌希望使用自洽的方案解决问题,这样才诞生了Borg系统. 故障演习谷歌会定期举行故障演习,而且他们是真的在线上演练.
结语SRE不仅是一些运维的方法论,它的辩证看问题的思想值得我们学习. (编辑:ASP站长网) |