发布时间:2018-05-01
近年来运维技术飞速发展,运维团队大多建设好了各种系统,虚拟化、容器化、持续集成等等。但是如何有效的利用这些系统最终实现站点的高可用、高性能、高可扩展?随着智能化技术的发展,为了解决上述运维领域的问题,智能运维的呼声越来越高。
在日志易产品总监饶琛琳看来,目前国内智能运维发展还处于一个探索阶段,要想尽快在智能运维领域有所突破,首先要主抓好监控系统和告警系统,并利用机器学习算法进行快速监控和排障。饶琛琳,日志易产品总监,曾任新浪微博系统架构师、大数据运维技术专家,从事运维 11 年,精通大规模互联网性能优化,机器数据处理分析,监控和管理平台的部署开发。
这里,就将饶琛琳对智能运维的发展一些早期观点和看法整理出来,和大家一起探讨下运维未来的发展方向。
1对当下国内运维领域现状的看法
简单来讲,目前国内运维界在自动化方面已经达到了一定的水平,就现阶段而言,自动化和监控两部分还是有一定距离。例如,你拿到了监控类的报警,可能不清楚立马去做哪一项自动化的部署。如果能把自动化和监控这两部分有机的结合起来,运维的工作会运转的更加顺利。
2移动端和微服务给运维工作带来的挑战
在 PC 端的时代,运维的很多工作受限于浏览器,运维人员拿不到用户端真实的数据。这种状况下,大家就会普遍采购一些第三方服务,尝试获取终端数据。而在移动端时期,我们都有自己的 IP,可以把一些采点的逻辑放在自己的 IP 里,然后获取到更准确、更真实的客户数据。相对于挑战来说,这其实是移动端带来的好处。
微服务的出现给运维工作带来一些难题。没有出现微服务之前,运维人员在一台或者两三台机器中就可以完成问题排查。出现微服务之后,这些问题可能拆到了好几十个分布式的地方,各自的输出,甚至启停会很方便,你有可能遇到在找问题的时候混淆的情况。而解决这些麻烦就是需要智能运维。
3在大数据时代,智能运维与数据之间、自动化运维之间有何关系
智能运维的理想状态就是把运维工作的三大部分:监控、管理和故障定位,利用一些机器学习算法的方法把它们有机结合起来。
在大数据时代,智能运维是基于大数据之上。目前看来,运维想要把监控、管理和故障定位这三部分有机结合起来,就不可避免的需要用到智能算法,而体现智能算法价值的一点就是:智能算法需要大量的数据去做支撑。
自动化运维这几年处在一个良性发展的状态,包括像 Puppet 这种配置管理的自动化,像 Docker 这种部署的自动化。进一步的发展就是需要把这三部分融合起来。目前能够把这三部分融合起来的办法就是利用人工智能的手段,最后达到一种智能运维的状态。
4智能运维当下的状况及智能运维发展的预测
智能运维当下还是一个初步探索的阶段。可以举几个时间数字,我所看到一个和智能运维相关的开源项目是在 2013 年,而我看到的第一个主动出来宣讲和智能运维相关的应该是在 2015 年百度在一个大会上的宣讲。然后大量的出现在宣讲上有关智能运维的应该是在 16 年下半年。而这些宣讲和我的一些宣讲都还是说我们现在有这样的思路,做了一些尝试。而这些尝试的效果还是需要大家去碰撞,看是否还有什么更好的办法,因为我们现在是用普通的机器学习算法,还没有用到像 AlphaGo 的深度神经网络这部分内容。转变为智能运维是一个需要大量投入和学习的过程。
想尽快在智能运维领域有所突破,更实际一点的办法就是主抓好监控系统和告警系统。传统的 IT 运维需要管理大量的告警,极大地分散了企业的注意力,消耗运维人员大量的时间和创新力。想办法能把一天收好几千封告警这种状况,高效地解决,把运维人员从纷繁复杂的告警和噪音中解脱出来。这是一个在众多办法中产生价值的第一步。
现在比较明确的是大家会朝着智能运维方向发展,并且智能运维的发展一定是一个长期演进的过程。
对于智能运维的发展预测,我的简单看法如下:
第一步就是前面所说的,智能运维在告警系统上的价值,;
第二步就是智能地去判断告警,而不是现在靠人力的经验去设定一个阈值。设定告警阈值是一项耗时耗力的工作,需要运维人员在充分了解业务的前提下才能进行,还得考虑业务是不是平稳发展状态,否则一两周改动一次,运维工程师绝对是要发疯的。
第三步是利用一些 NLP(自然语言处理),把故障报告、文本化的语言提炼出来去自动反馈到这个系统里。这一点可能是更遥远的一个设想,但是目前来看会是将来发展的一条道路。
在智能化时代,大家开始思考:如何将智能化和运维工作结合起来,成为智能运维?如何利用机器学习来进行快速监控和排障?
为了解决上述问题,我们依托 CNUTCon 全球运维技术大会,特设了为期 2 天(9 月 8 日—9 日)的深度学习培训,饶琛琳老师将会针对自动化运维监控、排障、容量规划等刚需,介绍所能学到的统计学、机器学习算法和实践效果,解析系统平台化实践思路和方案要点,带你从入门到实践系统性掌握如果通过算法和自动化变身智能运维。