武汉金信润天
免费服务热线:13260580922
微信在线咨询:13260580922
武汉金信润天:027-87538126
北京金信润天:010-88134881
扫一扫
关注我们
360运维工程师为你解密 Google 的运维秘诀
时间:2018-09-13 17:41    浏览次数:     发布者:runtimewh    来源:未知    
0

  这几天计划运用碎片时刻读了一下"SRE Google运维解密"这本书,现在读了前几章,感觉收成颇多,结合自己的作业经历和书中的关键,写一些感悟和考虑,期望对咱们有一点协助。

  SRE

  有关SRE我就不多介绍了,中文名字叫站点牢靠性工程师,它的由来是google想经过软件工程师来处理复杂运维问题。它里边有许多有意思的点,比方:

  运维作业只能占比作业时刻50%

  别的50%要开发东西处理问题

  SRE和开发工程师会轮岗



  这些相关概念网上许多都介绍了,我就不赘述了,我说下一些我感兴趣的点

  谷歌神话

  谷歌一直在技能范畴处于世界领先方位,从bigtable的三篇论文,开源的k8s,分布式联系数据库,谷歌的技能在IT范畴能够说是标杆。

  有个传说是谷歌内部运用的体系一般2-3年今后才会出相关论文或许开源版别完结,出来了今后其它企业开端实践还需求2-3年,等到你把这些完结了,谷歌又不知道完结了什么黑科技。IT界假如是江湖的话,谷歌就像是少林派,有一种全国武功出少林的气度。

  所以SRE这本书自带光环,许多人都觉得这是运维圣经,觉得这是解救运维范畴的不贰法宝。

  或许你也在读这本书,你也想在内部测验SRE的一些办法和思维。

  那么首要我劝你先镇定一下,它并不是一个全能的解药,要先考虑下你的公司现状,问题,结合实际国情,找到切实可行的办法。

  我为什么这么说呢?请往下看

  谷歌的肌肉

  首要本书一开端简略说了下SRE的思维和办法论,然后介绍了谷歌的基础设备,就好像一个人相同,谷歌的基础设备就是这个人的肌肉,有了微弱的肌肉才干跑得快,跳得高。

  网络设备

  谷歌根据自研的交换机Clos,运用SDN技能,保证每个数据中心可供给海量带宽,而且能够动态带宽办理优化网络连接。

  调度体系

  运用Borg担任在集群层面办理任务编列作业

  存储

  在物理机设备(磁盘)上构建了一套简略可用,牢靠的集群存储效劳。

  Colossus GFS文件体系的改进白本

  Bigtable松懈存储的,分布式,有次序,持久化的NoSQL数据库

  Spanner分布式的联系型数据库

  分布式锁

  Chubby供给一个能够处理异地,跨机房等级锁恳求的集群锁效劳

  监控和报警

  Borgmon从监控方针抓取监控方针,这些方针能够用来触发报警,也能够存储起来供观看。(开源完结是Prometheus)

  RPC

  所有谷歌效劳之间运用RPC通讯,称为Stubby(开源完结gRPC),传输格局是Protobuf。

  GSLB和BNS

  运用地理方位进行负载均衡DNS恳求

  用户效劳层面负载均衡

  RPC层面负载均衡


  经过各个层面的负载均衡将用户流量导向健康的效劳上面。

  这些完善的基础设备,给SRE中的办法和思维做了强有力的支撑。

  毛病不是祸不单行

  SRE中界说了一个概念叫SLO(效劳质量方针),经过SLO合理评判一个效劳要达到的效劳质量。

  首要我先说下”毛病“这个词,这个词对运维人员来说,是十分不想听到和遇到的。运维人员有一个重要任务是保证效劳的安稳,换句话说就是没有毛病。

  所以咱们或多或少谈到“毛病”就会色变,遇到毛病立刻第一时刻处理,为了避免下次还呈现,咱们可能还会开“事端总结会”,优化流程和东西。

  其实咱们许多时分关于“毛病”的了解是简略粗犷的,从一线职工到老板都以为“毛病不能有”,“毛病有必要消除”,咱们消耗很大精力“消除了全部毛病”,体系平稳运行了,自己也会萌发成就感,感觉干的还不赖。但是并没有进一步去考虑一下,毛病存在的意义。

  咱们常见的所谓“99.9%”,“99.99%”的效劳可用性,但是并没有运用科学办法来剖析和规划事务究竟应该3个9仍是4个9。

  SRE中提到一句话“100%安稳的体系是不存在的”,它把这个做为一个条件,那也意味着体系是肯定要出毛病的。

  SLO就是用来处理这个工作的,首要效劳的毛病不可避免,每个效劳的等级不同,不可能所有效劳都是99.999999,要针对事务的不通特性拟定不同的SLO。

  比方:谷歌的企业效劳,针对企业用户是有签署效劳中断补偿协议的,那么安稳性要求很高,所以它的SLO等级有必要很高。谷歌的youtube(其时),针对终端用户且版别迭代很快,事务在不断改变和立异,SLO等级能够放低。

  SLO的拟定通常是产品经理,开发团队,SRE一起洽谈完结,咱们依据事务的规模,产品特性,产品处于的阶段拟定。

  SLO的拟定,我觉得就是科学的面临“毛病”这个问题,毛病不可避免,不该该以消除毛病为意图,合理的承受它,保证它在SLO规范的规模内,高于这个规范会糟蹋人力和本钱,低于这个规范就需求进行优化。

  SLO的拟定很大程度在于各个团队之间的洽谈,咱们都有根据数据的科学评判办法,比方产品预估的用户数,产品发版周期,运用带宽等。

  我国的国情更多的是拍脑袋,老板的情绪,上面的一句话“不能有事端”,那就是99.999999999999999无限,没有科学的进行评价。

  SLO处理的问题

  经过这样一个SLO,之前许多令人头疼的问题就方便的处理了。

  本钱和收益的对立

  咱们都知道维护效劳可用性的本钱不是线性添加的,到必定程度,添加一个9可能需求10倍100倍的本钱,经过SLO让本钱和收益获得很好的平衡,假设一个事务添加SLO等级,能够核算一下需求的本钱和带来的收益,假如因小失大就能够不必添加SLO等级。

  科学的运维

  有了SLO,关于运维作业有了可量化的规范,运维工程师不必每天提心吊胆,生怕呈现毛病,只需毛病在SLO规模内就是可承受的,节省出许多精力用在更重要的工作上。

  安稳和立异的对立

  咱们都知道运维工程师最不喜爱的就是“线上改变”,一个效劳假如不做改变一般都是很安稳的,问题往往呈现在改变上。

  但是一个新事务往往需求很多改变,不停的迭代立异。

  这个时分运维会说:别做改变了,安稳是第一位的,出了毛病,咱们得背锅。

  开发会说:咱们得改变,这样才有新功能,才干获取更多用户啊。

  对立因而产生了。

  经过SLO很好的处理了这个对立,咱们先一起给这个事务拟定好SLO的等级,假如是需求频频的改变的,可能SLO等级就会低一些。

  这样在满意事务立异的需求上,只需在SLO规模内,就以为事务是安稳的。

  反之,假如改变太频频,使毛病率超出了SLO可承受的规模,能够要求开发调低改变频率,或许重新拟定SLO等级。

  这样就处理了事务既要“安稳”又要“立异“的对立。



阅读推荐:运维工程师的自我修养—处事篇
相关推荐

总公司地址:北京市海淀区阜外亮甲店1号恩济西园产业园15号楼B座303
武汉分公司地址:湖北省武汉市洪山区虎泉街凯乐桂园A座9层(虎泉地铁站A出口右手边)
咨询报名电话:18672341218(微信同号)   武汉金信润天:027-87538126   北京金信润天:010-88134881
教学就业监督电话:027-87538125    网站地图   备案号:鄂ICP备15010789号-2
姓名
手机
电话咨询 在线咨询 QQ客服