阿里搜索业务AIOps智能运维实践综述

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 本篇文章主要介绍下我们在异常检测,根因分析,冷数据及僵尸应用治理上的实践,各项实践也都取得了预期的效果。下面分别介绍下以上问题我们的解决方案和进展。

随着搜索管控的统一,对智能运维能力也提出了新的要求,如何用同一套解决方案同时解决各系统的痛点问题做到AIOps能力复用,上篇文章已经介绍过hawkeye优化大师及torch容量评估的实践,本篇文章主要介绍下我们在异常检测,根因分析,冷数据及僵尸应用治理上的实践,各项实践也都取得了预期的效果。

下面分别介绍下以上问题我们的解决方案和进展。

异常检测

背景:
目前搜索系统的监控是基于规则的阈值报警,面对周期性指标,毛刺和稀疏数据等复杂场景难以适用,导致大部分指标报警泛滥,给用户带来很大的困扰,于是我们和kmon监控同学基于tisplus搜索业务平台top报警场景联合达摩院算法尝试增加异常检测进行智能报警治理报警泛滥问题。

解决方案:

image.png

(1)管理员在烽火台监控平台给指标配置异常检测算法及参数

(2)kmon-apiserver会定时同步烽火台报警配置,query及算法参数给kmon-batcher

(3)kmon-batcher从kmon-gateway获取指标数据并和(2)中获取的数据一同调用A-pack

(4)A-pack是异常检测算法业务层,负责跟异常检测算法服务IAD交互,并将异常检测结果返回给kmon-batcher

(5)IAD是异常检测算法docker服务,基于被监控指标过去一周的历史数据对当前时刻指标进行异常检测。

(6)kmon-batcher发现a-pack对数据的检测结果为异常调用kmon-action进行生产报警事件并进行报警

(7)烽火台配置样本管理页面进行样本标注,评估算法异常检测效果

效果评估:
异常检测算法针对周期性,稀疏数据,均值变化都做了比较好的识别和处理,抑制大量不必要的报警。

基于规则的阈值变化报警,指标瞬间抖动很容易起变化率超过阈值引起误报,如图1(黄色的点代表规则阈值报警),图2通过算法只有均值变化率大的时候才触发报警,从而避免了图1 大量的误报。

image.png

image.png

基于周期性的指标波动算法也能很好的识别,红色点代表周期性算法识别出来的异常点。

image.png

特别是稀疏数据的波动报警很容易引发误报如图4,算法通过自动识别稀疏数据剔除值为0点,这样在非0的历史数据上进行算法学习避免了大量的无效波动报警如图5

image.png

image.png

为了准确评估增加异常检测的效果,烽火台上增加样本管理功能,用户可以对异常检测结果进行标注,这些标注的样本一来用于异常检测算法效果优化,二来用于算法迭代版本更新时做回归case。

image.png

我们选择了tisplus top报警场景增加异常检测智能报警,并通过人工对2天的异常检测报警结果标注评测,异常检测算法准确率和召回率均在92%,之前规则报警2天的报警量是上万级,增加异常检测后报警量降低到百级别,报警量减少97%。

根因分析

背景:
随着搜索用户的增多,值班同学每天的答疑量巨大,排查问题耗费了很多人力,梳理下来出现的问题种类就那么几种,排查模式也无非看看链路相关的kmon监控指标和查看分析日志。为此,我们基于答疑较大的引擎增量异常场景结合专家经验进行根因分析的诊断,报警发生时直接基于规则给出问题触发原因以及排查问题所需的关联指标及日志信息,从而提升问题排查效率。目前采取是借助指标数据和规则树的方式进行诊断,主要涉及的有增量场景中的增量跌0和端到端延迟上升两种问题的诊断。

解决方案

image.png

效果评估
根因分析目前涉及了chatOps和智能报警两个应用场景,chatOps用于解决当线上出现问题用户自主@机器人,便可获取异常问题根因分析诊断结论以及辅助排查的关键metrics指标及日志信息,平均单个问题相对人肉排查方式至少节省10到15分钟排查时间,在智能报警里,一个是报警信息里我们会直接透出异常情况下的相关指标数据及根因分析协助用户接收到报警时能准确知道触发报警的原因,并能直接看到问题定位所需要的辅助信息,系统每次报警触发根因分析,我们都会把诊断结论及排查所需的所有辅助metrics和日志信息抽取作为样本持久化保存起来,目前已积累约4w条样本,这些样本成为机器学习方式解决根因分析分析问题的宝贵资源(目前还在进一步探索中)。

image.png

冷数据及僵尸应用治理

背景
随着搜索igraph、dii、be、ha3业务的增多,各平台不同程度的存在冷数据(冷表或僵尸应用),冷数据就是指长期无流量却占据着资源的服务,因此,需要一套统一自动机制管理这些冷数据下线。

解决方案
image.png

冷数据治理分为巡检和通知两部分逻辑。巡检通过平台提供的冷数据接口进行巡检识别出冷数据及僵尸应用。通知逻辑主要分为管理员视角和owner视角的。管理员可以看到平台冷数据占的总资源,owner可以看到具体负责的表,反馈功能增加了加白名单和确认下线两个功能。加白名单的服务有30天的有效期,确认下线的则会走自动下线的逻辑。

效果评估

image.png

左侧图是管理员视角可以清楚看到平台下的僵尸应用列表及浪费情况,右侧用户视角可以及时发现自己名下僵尸应用及一键下线,整个功能上线以来清理了数以百计的僵尸应用释放不少宝贵机器资源,让搜索平台和用户之间建立起了良性循环。

展望

随着过去我们在异常检测,根因分析,torch容量规划,hawkeye优化大师,僵尸应用治理等各AIOps方向的实践大大降低了成本提高了效率和稳定性,为下一步进行AIOPS平台化建设树立了信心,让搜索各在线服务也都能享受到AIOPS带来的福利。随着搜索云上输出,开放性,易用性是AIOps平台设计首要考虑的两个问题。

我们的初步架构如下:

Kmonitor定位智能运维数据平台,将采集,监控,报警,诊断,处理等基于一身,核心价值是平台使用海量数据结合算法能力让用户更加方便知晓应用的系统状况,可以更快捷的定位问题并解决问题,并且具备自动处理问题的能力。

Kmon-agent 采集端支持丰富的数据源输入如日志,系统指标,容器指标,以及各种用户自定义插件来对接各个系统,持续保持数万个采集实例低消耗稳定采集,计算,过滤,转换。

Gnomon轻量级高可用分布式时序数据库承载每秒上亿数据点写入,时序数据针对性优化高效支持时序数据压缩,聚合,采样,高性能海量时间线自适应索引,内存优先策略保证查询效率。机群高可扩展,数据动态分区,水平扩展,支持动态扩缩容。机群自动控制机制,支持多级数据备份存储保证机群可靠性。

Razor 端到端计算平台,支持海量异构数据源批流一体计算引擎,系统集成Robust-STL异常检测算法,时序异常检测,搜索引擎健康检测自愈,根因分析,弹性调度,容量规划等AIOps解决方案,用户也可以自定义UDF实现自己运维场景上的运维策略。
image.png

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
8天前
|
机器学习/深度学习 运维 Prometheus
构建高效运维体系:从自动化部署到智能监控的全方位实践
在当今数字化时代,企业对运维效率和稳定性的要求越来越高。本文将探讨如何构建一个高效的运维体系,从自动化部署、持续集成与持续交付(CI/CD)、智能监控、故障管理以及数据驱动决策等方面进行深入分析和实践指导。通过这些方法,企业可以实现更快速、更可靠的软件发布和问题解决,提升整体运营效率。
|
4天前
|
运维 关系型数据库 MySQL
自动化运维工具:Ansible入门与实践
【9月更文挑战第23天】本文将带你进入自动化运维的世界,以Ansible为例,从基础概念到实际操作,让你轻松掌握自动化运维技能。我们将一起探索如何通过代码实现批量部署、配置管理和任务执行等功能,提高运维效率,减轻工作压力。让我们一起开启自动化运维之旅吧!
|
5天前
|
弹性计算 运维 监控
高效运维:从自动化到智能化
本文探讨了运维领域的发展历程,重点分析了自动化和智能化在提升运维效率和稳定性中的关键作用。通过对实际案例的剖析,展示了如何利用现代技术手段优化运维流程,并展望了未来运维的发展方向。
|
2天前
|
机器学习/深度学习 人工智能 运维
构建高效运维体系:从自动化到智能化的演进之路
在当今数字化时代,运维作为保障企业IT系统稳定运行的关键环节,正经历着前所未有的变革。本文将探讨如何通过实施自动化和引入智能化技术,构建一个更加高效、可靠的运维体系,以应对日益复杂的业务需求和技术挑战。
9 1
|
4天前
|
消息中间件 运维 安全
云消息队列 ApsaraMQ Serverless 演进:高弹性低成本、更稳定更安全、智能化免运维
在 2024 年云栖大会上,阿里云智能集团产品专家刘尧全面介绍了云消息队列 ApsaraMQ Serverless 的落地成果和产品进展。此外,我们还邀请到杭州优行科技有限公司中间件消息研发负责人王智洋,分享了 ApsaraMQ for Kafka Serverless 助力曹操出行实现成本优化和效率提升的实践经验。
|
8天前
|
机器学习/深度学习 人工智能 运维
高效运维:从自动化到智能化的演进之路
在当今数字化时代,运维领域正经历着从人工到自动化,再向智能化迈进的深刻变革。本文将探讨自动化运维的实践方法、面临的挑战以及如何向智能化运维转型的策略,旨在为读者提供一条清晰的演进路径,帮助企业提升运维效率,降低风险,并最终实现价值最大化。
|
1天前
|
机器学习/深度学习 运维 监控
高效运维:从自动化到智能化的演进之路
在当今信息技术飞速发展的时代,运维作为保障信息系统稳定、高效运行的重要环节,正经历着从传统手工操作向自动化、智能化转变的历史进程。本文将探讨自动化运维的实践价值与实施策略,阐述智能化运维的理念框架及其关键技术,并通过案例分析揭示这一演进路径如何助力企业提升运维效率、降低运营成本,并增强对复杂系统的掌控能力。通过深入剖析,本文旨在为读者呈现一幅从自动化迈向智能化的运维全景图,为寻求运维转型的企业提供参考与启示。
|
4天前
|
运维 监控 安全
构建高效运维体系的策略与实践
在当今信息技术飞速发展的时代,运维作为保障信息系统稳定运行的关键环节,其重要性日益凸显。本文将探讨如何通过优化管理策略、引入先进技术和培养专业人才,构建一个高效、智能的运维体系,以应对日益复杂的技术环境和业务需求。
9 0
|
10天前
|
运维 监控 安全
构建高效运维体系:从监控到自动化的全方位实践
本文深入探讨了构建高效运维体系的关键要素,从监控、日志管理、自动化工具、容器化与微服务架构、持续集成与持续部署(CI/CD)、虚拟化与云计算以及安全与合规等方面进行了全面阐述。通过引入先进的技术和方法,结合实际案例和项目经验,为读者提供了一套完整的运维解决方案,旨在帮助企业提升运维效率,降低运营成本,确保业务稳定运行。
|
4天前
|
敏捷开发 运维 Prometheus
构建高效运维体系:从基础架构到自动化管理
本文探讨了如何通过优化基础架构、引入自动化工具和流程,以及加强团队协作,构建高效的运维体系。通过案例分析和实践建议,帮助运维人员实现系统的稳定性、可靠性和可维护性。

热门文章

最新文章