机器学习技术在监控工具中的应用已经成为 IT 运维与 DevOps 团队的一大热点话题。尽管相关的使用案例很多,对 IT 团队而已真正的「杀手级应用」是机器学习如何提高实时事件管理能力,从而帮助较大规模的企业提高服务质量。对此,关键在于在用户发现问题之前提早探测异常,进而减少生产事故与中断的负面影响。

那么,在IT运维管理的环境下,机器学习到底是什么?

网上有不少关于机器学习的宏观定义:对于某给定的任务T,在合理的性能度量方案P的前提下,某计算机程序可以自主学习任务T的经验E;随着提供合适、优质、大量的经验E,该程序对于任务T的性能逐步提高。更通俗的来讲,即:随着任务的不断执行,经验的积累会带来计算机性能的提升。

如果在IT运维管理的前提下,也许这样的定义更加准确:机器学习是分析数据,反复地向数据学习,进而在不参考明确模型的情况下,找出隐藏观点的一类方法。

在 IT 运维管理的语境中,机器学习的首要替代方案是为 IT 运维管理建立行为模型,了解这一点非常重要。行为模型方法要求了解基础架构的所有组件,才能理解出现中断或服务质量下降的可能原因。更确切地说,你要试着判断哪些事件和告警模式与你希望监控的条件相匹配。

事实上,大多数 IT 运维管理工具都属于这一类别。不论是过时的遗留事件管理器,还是使用「聚合及查询」方法进行 IT 运维的现代工具。总之,你都要对这些工具进行一定的配置,让它们留意你预先就知道需要搜寻的东西。

而另一方面,机器学习则使用数据本身来寻找值得留意的特征,这些特征可能在事先完全无法预知。例如,非监督式机器学习,可用于分析事件流或日志消息,从而找出异常的消息集群。之后,这些异常可以与某项运维结果相联系,从而捕获潜在中断的原因与症状。

然而,监督式机器学习可用于记录用户针对给定告警及告警集群的活动,并相应地做出算法上的调整。本质上,机器学习利用数据不断地创建并更新行为模型,而不是使用静态的行为模型寻找特定的结果。

在 IT 数字化转型的今天,随之而来的规模复杂度、变更速度以及软件抽象化等挑战成为了机器学习应用于 IT 运维管理的理由。

如果基础架构处于不断变化的状态,根本无法建立起固定的行为模型。如果你想了解来自应用与基础架构的大量数据的意义,使用基于规则的方法无疑是死路一条。在新的软件时代,你必须利用机器学习进行实时的数据分析,这是保证服务质量的必备条件。无可否认,IT 领域正变得越发混杂、虚拟化以及流动化,只有使用机器学习技术,才能坦然应对这些变化。

现代 IT 环境下,不断变化的基础架构会产生大量的事件数据需要处理。在 OneAlert,机器学习主要用于「消除噪音」。例如,面对每秒钟成千上万的告警事件,如何在消除噪音的同时保留有价值的信息事件?

目前 OneAlert 产品对告警事件的压缩率已经高达80%。基于时间片的告警信息压缩已经趋于成熟,基于告警属性相似度的聚类模型能够将告警压缩率达到 95%。而基于机器学习的人工智能压缩更是能够将告警压缩到 99%(我们敬请期待!)

OneAlert 是北京蓝海讯通科技有限公司旗下产品,是国内首个 SaaS 模式的云告警平台,集成国内外主流监控/支撑系统,实现一个平台上集中处理所有 IT 事件,提升 IT 可靠性。想了解更多信息,请访问 OneAlert 官网 ,欢迎免费注册体验 。

本文转自 OneAPM 官方博客

机器学习在 IT 运维管理中的必要性!的更多相关文章

  1. 国产安全自主可控IT智能运维管理解决方案

    新一轮科技革命和产业变革席卷全球,大数据.云计算.物联网.人工智能.区块链等新技术不断涌现,数字经济正深刻地改变着人类的生产和生活方式,作为经济增长新动能的作用日益凸显.伴随增长的,还有网络中不断涌现 ...

  2. 解决连锁零售行业IT运维管理四大困境

    解决连锁零售行业IT运维管理四大困境   中国近年来,连锁零售行业进入了行业的发展高潮,迅速崛起一批大型连锁业态.而随着IT技术的不断进步,连锁零售企业已经步入IT信息化快速发展的重要阶段:在面对激烈 ...

  3. 【Python】神器:Streamlit,仅使用Python开发一个运维管理后台(不需要编写html,js,css)

    背景 作为SRE,我们有很多很多自动化的工具,大部分都是自动运行的,还有一部分是CLI,我们一直苦于没有一个自己的管理后台网站,受限于前端能力薄弱,开发出来的网页只能说凑活能用,但是不好用. 现在我们 ...

  4. Linux运维之Ansible自动化运维管理工具

    Ansible简介:Ansible是一个简单高效的自动化运维管理工具,用Python开发,能大批量管理N多台机器,可以并发的在多台机器上部署应用.安装软件.执行命令.配置和编排任务.后面会提到批量安装 ...

  5. 广通软件获“2016年度中国最具影响力IT运维管理软件提供商”殊荣

    12月16日,“科技原力觉醒引领创新巅峰”-- 2016创新影响力年会暨国家产业服务平台•2016年终评活动在北京裕龙国际酒店落下帷幕. 本活动在主管部门的指导参与下,总结本年度技术成果并籍此对未来科 ...

  6. django 实现linux运维管理平台

    概述 使用django实现一个linux运维管理平台,可以实现注册登录,机器管理 ,服务器批量操作,服务器性能监控. 详细 代码下载:http://www.demodashi.com/demo/112 ...

  7. CentOS 7运维管理笔记(9)----Apache 安全控制与认证

    Apache 提供了多种安全控制手段,包括设置Web访问控制.用户登陆密码认证及 .htaccess 文件等.通过这些技术手段,可以进一步提升Apache服务器的安全级别,减少服务器受攻击或数据被窃取 ...

  8. 日常运维管理技巧一(查看负载 W)

    日常运维管理技巧一(查看负载 W) 今天针对Linux系统管理做一个专题的记录,以后会用的几率也是很大的,只要掌握必备的基础知识,做初级系统管理员是不成问题的. 作为一个运维工程师.系统管理员,如果对 ...

  9. 华为云和开源Istio运维管理对比样例应用部署

    前言 在公有云方面,华为云已经率先将 Istio 作为产品投入到公有云中进行商业应用中,保持和开源istio高度兼容,做了商业化的运维管理界面,同时进行了性能优化.这里我们做一次验证测试. Booki ...

随机推荐

  1. 使用 Attribute +反射 来对两个类之间动态赋值

    看同事使用的 一个ORM 框架 中 有这样一个功能  通过特性(附加属性)的功能来 实现的两个类对象之间动态赋值的 功能 觉得这个功能不错,但是同事使用的 ORM 并不是我使用的  Dapper  所 ...

  2. Python脚本控制的WebDriver 常用操作 <二> 关闭浏览器

    下面将模拟一个WebDriver关闭浏览器的操作 测试用例场景 在一个自动化测试脚本运行完毕后,我们很可能会采取关闭浏览器的操作,而关闭浏览器的常用操作有如下两种: close quit close  ...

  3. 多点触摸画板(MultiTouchCanvas)

    这是个简单的支持多点触摸的画板控件, 绘制功能基于WPF InkCanvas,也是我drawTool系列文章的开篇. 阅读该文章后可能产生一些问题: 1. 如果对生成的笔迹对象进行控制 如果要对生成的 ...

  4. SpringMVC综合使用手机管理系统Controller层开发

    1. beans.xml的配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=&qu ...

  5. IE浏览器各版本的CSS Hack

    IE浏览器各版本的CSS   Hack 如下示例: .test{ color:black;/*W3C*/ color:red\9;/* IE6-IE10 */ _color:black;/*IE6*/ ...

  6. oracle 查询今天哪个表增加的数据多

    一.创建一个表  create table A(  TABLE_NAME VARCHAR2(200),  COUNT_NUM  NUMBER) 二.创建一个存储过程create or replace  ...

  7. hdu 2680 Choose the best route

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=2680 Choose the best route Description One day , Kiki ...

  8. MYSQL主键存在则更新,不存在则插入的解决方案(ON DUPLICATE KEY UPDATE)

    经常我们使用的最简单的数据库操作就是数据的更新,删除和插入,对于批量删除和插入的方法相信大家都很清楚,那么批量更新估计有的人就不知道了,并且还有批量插入,在插入时若有主键冲突则更新的操作,这在EAV模 ...

  9. jquery.form的使用

    插件API http://malsup.com/jquery/form/#api Jquery.form.js是支持文件异步上传的插件,jq插件自然基本前提当然是要引用Jquery.js 1.0 基本 ...

  10. 将获得到的json赋值到下拉框

    $(function () { $.getJSON('handler/addEmployees.ashx', function (json) { alert(json.length); //遍历赋值 ...