2023年大数据场景智能运维实践总结

作者:放纵

引言

在当今数字化世界中,如何充分挖掘和发挥数据价值已经成为了企业成功的关键因素,大数据也成为企业决策和运营的重要驱动力。在《当我们在谈论DataOps时,我们到底在谈论什么》一文中也提到,企业在面对到数据量巨大、数据种类繁多、数据急剧增长的困境时,如果不能对数据进行有序的组织和管理,非但不能产生数据价值,反而会引起企业的“数据灾难”,这也正是DataOps存在的价值。将DataOps思想进行工程化落地实践,统一建设高效规范的数据模型和数据体系,基于数据驱动的思想,真正解决生产过程中遇到的痛点问题。

但在真实的大数据运维实践中,我们也深刻的感受到,即使按照DataOps的数据管理和数据运维的方法论,建立了规范标准的数据运维平台,但依赖人工的故障排查定位以及故障处理恢复仍旧变得越来越困难,这也是DataOps的局限性。尤其是像在面对到海量数据可观测性分析、异常发现、故障根因定位、智能自愈等诸多场景下,DataOps都面临不小的困境和挑战,难以满足企业智能运维发展的需要。

因此,为了应对现代运维领域所面临的诸多挑战,AIOps的运维思想应运而生。关于AIOps(Artificial Intelligence for IT Operations,IT智能运维)的定义Gartner早就给出过更详尽的阐述,本文不做过多展开。我们所理解的AIOps是指结合大数据和 Machine Learning,将包括运维数据的采集和处理、异常检测、事件关联、异常诊断以及故障恢复等在内的 IT 流程自动化,从而减少平均修复时间(MTTR)或平均检测时间(MTTD)。此外,我们需要强调的是DataOps和AIOps是两种不同的运维思想,但是二者又相辅相成,可以更加全面的为企业发展提供数字化、自动化、智能化运营的支持。

在这里插入图片描述

基于这个背景,本文将探讨在大数据场景下,通过DataOps和AIOps的结合,建设符合业务需要的智能运维平台,以满足大数据产品在自动化、智能化运维方面的诉求。同时结合我们在智能运维场景的一些最佳实践,可以更加深刻的感受到AIOps为大数据智能运维领域带来了全新的可能性。

ABM智能化运维体系

ABM(apsara big data mananger )作为一个“飞天大数据AI管控平台”,算得上是较早进行AI研究和投入建设的大数据运维平台之一。与早期的“烟囱式”、高门槛、定制化的情况相比,经过多年的大数据产品业务实践和功能演进,已经建设成为一个面向服务不同角色用户、提供端到端的产品化使用体验的智能化运维服务体系。整个数智服务体系包括数据运维平台(DataOps)智能运维平台(AIOps)智能运维场景服务以及依赖的中台基础服务组件

在这里插入图片描述

数据运维平台(DataOps)

数据运维平台的核心是大数据运维数仓,依赖大数据平台(MaxCompute、Flink以及Hologres等)构筑运维数仓,进行数据建模,把实体、实体拓扑、指标、日志、调用链、事件等海量运维数据进行统一管控。作为数智运维体系的基石,为上层提供规范标准的数据支持。

ABM中台

ABM中台为数智服务体系建设提供了必要的基础服务组件,作为整个数智服务体系的粘合剂,包含了像采集服务、作业服务、通用诊断框架、工单服务以及通知服务等,它们为体系的高效运作提供了技术支持和保障。

智能运维平台(AIOps)

智能运维平台是达成自动化、智能化运维的关键,提供了一站式的智能运维解决方案。整个智能运维平台包括两部分内容:算法服务平台解决方案平台

  • 算法服务平台:主要面向算法研发和工程研发人员,自下而上分成智能引擎层、算法服务层和服务管控层。智能引擎层作为算法实例的部署载体,具备可插拔的能力,目前优先支持了BentoML框架和PAI-EAS平台;算法服务层包含了大量的算法实例,满足上层对各类算法的需求。这一层主要面向算法研发人员,用于开发灵活通用的算法实例,包括集成了基于通义千问的大语言模型;服务管控层提供了平台工程能力,比如服务鉴权、算法实例管控和服务限流、统一的API服务以及运营监控等,通过规范标准的算法使用文档对算法细节进行屏蔽,提高算法服务的易用性和灵活性,降低用户的使用门槛。
  • 解决方案平台:主要面向工程研发和SRE业务运维人员,基于算法服务平台的算法能力,结合大数据产品的业务痛点,按照产品化的建设思路,集成了运维领域通用的解决方案,满足不同业务场景的智能运维需求,为SRE带来产品化的使用体验和稳定的工程能力。

通过上述介绍可以看出,智能运维平台按照功能的高内聚、低耦合性和所面向的用户角色进行了架构分层设计,将需要依赖算法知识和工程能力的部分封装在算法服务平台,并通过解决方案平台屏蔽了算法的使用细节和复杂度,以通用运维解决方案的形式将算法服务的能力暴露出来,使得不同的用户角色可以更加专注于自己所擅长的领域。

智能运维场景

智能运维场景的建设,最终还是要围绕运维工作的本质,解决“稳定性、成本、效率”领域的相关需求。通过数智运维平台和相关的中台服务组件,针对现阶段难以解决的业务痛点,SRE运维人员有了一套新的解决问题的思路和途径,可以以更低成本、更加灵活、更加高效的手段,应对运维工作中的诸多挑战,保障业务的持续发展。到目前为止已经沉淀了几十个业务相关的智能运维场景,涵盖了团队负责的多个核心大数据产品。

ABM智能化运维实践

依托ABM的智能化运维体系,在日常大数据产品的运维工作中, 团队沉淀了很多优秀的智能运维领域的案例。下面通过几个经典案例的分享,希望能让大家直观的感受到ABM在智能运维领域的成果,更好的体现智能化运维体系的价值。

Flink集群热点机器

关于热点机器的定义,我们在 《SREWorks数智服务尝鲜,你的数据准备好了吗?》 有过介绍。当时更多的是从机器的物理水位指标出发,构建机器的“物理画像”,找到离群机器,发现集群的热点机器。但在真实的业务场景中我们发现,虽然从物理指标上来看,机器确实已经处于热点机器的范畴,但实际情况却是运行在这部分机器上的任务并没有任何异常。

我们以Flink产品为例,按照之前的机器“物理画像”的模式,如果机器被确定为热点,那么SRE会把运行在该机器上的Job进行重新调度,以此来消除热点机器可能导致的稳定性隐患。在这个过程中,由于没有关注机器上Job的运行状态,经常会导致正常运行的Job被人为干预,引起Job的运行中断。为了降低对线上业务的影响,提高系统的稳定性,我们首先把相关的实体数据和指标数据接入数据运维平台,其次基于算法服务平台的时间序列异常检测算法进行机器物理指标和业务指标的异常检测,将潜在的热点机器筛选出来;然后根据机器和运行在其上的Job的拓扑关系,结合异常指标数据,进行关联的根因诊断;最后按照集群层面,发现集群存在的热点机器并推送给业务SRE。更进一步,SRE一旦有了集群的热点机器数据就可以基于通用自愈服务,进行热点机器的自动化处理,无需人工干预。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

ChatOps智能助理

目前计算平台的大数据产品不论在公司内部还是公有云上都有广泛的用户群体,在产品的运行使用过程中,无论是产品本身还是用户使用层面,难免会存在各种各样的问题。而随着用户体量的不断提升,技术支持人员的答疑工作量也显著增加,尤其面对一些相似问题,严重降低了工作效率。为了解决当前的困境,提高答疑效率,降低技术支持人员的压力,我们对外提供了ChatOps智能助理服务,通过答疑机器人实现自助答疑的能力。

ChatOps智能助理通过智能问答场景与机器人关联方式,灵活管控机器人所使用的知识库范围。ChatOps通过智能解决方案平台,目前对接了三个主要的智能问答引擎:

    • 日志知识库:利用日志聚类算法对海量原始日志进行高效压缩,把海量的原始日志聚合成数量有限的日志类别,研发、运维等技术人员可以按照日志类别结合专家经验,为具体的日志类别标注对应的解决方案,形成日志知识库。
    • QA语料库:将来自包括但不限于产品的文档和使用手册、技术支持人员历史工单等半结构化或非结构化数据,构建FAQ的知识库,形成机器人的QA语料库。
    • 大语言模型:算法研发同学,基于大语言模型进行训练,使其具备大数据产品智能问答的能力。目前基于阿里内部孵化的通义千问进行建设,已经投入生产使用。

在这里插入图片描述

基于ChatOps智能助理服务,用户的相关问题可以直接通过答疑机器人进行解决,极大的减少技术支持人员的答疑工单量,显著提升答疑效率和用户体验。

MaxCompute计算资源配置推荐

阿里云MaxCompute提供了三种计费方式:包年包月、按量计费和按时计费,用户可以结合业务的实际情况和MaxCompute提供的TCO选型工具,选择合适的付费方式。但对通过包年包月方式付费的用户来说,固定计算资源配额Quota的方式存在两方面的问题:成本浪费和作业产出SLA。一方面,用户为了保障少部分关键作业产出的SLA,通常会配置充裕的计算资源Quota,导致计算资源大部分时间处于闲置状态,造成成本浪费。另一方面,用户为了降级成本,人为削减Quota,极有可能导致关键作业无法按时产出,对业务产生不必要的影响。

因此,我们通过结合实际作业资源用量和用户资源配置的期望,对包年包月的计算资源Quota生成更优的动态配置推荐方案,进一步帮助用户节省计算资源的成本,实现降本增效的目标。

下面是计算资源优化的基本逻辑:

    • 根据具体Quota历史行为(通常是30天的历史数据)通过预测算法服务进行识别,提取该Quota每天的用量模式
    • 用户结合自身的业务特征和SLA要求,设定若干条优化目标以及每条优化目标可容忍的延迟时间
    • 设计实现动态变配推荐算法,基于预测的Quota用量模式,优先保障用户的优化目标,按照固定预留CU和弹性预留CU总成本最优原则,推荐变配方案。

关于计算资源动态配置的更多细节和案例,推荐关注阿里云官网MaxCompute《计算资源优化推荐》和《使用成本优化功能实现降本增效》两部分内容。

https://help.aliyun.com/zh/maxcompute/user-guide/computing-resource-optimization-recommendations

https://help.aliyun.com/zh/maxcompute/use-cases/use-cost-optimization-to-achieve-cost-reduction-and-efficiency-enhancement

总结

本文首先介绍了目前大数据场景下运维所面临的问题和挑战,并探讨了AIOps在大数据运维领域的必要性以及智能化运维所带来的优势,然后介绍了ABM在大数据场景下的智能化运维体系的架构和建设思路,进一步从稳定性、效率和成本三个方面分享了我们在智能化运维实践中所构筑的几个典型场景,让读者对智能化运维能有一个更加直观感受。最后我们也希望对AIOps有兴趣的同学,一起探讨更多智能化运维建设思路和更多的可能性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/200692.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

P8A004-系统加固-磁盘访问权限

【预备知识】 访问权限,根据在各种预定义的组中用户的身份标识及其成员身份来限制访问某些信息项或某些控制的机制。访问控制通常由系统管理员用来控制用户访问网络资源(如服务器、目录和文件)的访问,并且通常通过向用户和组授予…

数据结构与算法--特殊的完全二叉树--堆,堆排序,利用堆解决topk的问题

目录 前言 1.树概念及结构 1.1树的概念 1.2 树的相关概念 1.3 树的表示 1.4 树在实际中的运用(表示文件系统的目录树结构) 2.二叉树概念及结构 2.1概念 2.2现实中的二叉树: 2.3 特殊的二叉树: 2.4 二叉树的性质 …

网络协议系列:TCP三次握手,四次挥手的全过程,为什么需要三次握手,四次挥手

TCP三次握手,四次挥手的全过程,为什么需要三次握手,四次挥手 一. TCP三次握手,四次挥手的全过程,为什么需要三次握手,四次挥手前言TCP协议的介绍三次握手三次握手流程:1. A 的 TCP 向 B 发送 连…

Windows关闭端口服务命令

winR 打开命令运行 cmd 命令netstat -o -n -a | findstr :9993 显示所有的端口占用情况 -a 显示所有连接和监听端口 -n 以数字形式显示地址和端口号。 此选项一般与 -a选项组合使用 -o 显示与每个连接相关的所属进程 ID 终止 PID taskkill /F /PID 3652

从独立求存到登顶市场,荣耀为何能在手机红海翻出新的浪花?

对企业的价值评估,往往离不开对其所处行业前景的考量。在蓝海赛道布局的企业,往往要比在红海市场突围的企业更容易受到资本重视。 但这并非绝对,若是一家企业能够在饱和的红海市场中,实现新的增长,其蕴涵的成长价值便…

Influx集群解决方案(Influx Proxy篇)

InFluxDB 集群搭建 本次搭建使用influx proxy 介绍 github地址:https://github.com/chengshiwen/influx-proxy/ Influx Proxy 是一个基于高可用、一致性哈希的 InfluxDB 集群代理服务,实现了 InfluxDB 高可用集群的部署方案, 具有动态扩/缩容、故障恢复…

字符串函数精讲1

又是好几天没有更新了,最近有些忙,但这并不是理由,还是怪我自己玩的时间多了!但还是有在每天敲代码的!话不多说,开始这一期的学习: strlen的使用和模拟实现 • 字符串以 \0 作为结束标志&#…

java学习part24异常throws

127-异常处理-异常处理方式二:throws_哔哩哔哩_bilibili 1.方法throws 2.如何抉择try和throws 3.手动throw语句 抛出一些java语法上没错但是不符合实际情况的异常。 用throw手动抛,方法上必须加throws。除非是运行时异常。 4.自定义异常

Java常见CodeReview及编码规范

鉴于自己的开发经验,以及常见容易产生bug及性能问题的点做个记录. 1.数据库 如果开发人员的经验不足,Java通过ORM(Mybatis)对数据库的操作的性能问题比较隐蔽.因为不压测或者异常case没发生的时候一般发现不了问题.特别是异常case发生的时候. 除配置表以外的sql都要经过expl…

软件设计师——程序设计语言基础(一)

📑前言 本文主要是【程序设计语言基础】——程序设计语言基础的相关题目,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 &#…

荣耀冲击高端,一边推新「修路」,一边降价「拆桥」

作者 | 辰纹 来源 | 洞见新研社 从2020年11月17日与华为分家,开启独立创业之路,到成功逆袭,今年第三季度以18%的份额重回中国智能手机市场榜首,荣耀用了3年时间。 图源:Canalys 在这三年时间内,荣耀经历…

【算法萌新闯力扣】:环形链表及环形链表II

力扣题目:环形链表及环形链表II 开篇 今天是备战蓝桥杯的第26天和算法村开营第4天。挑选了链表的黄金关卡与大家分享。 题目一:环形链表 题目链接: 141.环形链表 题目描述 方法一、哈希表 判断是否有环,可以利用哈希表,遍历…

‘tsc‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。

最近在用nodejs typescript 某游戏服务器在做一些研究 nodejs-tcs 问题描述: 1.使用命令npm install -g typescript安装typescript后,输入 tsc命令,一直报错 tsc 不是内部或外部命令,也不是可运行的程序 或批处理文件。 2.目…

算法面试题--树与对象数组的转化

1. Array -> Tree var arr [{ id: 12, parentId: 1, name: "朝阳区" },{ id: 241, parentId: 24, name: "田林街道" },{ id: 31, parentId: 3, name: "广州市" },{ id: 13, parentId: 1, name: "昌平区" },{ id: 2421, parentId:…

<Linux>(极简关键、省时省力)《Linux操作系统原理分析之存储管理(1)》(14)

[TOC](《Linux操作系统原理分析之存储管理》(14) 5 存储管理5.1 存储管理的目的和功能5.1.1 存储管理目的:5.1.2 存储管理的主要功能5.1.3 存储管理主要是对用户区进行管理 5.2 地址重定位5.2.1 作业的地址空间5.2.2.地址映射&…

Linux基本指令汇总

本专栏内容为:Linux学习专栏,分为系统和网络两部分。 通过本专栏的深入学习,你可以了解并掌握Linux。 💓博主csdn个人主页:小小unicorn ⏩专栏分类:Linux从入门到精通 🚚代码仓库:小…

UI自动化测试工具工作原理是怎样的?

随着软件开发的不断演进,保障软件质量成为了至关重要的一环。在这个过程中,UI自动化测试工具崭露头角,为开发团队提供了一种强有力的方式来确保应用程序的稳定性、功能性和兼容性。本文将深入探讨UI自动化测试工具的定义、工作原理以及其在提…

名字大却不中用的AI大模型,名不副实

这两天 OpenAI 团队( ChatGPT 公司)的戏比较多,两三天的功夫,剧情发展都超出了 OpenAI 首席科学家的预期,目前来看,微软还是最大的赢家。这是个引子,这个话题,网络上早已传烂了&…

InnoDB存储引擎中的锁

文章目录 概要一、需要解决的问题二、共享锁和独占锁1.1 锁定读1.2 表级别的共享锁、独占锁 三、行锁3.1 数据准备3.2 几种常见的行级锁3.3 行锁升级为表锁 概要 关于MySQL涉及到的锁,大致可以总结如下: MyISAM存储引擎在开发过程中几乎很少使用了&…

【重磅合作】九章云极DataCanvas公司与生态伙伴强强联手,构建人工智能强生态!

11月21日,在「筑基赋能 智向未来」九章云极DataCanvas大模型系列成果发布会上,九章云极DataCanvas公司与人工智能产业链上下游合作伙伴广东民营投资股份有限公司(以下简称“粤民投”)、西藏赛富合银投资有限公司(以下简…