什么是AIOps-AIOps介绍以及与DevOps的对比

314 阅读8分钟

AIOps是一种通过应用人工智能(AI)来管理IT运营的指数级增长和新技术的复杂性的方法。IT基础设施越来越依赖于复杂的部署、多云架构和海量的数据。传统上,科技行业通过应用额外的脑力来应对复杂性,引入更多的工程师、开发人员和管理人员。但随着对软件团队的要求不断增加,增加人员显然不是一个可扩展的解决方案。与其说是人类智慧在解决这些问题,不如说是IT行业转向了人工智能解决方案,以帮助团队应对软件令人难以置信的规模和无尽的创新。

以云计算错误配置为例。当一个团队为云数据保护建立了不适当的设置时,这些事件就会发生。但这些错误配置并不是脑力不足的产物。相反,在一个分布式计算和一切皆为服务(XaaS)的世界里,它们实际上是不可避免的。

一个复杂的IT系统可能会产生足够多的此类事件,甚至超过了我们最聪明和最高效的团队的维护能力。每一个事件都需要我们的时间和注意力,否则我们就有可能使我们的基础设施变得脆弱,我们的数据--以及我们客户的数据--暴露在攻击者面前。

进入AIOps的世界。

AIOps的简要历史

研究公司Gartner在2016年首次提出了AIOps这个词。结合 "人工智能 "和 "IT运营 "这两个短语,Gartner为IT行业的发展力量命名,将AIOps定义为AI在IT运营中的应用。

AIOps使用机器学习和大数据来协助IT运营。从这个意义上说,这种做法几乎肯定早于Gartner对该术语的定义--处于人工智能研究前沿的公司可能已经应用算法流程来协助其内部运营多年了。

曾经在该领域的罕见做法正在迅速成为现代IT环境中的必要条件。在全行业向容器和微服务的转变中,系统已经成倍增加了它们的组件。在错综复杂的IT领域工作的开发人员已经越来越坚持希望得到人工智能工具的协助。

在一个充斥着人工智能驱动的软件的市场上,随着各公司寻求推销其机器学习工具的方法,可能很容易将AIOps视为又一个过气的趋势。然而,大数据和软件的规模所带来的安全挑战是实实在在的。如果没有某种形式的AIOps,IT组织肯定会发现许多障碍扼杀了他们的发展。

与人工智能的合作

AIOps对软件开发最重要的贡献是在人工智能和人类智能之间的交叉点。

寻找和诊断错误和低效率是任何IT运营的一个持续挑战。公司经常以巨大的规模建立、部署和运行软件,为数百万甚至数十亿人服务。这些巨大的系统及其庞大的用户群产生了大量的数据,任何组织都无法指望通过人工来整理。机器学习的优势在于它能够对这些巨大的数据进行分析并采取行动。

有效的AIOps充当了所有这些数据的前线解释者。AIOps通过监控日志、过滤信息和使用机器学习来寻找模式和洞察力,使企业能够充分利用其开发时间。在AIOps的帮助下,团队可以卸下花在繁琐任务上的时间,如翻阅日志和试图隔离复杂系统的问题来源。

检测和诊断错误和瓶颈是任何IT操作的一个持续挑战。AIOps对原始数据进行筛选,以帮助开发人员迅速解决其人工智能工具所发现的问题。人工智能可以通知团队有关异常活动,提供错误警报,并作为早期预警系统,在问题变得严重之前发现问题。这不仅有助于调解内部错误,而且还有助于识别和规避外部恶意攻击。

人类没有能力处理现代软件的规模。AIOps通过执行人类智能不适合处理的安全功能,节省了时间和麻烦。

DevOps vs AIOps

任何一个从事IT工作的人都可能以忧虑的心情观察AIOps的发展。然而,AIOps不是来取代DevOps的,甚至不是来和它竞争的。AIOps的主要应用是监控和警报--对现有的IT部门来说是一个明显的补充作用。

DevOps团队不断处理来自不同来源的数据,处理来自任何数量的云平台、Kubernetes集群、无服务器功能以及部署中的其他一切数据。所有这些信息必须被整理,并与重要的变量相关联。这是一个挑战,可以从一点自动化中受益。

你的典型的AIOps被配置成一个数字警卫犬,提醒传统的DevOps团队注意错误和异常。更复杂的AIOps可以扮演分析的角色,对基本指标进行计算,为改进软件或优化部署提供建议。

虽然AIOps不太可能很快取代DevOps,但无疑是未来事物的预兆。DevOps从业者需要适应自动化程度越来越高的环境,并找到将机器学习和其他AI工具整合到工作流程中的方法。如果不愿意接受这些新工具,软件行业的扩展能力将停滞不前,应用安全的潜在威胁也将出现。

如何将AIOps纳入你的DevOps实践中

大多数组织首先冒险进入AIOps,发挥监控作用。人工智能持续扫描系统并标记任何潜在问题。这种持续的异常检测方式有利于预先缓解故障,并在其发展成灾难之前发现警告信号。

AIOps监控可以作为一个安全层,对你的整个系统保持警惕。它在几毫秒内处理大量信息的能力使其能够预先识别安全缺陷或检测可能表明安全漏洞的模式。你可以进一步将AIOps的安全潜力与其他可用于保障大规模应用的关键工具结合起来,以确保我们的数据在多层冗余之后是安全的。

在使用AIOps进行监控和安全之后,对大多数团队来说,将AIOps工具整合到他们的DevOps战略中是一个自然的过程。除了提供直接的好处,如自动化重复性任务和使关键数据更容易获得,AIOps系统还可以根据他们得出的结论采取行动。

企业还可以采用AIOps进行诊断。作为一种诊断工具,AIOps是根源分析的有力助手。当故障不可避免地发生时,AIOps发挥积极作用,提醒团队注意问题,并引导他们找到问题的根源。随着AIOps能力的增强,它已经开始在补救问题方面发挥作用。

通过不断分析和建议对资源使用等指标的精确调整,机器学习算法也可以微调系统性能,并确定新的机会来加强安全或优化架构和部署。

拥抱AIOps的未来

将AIOps工具整合到DevOps战略中,对大多数团队来说是一个合理的演变。DevOps项目受益于卸载重复性的任务,而将精力投入到改善软件上。AIOps也为团队提供了更好地获取有关其软件性能的信息来推动这些改进。

我们认为AIOps不是一种威胁,而是一种超级力量,它使DevOps团队能够管理比人类更多(和更复杂)的数据集。正确的AIOps策略可以帮助DevOps团队征服扩展软件所固有的巨大的、相互关联的一系列挑战。 大型组织有能力以最小的成长痛苦进行扩展,而小型团队可以通过利用AI而不是增加员工来避免臃肿。而且,随着其能力的扩大,人工智能可能会对DevOps和IT变得更加重要。自动化也将变得更加智能,在补救问题和提供微调建议方面更加积极。

如果你是一个希望为你的团队战略提供未来保障的DevOps从业人员,AIOps应该是你调查的方法之一。拥抱自动化并将人工智能和机器学习工具整合到你的工作流程中,将使你有机会安全、可靠地扩展你的企业。