在运维侠客行·北京站上,主办方优云软件特意邀请了来自日志易的产品总监饶琛琳老师给大家带来了数据驱动的智能运维主题演讲。本文主要从怎么做到DevOps开始聊起,接着说了智能运维平台作用和架构,并对告警交互系统进行分析,最后对智能运维平台进行了简要总结。一起来了解下吧。
饶琛琳,日志易产品总监,前·新浪微博系统架构师,Weibo: @ARGV,著有:《网站运维技术与实践》《ELKstack权威指南》译有:《Puppet 3 Cookbook》《Learning Puppet 4》。
以下是精彩内容整理:
刚刚前面我坐在后面听,听到优云在讲双态的时候提的比较好的几个关键词,第一个就是运维其实是需要有一个平台的,第二个就是运维最终需要通过可视化走向智能化的。这个地方有两个点,第一个点是平台,这个地方可能不是我今天演讲的关键的地方,可我觉得还是要提一下。因为智能运维的英文单词就是AIOPS,不简单翻译成智能运维,按照字面上的意义翻译下来应该是基于算法的IT运维平台,OPS的P并不是把OP直接拿下来,O是Operations,P是platform,需要强调平台的概念,因为我们在很多时候,运维的工作:部署,排障,性能调优。其实你在很多地方做排障的工作时,如果你没有一个好的平台,把足够多的数据、信息集中处理,你是很难受的。
前几年搞自动化很流行的时候,大家都在喊我们有一个自动化平台,有个监控平台,有这个平台那个平台,其实那都是系统的,并不是平台,你只是把一部分数据集中在这个平台,一部分数据集中那个平台,数据之间依然并不是打通的,这是我听完其他嘉宾演讲觉得应该单独给大家点明的一部分,继续开始今天的演讲吧。
怎么做到devops-ing?或者sre呢?
常见的一个情况可能大家的第一反应是我知道好多开源项目,还有监控项目一大把,很多很多开源项目,是不是把这些工具用完了我就devops?他其实不一定。
另外一种就是前几年比较常见的一种说法就是我们把一些东西都自动化了,用机器做事情,运维在旁边喝咖啡,这是早些年比较流行的梦想,这时候也未定了。很多东西并不是能自动化去搞的,下面有一个很具体的例子,自动化真的能让你旁边喝咖啡吗?
这是我在微博的时候的,具体的一个统计值,微博有一个单独团队叫故障管理组,他们就是负责统计故障,管理故障,反馈故障。他们当时统计结果就是百分之70的微博故障就是因为在做自动化变更时出问题,我相信其他家公司在技术投入上没有微博那么重视,在这个事情上会更严重,绝大多数故障应该是自动化变更造成的。
数据驱动的运维操作
这个时候你要真正的想我运维工作应该要怎么样做好的时候,你要想刚才上面那一点,既然麻烦你的地方都是因为变更造成的,变更是自动化造成的,那是不是自动化不该做了?不是,而是我应该在恰当的时候去证明自动化该做而那个时候不该做,这时候需要充分的数据来证明这个事情,需要充分的数据证明变更是有必要的,而且变更以后不会出问题。我们需要数据来说话,这个数据需要各种各样层面,包括定期的报表、包括监控系统的拿到的性能指标,以及包括日志。
这些数据拿过来,并不是是拿过来直接就能用,因为比如前面讲到的metrics这些监控系统大多是采样的,采样意味着把很多细节点模糊掉了。大趋势来说,容量规划、流量调度的时候可以根据大的趋势干一个事情,但细节是没有的。所以我们想要拿到这些细节的时候,我们需要一个全量的数据分析,要把所有数据拿到一个平台上,每一个细节都能把握到,这时我才能做这个事情。
如何驱动
这是刚才提到的aiops,它的外围其实是很熟悉的东西了,监控、自动化、服务反馈。外围是所有IT运维人员在做的事情,但是中间,我们怎么样去持续的完成这件事情,而不是单纯的说有一个监控团队,有一个代码上线团队,或者说有一个单独的服务台,我们怎么样把东西自动串起来,实现智能的情况,中间需要一个单独的驱动,就是我们说的智能运维的平台。这个平台要做的事情就是拿到了全量数据Big Data,Big Data指的是拿到运维相关的全量的数据然后利用算法(machine learning),不一定都用machine learning 驱动,很多没有到machine learning 级别 的统计学概念上的算法 依然很有用的。
AIO的三大作用
智能运维平台的作用其实需要更灵活更易用的办法来访问和分析数据,举例子,hadoop到现在已经十多年了,相信大多数企业都有hadoop,我们也会把一些数据放hadoop上去,隔三差五合规审计一下,三个月,六个月数据在不在,在,这种的话对我们运维来说是没有用的,你只是完成一份工作,这种数据是没办法很好的用上它;
另外一个作用,有一些可能不在你合规审计内零散的数据可能是有用的,在目前不一定到容器化可能是模块化,一个多模块分布式的业务架构上,各个主键他们互相之间的一些业务数据,其实可以反映很大的IT运营价值,但这种数据并不是底层的IT运维东西,并没有特别明确的规范,说要求你怎么样怎么样,如果你不去做他,这些散落在各组件上数据就对你毫无意义,这其实就是构建一个智能运维平台可以发挥很大价值的东西;
第三点的作用,就是说你要搞一个智能运维平台时你应该提供的价值点,没有做到这三点基本算失败的,第三点意思就是说应该有一个快速探索实验的平台,讲的细一点就是我们想一下运维人员工作时常见的状态,你遇到一个问题,这个问题你不一定知道是什么原因造成的,但你会猜一个思路,比如现在遇到一个访问故障,你会猜说是不是他的那个出问题,你上去看了,没有问题,你又猜说CDN网出问题了,我看一下CDN对不对,解析在不在,是不是被劫持了,会不断去猜的思路,所以你需要一个快速试错的平台给你跑,这就是快速探索的意思。观看视频:https://v.qq.com/x/page/q0506d7dy1f.html
PPT已上传至优云运维社区公众号,回复ppt即可下载。
关于运维侠客行沙龙
运维侠客行是优云软件打造的运维行业线下沙龙品牌,我们将在全国范围内展开马拉松式的技术普及和巡回交流活动,并针对运维、云计算、安全、大数据等多个领域进行顶级专家的技术分享交流会,让从业者第一时间了解行业前沿技术、实践案例和变革动态,为热爱技术的朋友们提供一个交流分享、观点碰撞的全新平台。