一种基于无监督学习的虚拟机异常检测方法及系统技术方案

技术编号:35292301 阅读:33 留言:0更新日期:2022-10-22 12:38
本发明专利技术涉及一种基于无监督学习的虚拟机异常检测方法,该方法包括以下步骤:步骤1:采集虚拟机运行数据;步骤2:将采集的虚拟机运行数据抽取到云平台的异常检测模型;步骤3:根据抽取的虚拟机运行数据训练和更新异常检测模型;步骤4:通过异常检测模型和实时数据检测虚拟机是否存在运行异常,若判断虚拟机出现异常,则抛出异常信息至云平台的告警模块进行示警,以实现对云平台虚拟机的实时异常检测。与现有技术相比,本发明专利技术具有提高虚拟机异常检测的效率、降低人工排查的错误率以及挖掘虚拟机的潜在风险等优点。的潜在风险等优点。的潜在风险等优点。

【技术实现步骤摘要】
一种基于无监督学习的虚拟机异常检测方法及系统


[0001]本专利技术涉及虚拟机异常检测
,尤其是涉及一种基于无监督学习的虚拟机异常检测方法及系统。

技术介绍

[0002]近年来,随着企业数字化转型的持续深化,云计算的应用规模与范围正在不断扩大,云平台对自身稳定性和安全性的要求也在不断提高。虚拟机作为云计算中最基本、最核心的计算资源,是云上应用的直接载体,也是网络攻击的重点目标。因此,虚拟机的运行表现,将会直接影响到承载应用的安全稳定。
[0003]但在实际情况中,受不同内外部客观因素的影响,虚拟机难以始终保持稳定的运行状态。一般来说,当虚拟机的任意性能指标偏离正常范围时,该虚拟机就被视为处于异常状态。为了解决异常问题,通常的做法是借助现成的监控工具或产品,然后给需要监测的指标项设定一些上下限值作为标准,一旦指标数据高于或低于标准值,就触发告警,最后由运维人员进行人工排查。
[0004]然而,这种做法存在两个明显的缺点:一方面,基于静态阈值的异常检测方法在判断指标是否“正常”时并不精细,只能进行“一刀切”处理,误报和漏报的情况大量存在;另一方面,传统监控很少提供描述异常的其他相关信息,导致人工运维介入后很难快速采取针对性的措施,处理问题缺乏效率。

技术实现思路

[0005]本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种基于无监督学习的虚拟机异常检测方法及系统。
[0006]本专利技术的目的可以通过以下技术方案来实现:
[0007]一种基于无监督学习的虚拟机异常检测方法,该方法包括以下步骤:
[0008]步骤1:采集虚拟机运行数据;
[0009]步骤2:将采集的虚拟机运行数据抽取到云平台的异常检测模型;
[0010]步骤3:根据抽取的虚拟机运行数据训练和更新异常检测模型;
[0011]步骤4:通过异常检测模型和实时数据检测虚拟机是否存在运行异常,若判断虚拟机出现异常,则抛出异常信息至云平台的告警模块进行示警,以实现对云平台虚拟机的实时异常检测。
[0012]所述的步骤4中,对于短期异常,异常检测模型具体为结合自编码器的方法的长短期记忆模型,通过异常检测模型和实时数据检测虚拟机是否存在运行异常的过程具体包括以下步骤:
[0013]步骤401a:确定一个时间步t,根据该时间步t处理源数据并生成输入数据和标签数据;
[0014]步骤402a:基于长短期记忆模型结合自编码器的方法对异常检测模型进行训练,
采用Keras或PyTorch对异常检测模型进行定义和初始化,再将输入数据和标签数据输入异常检测模型中进行训练,得到最终的异常检测模型;
[0015]步骤403a:根据异常检测模型对于训练数据的重建结果设置异常的阈值;
[0016]步骤404a:调用异常检测模型,并输入当前时间点向前T个时间步的数据,得到预测结果;
[0017]步骤405a:将预测结果与阈值进行判断,若预测结果大于阈值,则判断下一个数据点为异常点,即虚拟机有出现异常的趋势,并触发告警,若预测结果小于等于阈值,则等到下一个数据采集时间点,并返回步骤404a,重复预测流程。
[0018]所述的步骤401a中,输入数据具体为以时间步t为窗口的平移,标签数据具体为每个时间步t的下一个时间点的数据。
[0019]所述的步骤403a中,根据异常检测模型对于训练数据的重建结果设置异常的阈值的过程具体为:
[0020]将训练数据重新输入回异常检测模型得到重建结果,将该重建结果与真实训练数据对每个时间步t均进行平均绝对误差的计算,将计算结果从小到大排序,取排序后序列的第三四分位数点为阈值。
[0021]所述的步骤4中,对于长期异常,异常检测模型具体为DBSACN聚类模型,通过异常检测模型和实时数据检测虚拟机是否存在运行异常的过程具体包括以下步骤:
[0022]步骤401A:确定一个时间长度d,根据时间长度d处理源数据,将其分为由n
d
组数据组成的数组,并作为训练数据;
[0023]步骤402A:采用基于数据密度的聚类方法对异常检测模型进行训练,使用主流的机器学习框架对异常检测模型进行定义和初始化,再输入训练数据进行训练;
[0024]步骤403A:调用异常检测模型,输入上一个时间长度d的完整数据,得到一个分类结果:
[0025]步骤404A:当异常检测模型给出一个已知的分类结果时,在时空数据库中,查看同属分类结果的其他数据的标签,若分类为异常,则推送对应的异常信息;当异常检测模型给出一个未知的分类结果时,则预留该时间长度d的数据的状态,等待运维系统为该组数据确定运行状态,并更新时空数据库。
[0026]一种实现所述虚拟机异常检测方法的虚拟机异常检测系统,该系统包括:
[0027]宿主机模块:即物理机,为云平台向下管理的对象;
[0028]云平台模块:向下用以管理宿主机,向上用以将宿主机提供的资源抽象为虚拟机,并能够根据需求提供服务;
[0029]虚拟机模块:为云平台上的逻辑计算单元,包括两类虚拟机,分别为业务虚机和异常检测虚拟机;
[0030]监控模块:用以监控在宿主机下运行的虚拟机的资源使用情况;
[0031]管理模块:用以接收和传输异常信息;
[0032]告警模块:用以接收管理模块传输的异常信息,并进行告警,实现对云平台虚拟机的实时异常检测;
[0033]数据持久化模块:用以选取够直接处理时间序列数据的时空数据库,进而便于对监控数据进行存储、读取以及对数据标签的增删改查。
[0034]所述的宿主机模块包括作为计算节点的宿主机和作为管理节点的宿主机。
[0035]所述的业务虚机部署在作为计算节点的宿主机中,所述的业务虚机为云平台用户业务应用的主要载体,也是云平台进行监控和异常检测的对象;
[0036]所述的异常检测虚拟机为部署在作为管理节点的宿主机中的异常检测模型,用以实现异常检测功能并提供相应的服务,且能够在云平台上根据配置快速部署和启动。
[0037]所述的资源包括计算、存储和网络。
[0038]所述的监控模块部署在作为计算节点的宿主机中,分为有代理模式和无代理模式,所述的有代理模式的监控模块在虚拟机中安装代理程序,所述的无代理模式的监控模块通过云平台获得虚拟机的运行参数。
[0039]与现有技术相比,本专利技术具有以如下有益效果:
[0040]1、本专利技术克服了常规虚拟机异常检测存在的主要弱点,能够对虚拟机的运行模式进行识别,进而实现对异常的科学化和自动化的判断,提高异常检测的效率,降低人工排查的错误率,同时挖掘虚拟机的潜在风险;
[0041]2、本专利技术的认知模型能够与云平台的其他模块进行信息共享和联动,以协同处置异常事件,实现对数字基础设施更有力的控制;
[0042]3、本专利技术允许在云平台上以组件的形式进行部署,接受统一的配置和管理,能够按需使用,弹性本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于无监督学习的虚拟机异常检测方法,其特征在于,该方法包括以下步骤:步骤1:采集虚拟机运行数据;步骤2:将采集的虚拟机运行数据抽取到云平台的异常检测模型;步骤3:根据抽取的虚拟机运行数据训练和更新异常检测模型;步骤4:通过异常检测模型和实时数据检测虚拟机是否存在运行异常,若判断虚拟机出现异常,则抛出异常信息至云平台的告警模块进行示警,以实现对云平台虚拟机的实时异常检测。2.根据权利要求1所述的一种基于无监督学习的虚拟机异常检测方法,其特征在于,所述的步骤4中,对于短期异常,异常检测模型具体为结合自编码器的方法的长短期记忆模型,通过异常检测模型和实时数据检测虚拟机是否存在运行异常的过程具体包括以下步骤:步骤401a:确定一个时间步t,根据该时间步t处理源数据并生成输入数据和标签数据;步骤402a:基于长短期记忆模型结合自编码器的方法对异常检测模型进行训练,采用Keras或PyTorch对异常检测模型进行定义和初始化,再将输入数据和标签数据输入异常检测模型中进行训练,得到最终的异常检测模型;步骤403a:根据异常检测模型对于训练数据的重建结果设置异常的阈值;步骤404a:调用异常检测模型,并输入当前时间点向前T个时间步的数据,得到预测结果;步骤405a:将预测结果与阈值进行判断,若预测结果大于阈值,则判断下一个数据点为异常点,即虚拟机有出现异常的趋势,并触发告警,若预测结果小于等于阈值,则等到下一个数据采集时间点,并返回步骤404a,重复预测流程。3.根据权利要求2所述的一种基于无监督学习的虚拟机异常检测方法,其特征在于,所述的步骤401a中,输入数据具体为以时间步t为窗口的平移,标签数据具体为每个时间步t的下一个时间点的数据。4.根据权利要求2所述的一种基于无监督学习的虚拟机异常检测方法,其特征在于,所述的步骤403a中,根据异常检测模型对于训练数据的重建结果设置异常的阈值的过程具体为:将训练数据重新输入回异常检测模型得到重建结果,将该重建结果与真实训练数据对每个时间步t均进行平均绝对误差的计算,将计算结果从小到大排序,取排序后序列的第三四分位数点为阈值。5.根据权利要求1所述的一种基于无监督学习的虚拟机异常检测方法,其特征在于,所述的步骤4中,对于长期异常,异常检测模型具体为DBSACN聚类模型,通过异常检测模型和实时数据检测虚拟机是否存在运行异常的过程具体包括以下步骤:步骤401A:确定一个时间...

【专利技术属性】
技术研发人员:张天正
申请(专利权)人:上海仪电集团有限公司中央研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1