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

简介: 本篇文章主要介绍下我们在异常检测,根因分析,冷数据及僵尸应用治理上的实践,各项实践也都取得了预期的效果。下面分别介绍下以上问题我们的解决方案和进展。

随着搜索管控的统一,对智能运维能力也提出了新的要求,如何用同一套解决方案同时解决各系统的痛点问题做到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日志并进行多维度分析。
相关文章
|
24天前
|
机器学习/深度学习 运维 监控
智能监控系统在运维中的应用与优势
传统的运维管理方式在面对日益复杂的IT系统时显得力不从心,智能监控系统的出现为运维工作带来了新的机遇。本文将探讨智能监控系统在运维中的应用与优势,介绍其工作原理以及如何有效地利用智能监控系统提升运维效率和质量。
46 2
|
1月前
|
运维 监控 持续交付
构建高效自动化运维体系:策略与实践
在数字化时代,企业IT基础设施的管理和维护变得日益复杂。为了提高效率、降低错误率并快速响应市场变化,构建一个高效的自动化运维体系至关重要。本文将探讨自动化运维的核心策略,并通过实际案例分析展示如何将这些策略应用于日常管理中,以实现IT运维的优化。
17 0
|
10天前
|
运维 Kubernetes Devops
构建高效自动化运维体系:DevOps与容器技术融合实践
【4月更文挑战第15天】 在当今快速发展的信息技术时代,传统的IT运维模式已难以满足业务敏捷性的需求。本文旨在探讨如何通过整合DevOps理念和容器技术来构建一个高效的自动化运维体系。文章将详细阐述DevOps的核心原则、容器技术的基础知识,以及两者结合的优势。此外,文中还将分享一系列实践经验,包括持续集成/持续部署(CI/CD)流程的搭建、微服务架构的应用,以及监控和日志管理策略的优化,以期帮助企业实现快速、可靠且安全的软件交付过程。
|
11天前
|
人工智能 运维 监控
构建高效自动化运维体系的实践与思考
【4月更文挑战第14天】在数字化转型的浪潮中,自动化运维作为提升系统稳定性和效率的关键手段,受到了企业的广泛关注。本文将深入探讨如何构建一个高效的自动化运维体系,涵盖从基础设施的搭建到流程的优化等多个方面。通过分析当前自动化运维的挑战及解决方案,文章旨在为读者提供一套实用的策略框架,帮助企业实现运维工作的高效化、标准化和智能化。
|
17天前
|
运维 监控 Kubernetes
构建高效自动化运维体系的实践与思考
【4月更文挑战第8天】在数字化时代,IT基础设施的复杂性日益增加,传统的手工运维模式已经难以满足快速响应和高效率的需求。本文将探讨如何通过自动化工具和策略构建一个高效的自动化运维体系,旨在提高系统的稳定性、减少人为错误以及优化资源分配。文章首先分析了自动化运维的必要性,接着介绍了实现自动化的关键技术和工具,并通过案例分析展示自动化运维体系的实际效果。最后,对自动化运维的未来发展趋势进行了展望。
|
20天前
|
机器学习/深度学习 传感器 运维
提升数据中心效能:智能运维策略与实践
【4月更文挑战第6天】在数字化时代,数据中心作为企业信息架构的核心,其稳定性和效率直接影响到业务连续性和客户满意度。随着技术的进步,传统的数据中心运维模式已经不能满足现代高效、智能化的需求。本文将探讨如何通过智能运维(AIOps)策略,结合大数据分析和机器学习技术,实现数据中心的自动化管理、故障预测及快速响应,以提升整体效能并降低运营成本。
|
29天前
|
运维 监控 数据可视化
现代化运维管理系统的关键特性及实践应用
随着信息技术的迅猛发展,现代企业对于运维管理系统的需求日益增长。本文将探讨现代化运维管理系统的关键特性,以及在实际应用中的重要性和优势所在,帮助企业更好地理解和应用现代化运维管理系统。
15 2
|
29天前
|
机器学习/深度学习 存储 人工智能
未来智能运维的发展趋势与挑战
随着信息技术的迅猛发展,智能运维作为关键的技术领域正日益受到重视。本文探讨了未来智能运维的发展趋势和所面临的挑战,从人工智能、自动化运维、数据分析等方面展望了未来智能运维的发展方向,同时也指出了在实践中需要克服的困难和挑战。
52 1
|
29天前
|
机器学习/深度学习 人工智能 运维
未来智能运维:人工智能在云计算运维中的应用
随着云计算技术的不断发展,传统的运维方式已经无法满足日益复杂的系统需求。本文探讨了人工智能在云计算运维中的应用,介绍了未来智能运维的发展趋势和挑战。
16 3
|
1月前
|
机器学习/深度学习 数据采集 运维
《智能监控系统在运维中的应用与优势》
随着技术的发展,智能监控系统在运维领域扮演着越来越重要的角色。本文将探讨智能监控系统在运维中的应用及其带来的优势,揭示其对于提升运维效率和保障系统稳定性的重要意义。
16 0