首席架构师白鳝:运维的进阶与哲学之道
《首席架构师白鳝:运维的进阶与哲学之道》要点: 本文根据白鳝老师在〖2016 DAMS中国数据资产管理峰会〗现场演讲内容整理而成. 大家好,今天想跟大家谈谈关于DBA怎么去考虑哲学化的问题.前段时间和朋友聚在一起时也说到,十多年前的很多DBA现在都不再干这行了,很多后面都变成哲学家了.为什么这么说呢?因为很多DBA后面都转去做架构师了. 其实在十几年前,曾有人用这样一句话来形容DBA:“你们DBA做优化就是盲人摸象”,当时我觉得这句话很不舒服,因为作为一个DBA来说,我认为这个职位在系统优化中间的价值是很大的.但随着这些年我更多地接触到一些架构的问题,慢慢从架构方面去考虑问题时,我发现,盲人摸象这种说法确实不为过.怀着这样一些想法,今天跟大家分享《运维中的哲学问题》. 不想做哲学家的DBA不是好架构师首先,我想说的是——不想做哲学家的DBA不是好架构师!这也相当于前面我所提到的,为什么做DBA做到最后会变成哲学家呢? 就拿考虑系统的问题来说,可能刚刚入行的人,他会就着某一个东西去考虑,比如说,DBA的话可以就着数据库去着手.但随着我们的接触面越来越广,处理的问题越来越复杂时,我们就可能慢慢会从系统本身去考虑,这种情况下,有时候我们认为很多理所当然、正确的东西进入哲学范围后会发现它不对,或者不一定对,甚至是完全错误的. 包括像我,大概在十年前写的《Oracle RAC日记》这本书,前段时间我又重新把这本书翻了一下,发现里面很多的案例和关联都是错的,甚至有些案例当时的处理模式、方法是不对的.但真的不对吗?其实不一定.因为在当时它确实解决了问题,而且很多解决方法现在大家也在学.但是呢,如果转而从架构的角度去考虑,有可能当时我们的处理模式不是最好的,并没有把根本的问题解决掉.就像我们得了感冒,医生给你挂一针水,马上好了,但是如果说这个人总是感冒,总是隔三差五地去挂水,这肯定不好,必须要找到感冒的根源:是体质的问题还是其他什么问题,偏寒还是偏热,要用中医的疗法. 以前我们在内部也经常开玩笑,说当某个人考虑问题已经考虑得比较玄了,那他就已步入哲学家的行列了.如果你现在也开始学会辩证地看待问题,那么恭喜你,你已提升了一个档次,并成功晋级了.由此看来,不管作为DBA也好,还是运维人员也好,我们做系统运维,运维能力的提升都是分阶段的. 运维提升的阶段我初步地把它总结为四个阶段. 第一个阶段为精益化,即我们把一件事情做到更好,这也是一个专业化的问题,争取在这个领域把事情做到最牛逼. 但是,光有精益化是不够的,还需要把它标准化.比如说,以前我们给用户做巡检(这是DBA接的最多的活),不同的人去做巡检,效果是不一样的,因为不一样水平的人,能够发现的问题不尽相同.后来我也一直在考虑,硬件、小机、存储这些环节的巡检都已经标准化了,甚至可以用软件来实现.但是数据库的巡检能不能标准化呢? 从这件事情我们可以窥见到标准化的重要性. 一旦能够标准化了,下一步我们就可以考虑自动化了.现在,我们很多企业都在谈做运维自动化,但如果你企业运维的各种工具、知识体系都不标准化,你怎么做自动化?这种情况下做出来的自动化也是虚的.在这个过程中,企业采集了大量指标,做了大量的监控告警,但每天几百上千个告警跳出来,根本解决不完.这种不是在做自动化,而是给我们的运维人员添乱、添堵.所以说,我们想做自动化之前,一定要考虑运维标准化,当我们能把运维的一系列工作包括采集、分析、监控、操作等全部标准化,自动化的问题也会迎刃而解. 自动化完了下一步还需要做可视化,为什么呢?这是做完自动化以后必须做的一个环节,它既可以把采集到的大量数据通过用一种可视化的方式表现出来,也可以很好地把一些指标向运维人员展示,可以一定程度解放运维人员,降低运维的成本.但是在做可视化的过程中,我们不能再走以前的老路. 以前我们用到的运维自动化工具,都是一些商业软件,并且这些商业软件通常是基于网管式的去做,这些网管软件面面俱到,什么都能干,能够采集大量的信息,但是它不够专业.我举个例子,比如说现在我对一个系统,这个系统里面有12个网络设备,20来个服务器,不同的人看这些东西,他的关注点是不一样的,但是专业的网管软件只能采集一套数据.因此这里面就涉及到在引入可视化的时候,不单单要把数据展示出来,还要做到场景化的运维.对于哪怕同一个拓扑图,网管人员、安全人员和业务人员会根据自身关注的指标体系,看到不一样的东西,即不同的人关注不同的场景. 最后,当我们把前面所有步骤都完成了,后续就可以做智能化了,也就是引入大数据分析.通过大数据分析,我们能够发现以前很多关注不到的问题,一些以前我们知识能力达不到的分析层面.就像前段时间的阿尔法狗,有很多我们不知道的定式它也能走,阿尔法狗的出现可能会对未来下围棋的定式产生很大的影响.同时,自动化的分析对我们的IT经验、运维经验来说也是很好的补充. 系统运维工作的要点那么,作为运维来说,运维里面的重点是什么?其实很朴素,我把它总结了几点: (编辑:ASP站长网) |