智能化运维系统vs传统运维自动化系统

传统的基于网管思想的运维自动化系统是需要人去盯着看的,因为除了系统宕了无法访问了,运维自动化系统可以发出明确的报警之外,其他的一些异常只能通过基线预警、日志告警等方式做出一些预警。

是不是运维自动化系统引入一些智能化的算法就算是智能运维系统呢?个人观点看,不是的。今天老白和大家一起探讨一下智能化运维系统,从系统建设的思路上看,如果还是沿用传统运维自动化系统的建设模式去建设智能化运维系统,那么可能无法发挥智能化的优势。

我们以前都习惯于采用网管式的运维模式进行系统运维,传统的运维自动化工具包括Openview、Tivoli、bmc potral等都属于此类的工具。而随着IT运维需求的不断演进,传统的网管式运维方式已经无法满足我们的要求了,因此近些年智能化运维的需求越来越迫切。现在很多企业都在开发智能化运维系统,但是什么样的系统才算是智能运维系统呢?里面用了一些LSTM、随机森林这样的算法的系统就算是智能运维系统?以前的用了一些均方差,平均值的系统就只能算传统运维自动化系统?似乎答案并不是那么简单的,而且似乎也没有什么标准化的答案。

传统的基于网管思想的运维自动化系统是需要人去盯着看的,因为除了系统宕了无法访问了,运维自动化系统可以发出明确的报警之外,其他的一些异常只能通过基线预警、日志告警等方式做出一些预警。这些预警到底会不会对系统产生十分严重的影响,会不会导致业务连续性的问题或者引起系统性能问题,影响最终用户的体验,这一切系统都无法给你一个明确的答案。因此我们需要有人去看,去分析。因此这些运维自动化系统往往提供了大量的十分漂亮的可视化界面,可以将系统的各种指标、状态等以最便于运维人员查看的方式组织起来,在屏幕上直观展示,而分析系统有没有问题完全依靠看这些屏幕的人。随着企业信息系统规模的不断膨胀,这种运维模式已经难以为继了。比如一个智能工厂,在两年前的服务器数量才不到200台,而最近两年这个数量扩大了10倍。以前很多企业都要求做机房巡检,每天要做三次人工巡检。随着企业数据中心的不断扩大,机房数量也从十来个变成几百个,而且可能机房跨越多座建筑物,如果一个运维人员做一次人工机房巡检,一个上午基本上也差不多报销了。解决这个问题的方法很简单,使用机房巡检机器人或者摄像头传感器系统就可以了。运维自动化系统也是如此,很多企业需要做系统日检,每天一上班,运维人员就通过跑各种脚本去把系统完整的巡检一遍。后来系统数量越来越多了,没办法一个个登上去做日检了,就做了一套脚本,每天自动跑一遍,然后通过一个工具把结果做一个汇总分析,告诉运维人员日检的结果。这种模式是现在企业IT运维的正确方向。

现在的用户需要什么样的运维自动化系统呢?是特别全面的,能够很漂亮的展现系统方方面面细节的系统吗?我个人认为不是的,因为如果你要管理的系统成百上千的时候,只看汇总数据不直观,对单一系统认真去看一看又看不过来。这些漂亮的展示界面最终只会成为无人问津的摆设。

因此我觉得,做智能化运维系统应该突破传统的运维自动化系统的框架去考虑。系统的重点不再是能够多么漂亮,多么全面的展示一些系统的运行状态了。因为很可能运维人员已经没有精力去看这些漂亮的界面了。智能化运维系统与传统运维系统之间的差别是具有强大的分析能力。如何把这种优势发挥到最大才是智能化运维系统的目标,如果智能化运维系统只是传统的外观加上智能化的算法,那么智能化的能力就无法得到充分的发挥了。

你有没有想过这样一个智能化运维的场景,运维人员不需要盯着运维大屏去看,而当系统出现隐患的时候,你的微信,短信会收到相关的信息,运维中心的智能音箱会发出明确的告警。你通过智能音箱可以了解到系统故障的原因与处置建议,然后你一声令下,就可以自动完成处置。而当系统没有任何告警的时候,你可以放心的去干其他事情,或者悠闲的坐在那喝咖啡。这个场景是不是很令人向往?这就是智能化运维系统的目标。

要达到这一的目标,最关键的问题是要构建一个能够让人放心的智能化分析引擎,这个引擎确实是可信的,当它不发出告警的时候,你可以相信系统运行是无风险的,那么你就真的可以放心的去干其他事情了。要达到这个目标,我们需要更多更准确的采集系统的运行指标,并且通过各种算法在后台进行大量的状态分析,同时这些分析也需要十分强大的知识库作为支撑。

最近和一些朋友讨论运维自动化系统的时候,好多客户都会提出一些需求,比如能不能做一个什么样的界面,能让我分析某个问题。我都会问他,你真的需要通过某些数据的展示来分析问题吗?你真的有时间去看这些界面吗?如果你的系统在某个时段出现了问题,需要去分析。第一种方式是系统能够直接生成一份报告,把这个时段所有的问题都分析出来给你看,包括你能够想到的所有分析维度,都已经帮你检查好了,并且确定了是否存在问题;第二种方式是你首先打开sql审计工具,看看系统中的某条SQL语句在这个时间段是不是出问题了,然后再打开IO分析工具,看看这个时间段系统IO有没有问题,再去看看并发量是不是出现了异常。你会选择哪种方式呢?我想你肯定毫不犹豫地会选择第一种方式。那么我们以前还要采取第二种方式呢?这是因为只有在具有智能化运维能力的情况下,第一种方式才能够成为可能。既然智能化运维有这种能力了,我们为什么还要用传统的方式去建设运维自动化系统呢?

智能化运维工具的核心是智能化分析算法,这些都应该是隐藏在后台的,看不见的。曾经有人问我,老白,你们的运维自动化平台里不是用了图数据库吗,我怎么看不见你们有这方面的界面?我觉得图数据库和图推理算法根本就不需要有啥界面,现在的很多知识图谱的项目都是画出一张十分复杂的图,看上去挺漂亮的,不过这个知识图谱不能提供强大的分析能力,把一个运维知识图谱展示在你的界面里,估计除了装逼,也没多大作用了。我们的图数据库是存储运维知识的,而运维知识都已经被应用在各种分析报告里了。运维人员并不需要通过查看知识图谱来辅助运维,只需要通过基于图推理的分析工具提供的分析结论,就可以完成你所需要的运维分析了。其他方面的智能化算法也是如此,运维人员需要基于随机森林或者LSTM的系统状态预测,并不需要去了解LSTM算法,而只需要看到通过LSTM给你产生的预测结果就可以了。

如果你的智能化运维系统让你感到运维变得复杂了,那肯定就不对了。智能化运维系统,一定是平时让你感到运维变得简单了,而真正出现问题的时候,又能够提供强大的分析能力的系统,否则你肯定遇到假的智能化运维系统了。

THEEND

最新评论(评论仅代表用户观点)

更多
暂无评论