alibaba / SREWorks

Cloud Native DataOps & AIOps Platform | 云原生数智运维平台
https://sreworks.cn
Apache License 2.0
1.82k stars 404 forks source link

基于AI大模型的大数据集群根因诊断 #229

Open Twwy opened 1 year ago

Twwy commented 1 year ago

背景

大数据集群,作为处理和管理大规模数据的主要工具,其稳定性和效率直接影响着企业运营的顺畅度。然而,由于大数据集群系统的复杂性和多样性,导致故障发生时的根因分析(Root Cause Analysis, RCA)变得越来越困难。 具体来说,由于各类大数据架构的种类众多,如Hadoop、Spark、HBase、Kafka、Flink等,每一种架构都有自己独特的运行机制和可能出现的问题。如果采用传统的决策树进行故障定位和根因分析,不仅需要对每一种架构都进行深入的了解和研究,还需要不断更新和维护决策树,以应对系统更新和变化带来的新问题。这对于运维人员来说无疑是一项巨大的挑战,尤其是在大规模的数据中心,这种工作的复杂性和难度更是令人望而却步。 在此背景下,我们期望基于AI大模型来解决这个问题。AI大模型具有强大的理解和推理能力,能够理解和处理大规模、多源的数据,如日志文件、性能指标、系统事件等。并且,AI大模型可以自动学习和识别故障模式,进行因果推理,从而准确地找出故障的根因。 我们期望通过这个项目,建立一个基于AI大模型的自动化根因分析方案。这不仅能够减轻运维人员的工作负担,还能显著提高故障处理的效率和准确性,从而为企业节省大量的时间和资源。

推进思路

1. 熟悉langchain的工程框架和基础概念

https://python.langchain.com/en/latest/use_cases/question_answering.html

2. 基于langchain落地HDFS集群的不可用诊断

包括但不限于下列场景:

场景一:磁盘空间不足导致namenode进程异常

当NameNode所在节点存在磁盘空间不足问题时,namenode会主动关闭以防止进一步损坏。 最常见的场景之一,hdfs服务异常建议优先排查这一项 登陆namenode所在节点,执行df -h看下存储水位,有任何一块盘满达到100%均会导致namenode自动关闭; 也可以进一步通过查看namenode运行日志来确认namenode异常原因,登陆namenode所在节点,cd /mnt/disk1/log/hadoop-hdfs,ls -rlt|grep -i namenode,tail方式查看最新的log文件: 磁盘满导致namenode进程异常时具体错误信息为DiskOutOfSpaceException

场景二:内存不足导致namenode进程异常

当NameNode所在节点存在内存不足问题时,namenode会主动关闭以防止进一步损坏。 最常见的场景之一,hdfs服务异常建议优先排查这一项 登陆控制台界面,查看namenode配置的hadoop_namenode_heapsize值大小 进一步查看监控大盘里namenode使用的mem大小。 如果used最高已经达到max值,会导致namenode自动关闭; 也可以进一步通过查看namenode运行日志来确认namenode异常原因,登陆namenode所在节点,cd /mnt/disk1/log/hadoop-hdfs,ls -rlt|grep -i namenode,tail方式查看最新的log文件: 内存不足导致namenode进程异常时具体错误信息为FSNamesystem: OutOfMemoryException

3. 基于langchain落地云原生场景的复杂诊断

场景一:Node重启导致的Pod重启

4. 基于langchain落地Spark SQL诊断

参考 https://www.yuque.com/sreworks-doc/sreworks-workgroup/kxuqsn3kgdwbng2u

jueli12 commented 1 year ago

Project Completion