CN116661954B - 虚拟机异常预测方法、装置、通信设备及存储介质 - Google Patents
虚拟机异常预测方法、装置、通信设备及存储介质 Download PDFInfo
- Publication number
- CN116661954B CN116661954B CN202310905155.9A CN202310905155A CN116661954B CN 116661954 B CN116661954 B CN 116661954B CN 202310905155 A CN202310905155 A CN 202310905155A CN 116661954 B CN116661954 B CN 116661954B
- Authority
- CN
- China
- Prior art keywords
- prediction
- virtual machine
- preset
- result
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000004891 communication Methods 0.000 title claims abstract description 23
- 230000005856 abnormality Effects 0.000 title claims description 22
- 230000002159 abnormal effect Effects 0.000 claims abstract description 96
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 83
- 238000013145 classification model Methods 0.000 claims abstract description 44
- 238000007781 pre-processing Methods 0.000 claims abstract description 17
- 238000012549 training Methods 0.000 claims description 115
- 238000005457 optimization Methods 0.000 claims description 55
- 238000012545 processing Methods 0.000 claims description 22
- 238000001514 detection method Methods 0.000 claims description 19
- 238000005070 sampling Methods 0.000 claims description 18
- 238000012544 monitoring process Methods 0.000 claims description 10
- 238000010606 normalization Methods 0.000 claims description 10
- 210000002569 neuron Anatomy 0.000 claims description 8
- 238000003491 array Methods 0.000 claims description 5
- 238000001228 spectrum Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 9
- 241000283153 Cetacea Species 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 235000003642 hunger Nutrition 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000000739 chaotic effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000002922 simulated annealing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 229920006395 saturated elastomer Polymers 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请实施例提供了一种虚拟机异常预测方法、装置、通信设备及存储介质,包括:接收用户发送的预测指令;根据预测指令获取虚拟机数据;对虚拟机数据进行预处理,生成虚拟机预测数据;将虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果;将第一预测结果、第二预测结果以及第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;根据第一分类结果、第二分类结果以及第三分类结果确定虚拟机是否处于异常状态。本申请实施例通过引入多个预测模型对虚拟机数据进行预测,使用训练好的智能算法模型对虚拟机的状态可能出现的异常进行预测及判断。
Description
技术领域
本申请涉及数据处理技术领域,特别是一种虚拟机异常预测方法、装置、通信设备及存储介质。
背景技术
随着当前各行各业业务上云的趋势发展,云平台相关的技术发展越来越受到重视。云平台汇集整合了存储、网络、计算等资源,通过运行虚拟机对外提供业务。因此,不论什么原因导致的虚拟机故障或宕机都会严重影响对外提供服务,有可能造成非常严重的损失。在云平台相关技术的研究中,如何准确快速地预测和判断出可能出现故障的虚拟机,对于云平台的业务运行具有极其重要的意义。
目前,相关技术中判断虚拟机是否异常往往采用的办法是实时监控和统计虚拟机的各项性能指标,然后依据行业历史经验制定性能指标阈值,依靠数值对比的方法进行异常告警提示等,然而上述技术方案由于只通过历史指标来判断虚拟机是否异常,无法灵活的确定虚拟机当前状态,因此会伴随着大量的误报和漏报现象,使得相关告警信息的可信度降低。
发明内容
本申请实施例的目的在于提供一种虚拟机异常预测方法、装置、通信设备及存储介质,以解决现有技术中只通过历史指标来判断虚拟机是否异常,无法灵活的确定虚拟机当前状态,导致出现大量误报和漏报的技术问题。具体技术方案如下:
在本申请实施的第一方面,首先提供了一种虚拟机异常预测方法,应用于预测检测机,所述虚拟机异常预测方法包括:
接收用户发送的预测指令;
根据所述预测指令获取虚拟机数据;
对所述虚拟机数据进行预处理,生成虚拟机预测数据;
将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果,其中,所述第一预测模型、第二预测模型以及第三预测模型是基于预设优化算法生成的,所述预设优化算法用于对所述第一预测模型中的第一预设参数、第二预测模型中的第二预设参数以及第三预测模型中的第三预设参数进行优化;
将所述第一预测结果、所述第二预测结果以及所述第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;
根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态。
可选地,所述根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态包括:
将所述第一分类结果、所述第二分类结果以及所述第三分类结果分别对应的分值相加,得到目标预测结果;
根据所述目标预测结果确定所述虚拟机是否处于异常状态。
可选地,所述根据所述目标预测结果确定所述虚拟机是否处于异常状态包括:
在检测到所述目标预测结果大于等于第一预设阈值的情况下,则确定所述虚拟机处于异常状态;
在检测到所述目标预测结果等于第二预设阈值的情况下,则将所述目标预测结果记录在预设累加器中,并对所述虚拟机进行下次时间节点的异常检测;
在检测到所述目标预测结果等于第三预设阈值的情况下,则确定所述虚拟机在本次时间节点中处于正常工作状态。
可选地,在所述在检测到所述目标预测结果等于第二预设阈值的情况下,则将所述目标预测结果记录在预设累加器中,并对所述虚拟机进行下次时间节点的异常检测的步骤之后,所述方法包括:
若下次时间节点中所述虚拟机对应的第二目标预测结果大于等于所述第一预设阈值,则向用户发送告警信息;
若下次时间节点中所述虚拟机对应的所述第二目标预测结果小于所述第一预设阈值,则将所述第二目标预测结果记录在所述预设累加器中;
若所述预设累加器中的累计结果大于目标预设值,则确定所述虚拟机处于异常状态。
可选地,在所述在检测到所述目标预测结果大于等于第一预设阈值的情况下,则确定所述虚拟机处于异常状态的步骤之后,所述方法包括:
向预设云平台反馈所述虚拟机的异常状态,以使所述预设云平台触发异常告警信息,其中,所述异常告警信息用于向提醒用户所述虚拟机当前处于异常状态。
可选地,所述虚拟机数据包括以下至少一种:
内存使用率、CPU使用率、网卡速率、磁盘读写速度以及磁盘时延。
可选地,所述预测指令包括预设采样单位和预设学习时长,所述预设学习时长中包括至少一个预设采样单位,所述根据所述预测指令获取所述虚拟机数据包括:
根据所述预测采样单位获取一个所述预设采样单位中全部所述虚拟机数据的平均值;
根据预设学习时长获取全部所述预设采样单位对应的所述虚拟机数据。
可选地,所述对所述虚拟机数据进行预处理,生成虚拟机预测数据包括:
根据预设时间滑窗和预设步长在所述虚拟机数据组成的多维数据中进行滑动处理,得到多个数组;
对每个所述数组中的一维虚拟机数据进行归一化处理,得到虚拟机预测数据。
可选地,所述对每个所述数组中的一维虚拟机数据进行归一化处理,得到虚拟机预测数据包括:
获取每个所述数组中的一维虚拟机数据中的最大值和最小值;
根据所述最大值和最小值进行归一化处理,得到虚拟机预测数据。
可选地,在所述接收用户发送的预测指令的步骤之前,所述方法包括:
接收用户发送的自学习指令;
根据所述自学习指令获取虚拟机数据;
对所述虚拟机数据进行预处理,生成虚拟机训练数据;
根据所述虚拟机训练数据和预设优化算法对第一初始预测模型、第二初始预测模型以及第三初始预测模型进行训练,分别生成第一预测模型、第二预测模型以及第三预测模型。
可选地,所述根据所述虚拟机训练数据和预设优化算法对第一初始预测模型、第二初始预测模型以及第三初始预测模型进行训练,分别生成第一预测模型、第二预测模型以及第三预测模型包括:
根据预设优化算法对所述第一初始预测模型中的第一预设参数进行优化处理,得到第一目标参数;
根据所述虚拟机训练数据和所述第一目标参数对所述第一初始预测模型进行训练,生成第一预测模型;以及,
根据预设优化算法对所述第二初始预测模型中的第二预设参数进行优化处理,得到第二目标参数;
根据所述虚拟机训练数据和所述第二目标参数对所述第二初始预测模型进行训练,生成第二预测模型;以及,
根据预设优化算法对所述第三初始预测模型中的第三预设参数进行优化处理,得到第三目标参数;
根据所述虚拟机训练数据和所述第三目标参数对所述第二初始预测模型进行训练,生成第三预测模型。
可选地,所述预设优化算法为SA-WOA算法,所述SA-WOA算法是基于SA算法生成预设扰动对WOA算法中的目标参数进行迭代优化,所述SA-WOA算法用于对所述第一初始预测模型、所述第二初始预测模型以及所述第三初始预测模型中分别对应的所述第一预设参数、所述第二预设参数以及所述第三预设参数进行优化。
可选地,所述第一预设参数为第一学习率以及第一初始预测模型隐含层的神经元个数,所述第二预设参数为储备池内部连接权谱半径和储备池输入单元尺度因子,所述第三预设参数为第三初始预测模型中间层的神经元个数和第二学习率。
可选地,在所述根据所述虚拟机训练数据和预设优化算法对第一初始预测模型、第二初始预测模型以及第三初始预测模型进行训练,分别生成第一预测模型、第二预测模型以及第三预测模型的步骤之后,所述方法包括:
将所述虚拟机训练数据输入至所述第一预测模型、所述第二预测模型以及所述第三预测模型,分别得到第一训练预测结果、第二训练预测结果以及第三训练预测结果;
根据所述第一训练预测结果、第二训练预测结果以及第三训练预测结果对初始异常分类模型进行训练,生成异常分类模型。
可选地,所述根据所述第一训练预测结果、第二训练预测结果以及第三训练预测结果对初始异常分类模型进行训练,生成异常分类模型包括:
将所述第一训练预测结果、第二训练预测结果以及第三训练预测结果分别与所述第一训练预测结果对应的真实结果、所述第二训练预测结果对应的真实结果以及所述第三训练预测结果对应的真实结果进行比对处理,得到第一偏差值、第二偏差值以及第三偏差值;
根据所述第一偏差值、所述第二偏差值以及所述第三偏差值与预设偏差阈值之间的关系确定所述初始异常分类模型的样本数据;
根据所述初始异常分类模型的样本数据对所述初始异常分类模型进行训练,生成异常分类模型。
可选地,所述根据所述第一偏差值、所述第二偏差值以及所述第三偏差值与预设偏差阈值之间的关系确定所述初始异常分类模型的样本数据包括:
在检测到所述第一偏差值、所述第二偏差值以及所述第三偏差值小于预设偏差阈值的情况下,将所述第一偏差值对应的第一训练预测结果、所述第二偏差值对应的第二训练预测结果以及所述第三偏差值对应的第三训练预测结果作为所述初始异常分类模型的样本数据。
可选地,在所述根据所述第一偏差值、所述第二偏差值以及所述第三偏差值与预设偏差阈值之间的关系确定所述初始异常分类模型的样本数据的步骤之后,所述方法包括:
将所述样本数据对应的标签设置为正样本标签。
可选地,所述预测指令包括虚拟机数量以及预设学习时长;
在所述接收用户发送的预测指令的步骤之后,所述方法包括:
根据所述虚拟机数量开启所述虚拟机数量对应的线程,其中,所述线程用于对所述虚拟机的性能以及负载数据进行监听,所述监听的持续时间为所述预设学习时长。
在本申请实施的又一方面,还提供了虚拟机异常预测装置,应用于预测检测机,所述虚拟机异常预测装置包括:
接收模块,用于接收用户发送的预测指令;
获取模块,用于根据所述预测指令获取虚拟机数据;
生成模块,用于对所述虚拟机数据进行预处理,生成虚拟机预测数据;
输入模块,用于将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果,其中,所述第一预测模型、第二预测模型以及第三预测模型是基于预设优化算法生成的,所述预设优化算法用于对所述第一预测模型中的第一预设参数、第二预测模型中的第二预设参数以及第三预测模型中的第三预设参数进行优化;
分类模块,用于将所述第一预测结果、所述第二预测结果以及所述第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;
异常检测模块,用于根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态。
在本申请实施的又一方面,还提供了一种通信设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的虚拟机异常预测方法。
在本申请实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的虚拟机异常预测方法。
本申请实施例提供的虚拟机异常预测方法,通过接收用户发送的预测指令;根据所述预测指令获取虚拟机数据;对所述虚拟机数据进行预处理,生成虚拟机预测数据;将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果,其中,所述第一预测模型、第二预测模型以及第三预测模型是基于预设优化算法生成的,所述预设优化算法用于对所述第一预测模型中的第一预设参数、第二预测模型中的第二预设参数以及第三预测模型中的第三预设参数进行优化;将所述第一预测结果、所述第二预测结果以及所述第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态。本申请实施例通过接收用户的虚拟机预测指令,从而对虚拟机进行线程监听获取虚拟机数据,由于云平台中虚拟机的各种负载和性能数据的变化实质是一种混沌系统,因此可以通过引入多个预测模型对虚拟机数据进行预测处理,使用训练好的智能算法模型对虚拟机的状态可能出现的异常进行预测及判断,对提前预判虚拟机可能出现的风险有极大的帮助,且实时性和应用型较强。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1示出了本申请实施例提供的虚拟机异常预测方法的步骤流程图一;
图2示出了本申请实施例提供的虚拟机异常预测方法的步骤流程图二;
图3示出了本申请实施例提供的虚拟机异常预测方法的步骤流程图二中步骤304的步骤流程图;
图4示出了本申请实施例提供的一种虚拟机异常预测装置的装置框图;
图5示出了本申请实施例提供的一种通信设备的结构框图;
图6示出了本申请实施例提供的一种云平台的管理及信息交互示意图;
图7示出了本申请实施例提供的一种虚拟机异常预测方法流程示意图;
图8示出了本申请实施例提供的一种预设优化算法的方法流程图;
图9示出了本申请实施例提供的一种虚拟机异常预测方法中告警流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本申请各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本申请的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
需要说明的是,在本申请实施例中,应用于预测检测机,如图7所示,图7示出了本申请实施例提供的一种云平台的管理及信息交互示意图,在云平台中附加一个专用主机(预测检测机),该主机不用于部署和承担云计算相关的任务,主要用于监听和收集云平台中各个虚拟机的性能和负载数据,同时需要承担预测和异常检测模型的学习训练以及预测检测任务。
在本申请实施例中,云平台可以管理预测检测机,同时两者之间可以进行信息交互,在云平台及虚拟机初始化部署完成后,若需要对某些虚拟机启用异常预测功能,首先在云平台选择需要进行异常预测的N个虚拟机,然后设置学习时间T(单位为min),并选择一键下发“自学习”指令,此时预测检测机会开启N个多线程分别监听并获取N个虚拟机的性能及负载数据,然后将这些数据保存在预测检测机中,经过T时间后,停止这N个监听线程,然后启动数据预处理程序,再将处理后的数据送入构建的智能算法模型中进行学习训练,等待训练完成后停止学习相关线程并将模型保存,同时在预测检测机中记录一个表格,以key-value的形式记录虚拟机和模型的对应关系。最后,可以通过云平台下发“开始预测及检测”指令,此时利用预测检测机中的多个智能模型开始对虚拟机进行预测及检测,并将检测结果信息反馈给云平台。
参照图1,示出了本申请实施例提供的虚拟机异常预测方法的步骤流程图一,所述方法可以包括:
步骤101,接收用户发送的预测指令。
需要说明的是,在本申请实施例中,预测指令可以是用户基于云平台向预测检测机发送的指令,也可以是在预测检测机上设置相应的按钮,用户点击相应按钮即可以向预测检测机发送预测指令。
进一步地,所述预测指令包括虚拟机数量以及预设学习时长;
在步骤101之后,可以包括:根据所述虚拟机数量开启所述虚拟机数量对应的线程,其中,所述线程用于对所述虚拟机的性能以及负载数据进行监听,所述监听的持续时间为所述预设学习时长。
预测指令中会携带相关数据以使预测检测机进行工作,具体的,预测指令可以包括虚拟机数量,例如N个虚拟机需要进行异常预测,还可以包括预设学习时长T,需要说明的是,无论在训练阶段还是预测阶段,预设学习时长T即为对虚拟机的性能及负载数据的监听以及获取的时长,例如,一键下发“自学习”指令,此时预测检测机会开启N个多线程分别监听并获取N个虚拟机的性能及负载数据,然后将这些数据保存在预测检测机中,经过T时间后,停止这N个监听线程。
步骤102,根据所述预测指令获取虚拟机数据。
因此,在接收预测指令之后,对虚拟机的性能及负载数据进行监听,从而获取初始的性能参数及负载数据等。
进一步地,虚拟机数据包括以下至少一种:内存使用率、CPU使用率、网卡速率、磁盘读写速度以及磁盘时延。
为了便于本领域技术人员理解,本申请中将上述参数数据用不同字母表示,例如,虚拟机的内存使用率表示为a、CPU使用率表示为b、网卡速率表示为c、磁盘读写速度表示为d、磁盘时延表示为e。
进一步地,所述预测指令包括预设采样单位和预设学习时长,所述预设学习时长中包括至少一个预设采样单位,所述根据所述预测指令获取所述虚拟机数据包括:
根据所述预测采样单位获取一个所述预设采样单位中全部所述虚拟机数据的平均值;根据预设学习时长获取全部所述预设采样单位对应的所述虚拟机数据。
在获取初始的性能参数及负载数据后,需要对上述数据进行分组,从而更好的便于模型的使用,因此,以1min为一个采集单位,为了防止数据噪声影响,选择获取1min内各个参数的平均值,组成一个采样数据x,其中,x可以表示为:
则学习T min后的数据可以组成多维数据,其中可以表示为:
其中,上述T表示预设学习时长,x表示一个采样单位对应的一组采样数据,a,b,c,d,e表示虚拟机的不同参数信息。
步骤103,对所述虚拟机数据进行预处理,生成虚拟机预测数据。
需要说明的是,虚拟机数据可以表示为一种多维数组,为了更好的对消除奇异样本数据导致的不良影响,因此,需要对虚拟机数据继续归一化处理,从而生成虚拟机预测数据。
进一步地,所述对所述虚拟机数据进行预处理,生成虚拟机预测数据包括:
根据预设时间滑窗和预设步长在所述虚拟机数据组成的多维数据中进行滑动处理,得到多个数组;对每个所述数组中的一维虚拟机数据进行归一化处理,得到虚拟机预测数据。
进一步地,所述对每个所述数组中的一维虚拟机数据进行归一化处理,得到虚拟机预测数据包括:
获取每个所述数组中的一维虚拟机数据中的最大值和最小值;根据所述最大值和最小值进行归一化处理,得到虚拟机预测数据。
需要说明的是,在本申请实施例中,在获取多维数据之后,可以根据预设时间滑窗t,以及预设步长L对多维数据进行数据分组,具体的,时间滑窗t长度为30min,步长L为1min,时间滑窗t在多维数组滑动,可以得到(T-t+L)个数组,因此,第i个数组可以表示为:
针对每一个数组,对其内每一维数据进行归一化处理,以内存使用率a为例,处理方式如公式(1)所示,经过归一化处理后,第i个数组可以表示为:
其中,公式1可以表示为:
(公式1)
其中,上述其中和分别为内存对应的维度数组中内存使用率最大值和最小值,同样的,对于其他参数也是获取维度数据中的最大值和最小值从而进行归一化处理。
步骤104,将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果,其中,所述第一预测模型、第二预测模型以及第三预测模型是基于预设优化算法生成的,所述预设优化算法用于对所述第一预测模型中的第一预设参数、第二预测模型中的第二预设参数以及第三预测模型中的第三预设参数进行优化。
需要说明的是,在本申请实施例中,第一预测模型、第二预测模型以及第三预测模型是用于对虚拟机预测数据进行处理,从而确定虚拟机是否处于异常状态。
具体的,在本申请实施例中,除了使用三个预测模型对虚拟机预测数据及进行预测之外,还可以使用五个预测模型,即本申请中可以使用奇数个预测模型对虚拟机预测数据进行预测。
例如,本申请中的第一预测模型、第二预测模型以及第三预测模型可以是优化后的LSTM模型、ESN模型以及GRU模型。
具体的,对预测模型的优化过程是基于预设优化算法对预测模型中的重要参数进行优化处理,得到最优参数从而得到优化后的预测模型。
需要说明的是,对于预设优化算法可以是SA-WOA算法,其中,SA-WOA算法是在WOA算法的基础上通过模拟退火算法加快WOA算法的收敛速度。
具体的,将模拟退火算法SA引入至WOA的迭代过程中,形成一种SA-WOA算法,如图9所示,在WOA算法中,rand取[0,1]随机值,A的取值方式如公式(2)所示,其中在迭代过程中逐渐从2降低为0,下降梯度是随机值。当使用三种捕获策略后,借助饥饿度函数,如公式(3)所示,其中为预测值,为实际值,计算出最饱的鲸鱼个体A。此时引入模拟退火思想,在最佳鲸鱼个体上产生一个小范围的变化,然后产生一个新的个体B,两个个体的饥饿度为f(A)、f(B),根据Metropolis法则确定B代替A的概率P,如公式(4)、(5)所示,其中为SA的初始化温度值,本发明中=2000,若,使用A代替B;若,则以P的概率使用A代替B。然后进行下一代搜索,最终经过T代搜索后获得最佳鲸鱼个体。
上述公式2、3、4、5可以表示为:
其中,上述公式2中A为最饱的鲸鱼个体,rand是0-1区间内的随机值,为,上述公式3中为预测值,为实际值,为饥饿度函数,上述公式4中P为B代替A的概率,为SA的初始化温度值,上述公式5中,f(A)为A个体的饥饿度,f(B)为B个体的饥饿度。
步骤105,将所述第一预测结果、所述第二预测结果以及所述第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;
步骤106,根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态。
需要说明的是,在本申请实施例中,获取了第一预测结果、所述第二预测结果以及所述第三预测结果之后,可以根据三种预测结果进一步地确定虚拟机是否处于异常状态。
需要说明的是,上述步骤105-106中,当使用预测模型得到预测数据后,为了对预测出的数据进行异常判断,因此,通过将预测数据异常输入单分类器SVDD中进行检测,其中,异常分类模型是基于预测模型输出的预测结果进行训练的模型,预测模型进行训练时,将每次预测输出的一组预测数据与真实数据利用公式(6)进行计算对比,从而得到第一分类结果、第二分类结果以及第三分类结果,即多个分类结果,其中,上述公式6可以表示为:
(公式6)
假设实际数据为,预测结果为,若,则将该组数据作为训练SVDD的一个样本,这样在学习训练过程中可以得到大量这样的样本数据,每个样本都是一个5维的数据。然后将这些数据的标签都标记为0,即正样本(1表示负样本)。然后这些数据作为训练数据去训练SVDD模型,最终得到一个可以对预测模型预测数据进行异常检测的SVDD模型。
异常分类模型可以理解为是一个只输出对错结果的分类模型。
进一步地,步骤106可以包括:
S1、将所述第一分类结果、所述第二分类结果以及所述第三分类结果分别对应的分值相加,得到目标预测结果;
S2、根据所述目标预测结果确定所述虚拟机是否处于异常状态。
进一步地,S2即所述根据所述目标预测结果确定所述虚拟机是否处于异常状态包括:
S21、在检测到所述目标预测结果大于等于第一预设阈值的情况下,则确定所述虚拟机处于异常状态;
S22、在检测到所述目标预测结果等于第二预设阈值的情况下,则将所述记录在预设累加器中,并对所述虚拟机进行下次时间节点的异常检测;
S23、在检测到所述目标预测结果等于第三预设阈值的情况下,则确定所述虚拟机在本次时间节点中处于正常工作状态。
进一步地,S22之后,可以包括:
若下次时间节点中所述虚拟机对应的第二目标预测结果大于等于所述第一预设阈值,则向用户发送告警信息;
若下次时间节点中所述虚拟机对应的所述第二目标预测结果小于所述第一预设阈值,则将所述第二目标预测结果记录在所述预设累加器中;
若所述预设累加器中的累计结果大于目标预设值,则确定所述虚拟机处于异常状态。
进一步地,S21之后,可以包括:
向预设云平台反馈所述虚拟机的异常状态,以使所述预设云平台触发异常告警信息,其中,所述异常告警信息用于向提醒用户所述虚拟机当前处于异常状态。
需要说明的是,上述内容中,如图9所示,图9示出了本申请实施例提供的一种虚拟机异常预测方法中告警流程图,某个虚拟机的数据经过三个预测模型的预测得到三个预测结果,依次将三个预测结果数据作为针对本虚拟机的SVDD模型的输出数据,最终得到三个输出结果、、(0为正常,1为异常)。
进一步地,本申请中通过模拟投票原理,即结果异常则投出一票,结果正常则不投票,如公式(7),可以得到单次预测结果判断的投票总数。若,则代表在本次预测中,没有发现虚拟机存在任何异常;若,则认为在本次预测检测中,发现虚拟机存在异常,此时向云平台反馈该虚拟机异常,触发云平台的严重告警信息,告知管理员该虚拟机存在异常。若时,说明仅有一个模型预测结果判断为异常,为了避免预测模型预测错误导致触发误告警信息,因此,这种情况下暂不向云平台进行任何反馈,而是将此时的票数记录至一个累加器中,即,继续进行下一个时间节点的数据预测及检测,若下一个时间点的,则直接告警并将置0,若,同样将置0;若,则将结果计入累加器,如公式(8)所示,此时判断若5,则认为虚拟机存在相对较低的异常风险,此时向云平台反馈该虚拟机可能存在异常,触发云平台的次要告警信息,最后将置0。
其中,上述公式7、8可以表示为:
(公式7)
(公式8)
其中,上述为目标预测结果,、、分别为第一分类结果、第二分类结果以及第三分类结果,表示预设累加器中的一次时间节点对应的目标预测结果。
本申请实施例通过接收用户的虚拟机预测指令,从而对虚拟机进行线程监听获取虚拟机数据,由于云平台中虚拟机的各种负载和性能数据的变化实质是一种混沌系统,因此可以通过引入多个预测模型对虚拟机数据进行预测处理,使用训练好的智能算法模型对虚拟机的状态可能出现的异常进行预测及判断,对提前预判虚拟机可能出现的风险有极大的帮助,且实时性和应用型较强。
另外,通过学习训练出的预测模型对虚拟机的各种数据进行实时的预测,得到预测数据后需要对其进行分析并判断出虚拟机是否异常。本发明摒弃传统的判断预测值是否在合法范围内的方法,采用机器学习中的分类算法对其预测结果进行训练和判断,最终输出是否异常。同时,考虑到虚拟机正常运行的数据丰富而异常状态时的数据比较匮乏,这就会导致训练数据的不均衡,为了克服训练数据不均衡的弊端,通过引入单分类器支持向量描述SVDD,这种分类器可以在仅有正样本的情况下训练出一个准确率较高的异常检测模型。
另外,利用多种智能算法联合进行预测的方法,可以得到多个预测结果,利用多个预测结果,依靠规定的投票表决方案确定出虚拟机状态是否出现了异常,进而确定是否需要反馈给云平台的管理端进行不同的告警,有效地提高了云平台中虚拟机异常预测告警的准确性。
参照图2,示出了本申请实施例提供的虚拟机异常预测方法的步骤流程图二,所述方法可以包括:
步骤201,接收用户发送的自学习指令;
步骤202,根据所述自学习指令获取虚拟机数据;
步骤203,对所述虚拟机数据进行预处理,生成虚拟机训练数据;
步骤204,根据所述虚拟机训练数据和预设优化算法对第一初始预测模型、第二初始预测模型以及第三初始预测模型进行训练,分别生成第一预测模型、第二预测模型以及第三预测模型;
需要说明的是,在本申请实施例中,对于虚拟机异常预测来讲,分为两个阶段,如图8所示,分为模型训练阶段(模型自学习阶段)以及模型预测阶段,两个阶段本质上没有区别,对虚拟机数据的预处理方法也相同,但是在模型训练阶段包括对初始预测模型以及初始异常分类模型的优化训练过程。
因此,下面是对具体的优化过程的详细阐述。
进一步地,如图3所示,图3示出了本申请实施例提供的虚拟机异常预测方法的步骤流程图二中步骤204的步骤流程图,步骤204可以包括:
步骤301,根据预设优化算法对所述第一初始预测模型中的第一预设参数进行优化处理,得到第一目标参数;
步骤302,根据所述虚拟机训练数据和所述第一目标参数对所述第一初始预测模型进行训练,生成第一预测模型;以及,
步骤303,根据预设优化算法对所述第二初始预测模型中的第二预设参数进行优化处理,得到第二目标参数;
步骤304,根据所述虚拟机训练数据和所述第二目标参数对所述第二初始预测模型进行训练,生成第二预测模型;以及,
步骤305,根据预设优化算法对所述第三初始预测模型中的第三预设参数进行优化处理,得到第三目标参数;
步骤306,根据所述虚拟机训练数据和所述第三目标参数对所述第二初始预测模型进行训练,生成第三预测模型;
步骤307,将所述虚拟机训练数据输入至所述第一预测模型、所述第二预测模型以及所述第三预测模型,分别得到第一训练预测结果、第二训练预测结果以及第三训练预测结果;
步骤308,根据所述第一训练预测结果、第二训练预测结果以及第三训练预测结果对初始异常分类模型进行训练,生成异常分类模型。
需要说明的是,在本申请实施例中,上述步骤301-308中,首先,本申请中的第一初始预测模型、第二初始预测模型以及第三初始预测模型可以是未优化的LSTM模型、ESN模型、GRU模型。
具体的,对预测模型的优化过程是基于预设优化算法对预测模型中的重要参数进行优化处理,得到最优参数从而得到优化后的预测模型。
进一步地,所述预设优化算法为SA-WOA算法,所述SA-WOA算法是基于SA算法生成预设扰动对WOA算法中的目标参数进行迭代优化,所述SA-WOA算法用于对所述第一初始预测模型、所述第二初始预测模型以及所述第三初始预测模型中分别对应的所述第一预设参数、所述第二预设参数以及所述第三预设参数进行优化。
前序内容中阐述过,对于预设优化算法可以是SA-WOA算法,其中,SA-WOA算法是在WOA算法的基础上通过模拟退火算法加快WOA算法的收敛速度。
因此,在SA-WOA算法基础上对初始LSTM模型、初始ESN模型、初始GRU模型进行优化,优化的本质是对预测模型中的重要参数进行选择,选择最优参数,即预设优化算法对初始预测模型中的预设参数进行优化处理,得到目标参数,其中,第一目标参数、第二目标参数以及第三目标参数即为各个预测模型中优化后的最优参数。
进一步地,所述第一预设参数为第一学习率以及第一初始预测模型隐含层的神经元个数,所述第二预设参数为储备池内部连接权谱半径和储备池输入单元尺度因子,所述第三预设参数为第三初始预测模型中间层的神经元个数和第二学习率。
对于SA-WOA优化的LSTM模型,在训练LSTM模型时,学习率和隐含层网络神经元的个数n这两个模型参数的初始化设置最为重要,因此引入SA-WOA优化算法寻找最优的、n值。首先给定参数常见的取值范围,例如取[0.001,0.01],n取[50,100],然后选择损失函数如前序公式(3)所示,将和n组成一个变量组当作一个鲸鱼个体,输入到SA-WOA优化的LSTM中开始训练LSTM模型,使用前述数据处理模块中的数据,利用(T-t+L)个时间窗的数组中的前29组多维数据作为LSTM的输入, 利用第30组的真实数据作为预测输出的多维数据的验证,最终经过N代训练或者精度达到预期要求后,停止训练并得到训练好的LSTM模型。
对于WOA优化的ESN模型,ESN模型的预测最重要的就是确定储备池内部连接权谱半径SR和储备池输入单元尺度因子IS,所以本发明引入SA-WOA优化算法进行最优值搜索,首先将SR和IS组成一个变量组(IS,SR),随机初始化一组解带入SA-WOA,经过算法搜索后最终获取最佳的(IS,SR)组合值,然后将其设置为ESN模型参数,同样使用前述,利用(T-t+L)个时间窗的数组进行多维数据输出,多维数据输出的训练,最终得到一个训练好的ESN模型。
对于WOA优化的GRU模型,在构建GRU预测模型时,主要需要确定GRU网络中中间层的神经元个数n和网络的学习率,同样的将两个参数组成一个变量组(n,),然后利用SA-WOA的搜索确定出最佳的变量值,最终将GRU中的这两个参数值设定为最佳值,同样使用前述,利用(t-i+1)个时间窗的数组进行多维数据输出,多维数据输出的训练,最终得到一个训练好的GRU模型。
对于SVDD模型构建,在此不再赘述,可以参照前序对异常分类模型的论述。
进一步地,步骤308可以包括:
将所述第一训练预测结果、第二训练预测结果以及第三训练预测结果分别与所述第一训练预测结果对应的真实结果、所述第二训练预测结果对应的真实结果以及所述第三训练预测结果对应的真实结果进行比对处理,得到第一偏差值、第二偏差值以及第三偏差值;根据所述第一偏差值、所述第二偏差值以及所述第三偏差值与预设偏差阈值之间的关系确定所述初始异常分类模型的样本数据;根据所述初始异常分类模型的样本数据对所述初始异常分类模型进行训练,生成异常分类模型。
进一步地,确定样本数据可以通过以下方式:
在检测到所述第一偏差值、所述第二偏差值以及所述第三偏差值小于预设偏差阈值的情况下,将所述第一偏差值对应的第一训练预测结果、所述第二偏差值对应的第二训练预测结果以及所述第三偏差值对应的第三训练预测结果作为所述初始异常分类模型的样本数据。
进一步地,对于确定的样本数据,可以将样本数据对应的标签设置为正样本标签。
需要说明的是,上述内容可以参照前序论述,在此不再赘述。
步骤205,接收用户发送的预测指令;
步骤206,根据所述预测指令获取虚拟机数据;
步骤207,对所述虚拟机数据进行预处理,生成虚拟机预测数据;
步骤208,将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果;
步骤209,根据所述第一预测结果、所述第二预测结果以及所述第三预测结果预测所述虚拟机是否处于异常状态。
需要说明的是,上述内容可以参照前序论述,在此不再赘述。
本申请实施例通过接收用户的虚拟机预测指令,从而对虚拟机进行线程监听获取虚拟机数据,由于云平台中虚拟机的各种负载和性能数据的变化实质是一种混沌系统,因此可以通过引入多个预测模型对虚拟机数据进行预测处理,使用训练好的智能算法模型对虚拟机的状态可能出现的异常进行预测及判断,对提前预判虚拟机可能出现的风险有极大的帮助,且实时性和应用型较强。
另外,利用多种智能算法联合进行预测的方法,可以得到多个预测结果,利用多个预测结果,依靠规定的投票表决方案确定出虚拟机状态是否出现了异常,进而确定是否需要反馈给云平台的管理端进行不同的告警,有效地提高了云平台中虚拟机异常预测告警的准确性。
另外,本申请中通过对初始预测模型的优化,可以在更好的提高虚拟机异常预测的准确性,并且通过在预测模型的基础上对初始异常分类模型进行优化,可以实现对预测出的数据进行异常判断,进而实现和云平台的交互,向云平台和用户提醒虚拟机是否存在异常。
参照图4,图4示出了本申请实施例提供的一种虚拟机异常预测装置,应用于GPU,所述装置包括:
接收模块401,用于接收用户发送的预测指令;
获取模块402,用于根据所述预测指令获取虚拟机数据;
生成模块403,用于对所述虚拟机数据进行预处理,生成虚拟机预测数据;
输入模块404,用于将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果,其中,所述第一预测模型、第二预测模型以及第三预测模型是基于预设优化算法生成的,所述预设优化算法用于对所述第一预测模型中的第一预设参数、第二预测模型中的第二预设参数以及第三预测模型中的第三预设参数进行优化;
分类模块405,用于将所述第一预测结果、所述第二预测结果以及所述第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;
异常检测模块406,用于根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态。
本申请实施例提供的虚拟机异常预测装置,通过接收用户发送的预测指令;根据所述预测指令获取虚拟机数据;对所述虚拟机数据进行预处理,生成虚拟机预测数据;将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果;根据所述第一预测结果、所述第二预测结果以及所述第三预测结果预测所述虚拟机是否处于异常状态。本申请实施例通过接收用户的虚拟机预测指令,从而对虚拟机进行线程监听获取虚拟机数据,由于云平台中虚拟机的各种负载和性能数据的变化实质是一种混沌系统,因此可以通过引入多个预测模型对虚拟机数据进行预测处理,使用训练好的智能算法模型对虚拟机的状态可能出现的异常进行预测及判断,对提前预判虚拟机可能出现的风险有极大的帮助,且实时性和应用型较强。
本申请实施例还提供了一种通信设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,可以实现如下步骤:
接收用户发送的预测指令;
根据所述预测指令获取虚拟机数据;
对所述虚拟机数据进行预处理,生成虚拟机预测数据;
将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果,其中,所述第一预测模型、第二预测模型以及第三预测模型是基于预设优化算法生成的,所述预设优化算法用于对所述第一预测模型中的第一预设参数、第二预测模型中的第二预设参数以及第三预测模型中的第三预设参数进行优化;
将所述第一预测结果、所述第二预测结果以及所述第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;
根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的虚拟机异常预测。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的虚拟机异常预测。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或第三数据库通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或第三数据库进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、第三数据库等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk (SSD))等。
需要说明的是,在本文中,诸如第一和第一等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (19)
1.一种虚拟机异常预测方法,其特征在于,应用于预测检测机,所述虚拟机异常预测方法包括:
接收用户发送的预测指令;
根据所述预测指令获取虚拟机数据;
对所述虚拟机数据进行预处理,生成虚拟机预测数据;
将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果,其中,所述第一预测模型、第二预测模型以及第三预测模型是基于预设优化算法生成的,所述预设优化算法用于对所述第一预测模型中的第一预设参数、第二预测模型中的第二预设参数以及第三预测模型中的第三预设参数进行优化;
将所述第一预测结果、所述第二预测结果以及所述第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;
根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态,包括:
将所述第一分类结果、所述第二分类结果以及所述第三分类结果分别对应的分值相加,得到目标预测结果;
根据所述目标预测结果确定所述虚拟机是否处于异常状态,包括:
在检测到所述目标预测结果大于等于第一预设阈值的情况下,则确定所述虚拟机处于异常状态;
在检测到所述目标预测结果等于第二预设阈值的情况下,则将所述目标预测结果记录在预设累加器中,并对所述虚拟机进行下次时间节点的异常检测;
若下次时间节点中所述虚拟机对应的第二目标预测结果大于等于所述第一预设阈值,则向用户发送告警信息;
若下次时间节点中所述虚拟机对应的所述第二目标预测结果小于所述第一预设阈值,则将所述第二目标预测结果记录在所述预设累加器中;
若所述预设累加器中的累计结果大于目标预设值,则确定所述虚拟机处于异常状态。
2.根据权利要求1所述的虚拟机异常预测方法,其特征在于,所述根据所述目标预测结果确定所述虚拟机是否处于异常状态包括:
在检测到所述目标预测结果等于第三预设阈值的情况下,则确定所述虚拟机在本次时间节点中处于正常工作状态。
3.根据权利要求1所述的虚拟机异常预测方法,其特征在于,在所述在检测到所述目标预测结果大于等于第一预设阈值的情况下,则确定所述虚拟机处于异常状态的步骤之后,所述方法包括:
向预设云平台反馈所述虚拟机的异常状态,以使所述预设云平台触发异常告警信息,其中,所述异常告警信息用于向提醒用户所述虚拟机当前处于异常状态。
4.根据权利要求1所述的虚拟机异常预测方法,其特征在于,所述虚拟机数据包括以下至少一种:
内存使用率、CPU使用率、网卡速率、磁盘读写速度以及磁盘时延。
5.根据权利要求1所述的虚拟机异常预测方法,其特征在于,所述预测指令包括预设采样单位和预设学习时长,所述预设学习时长中包括至少一个预设采样单位,所述根据所述预测指令获取所述虚拟机数据包括:
根据所述预测采样单位获取一个所述预设采样单位中全部所述虚拟机数据的平均值;
根据预设学习时长获取全部所述预设采样单位对应的所述虚拟机数据。
6.根据权利要求1所述的虚拟机异常预测方法,其特征在于,所述对所述虚拟机数据进行预处理,生成虚拟机预测数据包括:
根据预设时间滑窗和预设步长在所述虚拟机数据组成的多维数据中进行滑动处理,得到多个数组;
对每个所述数组中的一维虚拟机数据进行归一化处理,得到虚拟机预测数据。
7.根据权利要求6所述的虚拟机异常预测方法,其特征在于,所述对每个所述数组中的一维虚拟机数据进行归一化处理,得到虚拟机预测数据包括:
获取每个所述数组中的一维虚拟机数据中的最大值和最小值;
根据所述最大值和最小值进行归一化处理,得到虚拟机预测数据。
8.根据权利要求1所述的虚拟机异常预测方法,其特征在于,在所述接收用户发送的预测指令的步骤之前,所述方法包括:
接收用户发送的自学习指令;
根据所述自学习指令获取虚拟机数据;
对所述虚拟机数据进行预处理,生成虚拟机训练数据;
根据所述虚拟机训练数据和预设优化算法对第一初始预测模型、第二初始预测模型以及第三初始预测模型进行训练,分别生成第一预测模型、第二预测模型以及第三预测模型。
9.根据权利要求8所述的虚拟机异常预测方法,其特征在于,所述根据所述虚拟机训练数据和预设优化算法对第一初始预测模型、第二初始预测模型以及第三初始预测模型进行训练,分别生成第一预测模型、第二预测模型以及第三预测模型包括:
根据预设优化算法对所述第一初始预测模型中的第一预设参数进行优化处理,得到第一目标参数;
根据所述虚拟机训练数据和所述第一目标参数对所述第一初始预测模型进行训练,生成第一预测模型;以及,
根据预设优化算法对所述第二初始预测模型中的第二预设参数进行优化处理,得到第二目标参数;
根据所述虚拟机训练数据和所述第二目标参数对所述第二初始预测模型进行训练,生成第二预测模型;以及,
根据预设优化算法对所述第三初始预测模型中的第三预设参数进行优化处理,得到第三目标参数;
根据所述虚拟机训练数据和所述第三目标参数对所述第二初始预测模型进行训练,生成第三预测模型。
10.根据权利要求9所述的虚拟机异常预测方法,其特征在于,所述预设优化算法为SA-WOA算法,所述SA-WOA算法是基于SA算法生成预设扰动对WOA算法中的目标参数进行迭代优化,所述SA-WOA算法用于对所述第一初始预测模型、所述第二初始预测模型以及所述第三初始预测模型中分别对应的所述第一预设参数、所述第二预设参数以及所述第三预设参数进行优化。
11.根据权利要求9所述的虚拟机异常预测方法,其特征在于,所述第一预设参数为第一学习率以及第一初始预测模型隐含层的神经元个数,所述第二预设参数为储备池内部连接权谱半径和储备池输入单元尺度因子,所述第三预设参数为第三初始预测模型中间层的神经元个数和第二学习率。
12.根据权利要求8所述的虚拟机异常预测方法,其特征在于,在所述根据所述虚拟机训练数据和预设优化算法对第一初始预测模型、第二初始预测模型以及第三初始预测模型进行训练,分别生成第一预测模型、第二预测模型以及第三预测模型的步骤之后,所述方法包括:
将所述虚拟机训练数据输入至所述第一预测模型、所述第二预测模型以及所述第三预测模型,分别得到第一训练预测结果、第二训练预测结果以及第三训练预测结果;
根据所述第一训练预测结果、第二训练预测结果以及第三训练预测结果对初始异常分类模型进行训练,生成异常分类模型。
13.根据权利要求12所述的虚拟机异常预测方法,其特征在于,所述根据所述第一训练预测结果、第二训练预测结果以及第三训练预测结果对初始异常分类模型进行训练,生成异常分类模型包括:
将所述第一训练预测结果、第二训练预测结果以及第三训练预测结果分别与所述第一训练预测结果对应的真实结果、所述第二训练预测结果对应的真实结果以及所述第三训练预测结果对应的真实结果进行比对处理,得到第一偏差值、第二偏差值以及第三偏差值;
根据所述第一偏差值、所述第二偏差值以及所述第三偏差值与预设偏差阈值之间的关系确定所述初始异常分类模型的样本数据;
根据所述初始异常分类模型的样本数据对所述初始异常分类模型进行训练,生成异常分类模型。
14.根据权利要求13所述的虚拟机异常预测方法,其特征在于,所述根据所述第一偏差值、所述第二偏差值以及所述第三偏差值与预设偏差阈值之间的关系确定所述初始异常分类模型的样本数据包括:
在检测到所述第一偏差值、所述第二偏差值以及所述第三偏差值小于预设偏差阈值的情况下,将所述第一偏差值对应的第一训练预测结果、所述第二偏差值对应的第二训练预测结果以及所述第三偏差值对应的第三训练预测结果作为所述初始异常分类模型的样本数据。
15.根据权利要求13所述的虚拟机异常预测方法,其特征在于,在所述根据所述第一偏差值、所述第二偏差值以及所述第三偏差值与预设偏差阈值之间的关系确定所述初始异常分类模型的样本数据的步骤之后,所述方法包括:
将所述样本数据对应的标签设置为正样本标签。
16.根据权利要求1所述的虚拟机异常预测方法,其特征在于,所述预测指令包括虚拟机数量以及预设学习时长;
在所述接收用户发送的预测指令的步骤之后,所述方法包括:
根据所述虚拟机数量开启所述虚拟机数量对应的线程,其中,所述线程用于对所述虚拟机的性能以及负载数据进行监听,所述监听的持续时间为所述预设学习时长。
17.一种虚拟机异常预测装置,其特征在于,应用于预测检测机,所述虚拟机异常预测装置包括:
接收模块,用于接收用户发送的预测指令;
获取模块,用于根据所述预测指令获取虚拟机数据;
生成模块,用于对所述虚拟机数据进行预处理,生成虚拟机预测数据;
输入模块,用于将所述虚拟机预测数据输入至第一预测模型、第二预测模型以及第三预测模型,分别得到第一预测结果、第二预测结果以及第三预测结果,其中,所述第一预测模型、第二预测模型以及第三预测模型是基于预设优化算法生成的,所述预设优化算法用于对所述第一预测模型中的第一预设参数、第二预测模型中的第二预设参数以及第三预测模型中的第三预设参数进行优化;
分类模块,用于将所述第一预测结果、所述第二预测结果以及所述第三预测结果输入至异常分类模型,分别得到第一分类结果、第二分类结果以及第三分类结果;
异常检测模块,用于根据所述第一分类结果、所述第二分类结果以及所述第三分类结果确定所述虚拟机是否处于异常状态,包括:
将所述第一分类结果、所述第二分类结果以及所述第三分类结果分别对应的分值相加,得到目标预测结果;
根据所述目标预测结果确定所述虚拟机是否处于异常状态,包括:
在检测到所述目标预测结果大于等于第一预设阈值的情况下,则确定所述虚拟机处于异常状态;
在检测到所述目标预测结果等于第二预设阈值的情况下,则将所述目标预测结果记录在预设累加器中,并对所述虚拟机进行下次时间节点的异常检测;
若下次时间节点中所述虚拟机对应的第二目标预测结果大于等于所述第一预设阈值,则向用户发送告警信息;
若下次时间节点中所述虚拟机对应的所述第二目标预测结果小于所述第一预设阈值,则将所述第二目标预测结果记录在所述预设累加器中;
若所述预设累加器中的累计结果大于目标预设值,则确定所述虚拟机处于异常状态。
18.一种通信设备,其特征在于,包括:收发机、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;
所述处理器,用于读取存储器中的程序实现如权利要求1-16中任意一项所述虚拟机异常预测方法。
19.一种可读存储介质,用于存储程序,其特征在于,所述程序被处理器执行时实现如权利要求1-16中任意一项所述虚拟机异常预测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310905155.9A CN116661954B (zh) | 2023-07-21 | 2023-07-21 | 虚拟机异常预测方法、装置、通信设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310905155.9A CN116661954B (zh) | 2023-07-21 | 2023-07-21 | 虚拟机异常预测方法、装置、通信设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116661954A CN116661954A (zh) | 2023-08-29 |
CN116661954B true CN116661954B (zh) | 2023-11-03 |
Family
ID=87722624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310905155.9A Active CN116661954B (zh) | 2023-07-21 | 2023-07-21 | 虚拟机异常预测方法、装置、通信设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116661954B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118114955B (zh) * | 2024-04-29 | 2024-08-06 | 深圳市中科云科技开发有限公司 | 虚拟电厂的电力调度方法及相关设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020220437A1 (zh) * | 2019-04-29 | 2020-11-05 | 东北大学 | 一种基于AdaBoost-Elman的虚拟机软件老化预测方法 |
CN112882795A (zh) * | 2021-02-25 | 2021-06-01 | 深信服科技股份有限公司 | 虚拟机异常诊断方法、装置、设备及存储介质 |
CN112906727A (zh) * | 2019-12-04 | 2021-06-04 | 中国电信股份有限公司 | 用于实时在线检测虚拟机状态的方法和系统 |
CN114003422A (zh) * | 2021-10-22 | 2022-02-01 | 济南浪潮数据技术有限公司 | 主机异常检测方法、计算机设备和存储介质 |
CN115225536A (zh) * | 2022-06-17 | 2022-10-21 | 上海仪电(集团)有限公司中央研究院 | 一种基于无监督学习的虚拟机异常检测方法及系统 |
CN115309510A (zh) * | 2022-08-25 | 2022-11-08 | 深信服科技股份有限公司 | 虚拟机运行状态的检测方法及装置、设备、存储介质 |
-
2023
- 2023-07-21 CN CN202310905155.9A patent/CN116661954B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020220437A1 (zh) * | 2019-04-29 | 2020-11-05 | 东北大学 | 一种基于AdaBoost-Elman的虚拟机软件老化预测方法 |
CN112906727A (zh) * | 2019-12-04 | 2021-06-04 | 中国电信股份有限公司 | 用于实时在线检测虚拟机状态的方法和系统 |
CN112882795A (zh) * | 2021-02-25 | 2021-06-01 | 深信服科技股份有限公司 | 虚拟机异常诊断方法、装置、设备及存储介质 |
CN114003422A (zh) * | 2021-10-22 | 2022-02-01 | 济南浪潮数据技术有限公司 | 主机异常检测方法、计算机设备和存储介质 |
CN115225536A (zh) * | 2022-06-17 | 2022-10-21 | 上海仪电(集团)有限公司中央研究院 | 一种基于无监督学习的虚拟机异常检测方法及系统 |
CN115309510A (zh) * | 2022-08-25 | 2022-11-08 | 深信服科技股份有限公司 | 虚拟机运行状态的检测方法及装置、设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116661954A (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110113226B (zh) | 一种检测设备异常的方法及装置 | |
WO2021179574A1 (zh) | 根因定位方法、装置、计算机设备和存储介质 | |
WO2021213247A1 (zh) | 一种异常检测方法及装置 | |
US8185781B2 (en) | Invariants-based learning method and system for failure diagnosis in large scale computing systems | |
CN111309539A (zh) | 一种异常监测方法、装置和电子设备 | |
CN116661954B (zh) | 虚拟机异常预测方法、装置、通信设备及存储介质 | |
CN112685324B (zh) | 一种生成测试方案的方法及系统 | |
CN111625516A (zh) | 检测数据状态的方法、装置、计算机设备和存储介质 | |
CN112951311A (zh) | 一种基于变权重随机森林的硬盘故障预测方法及系统 | |
CN113409016A (zh) | 应用于大数据云办公的信息处理方法、服务器及介质 | |
CN114816962A (zh) | 基于attention-lstm的网络故障预测方法 | |
CN117971921B (zh) | 基于apriori算法检测客户异常操作的方法及系统 | |
CN113918438A (zh) | 服务器异常的检测方法、装置、服务器及存储介质 | |
CN110716761A (zh) | 信息处理平台上软件应用的执行参数的自动和自优化确定 | |
CN113282920A (zh) | 日志异常检测方法、装置、计算机设备和存储介质 | |
Li et al. | Logspy: System log anomaly detection for distributed systems | |
CN117411780A (zh) | 一种基于多源数据特征的网络日志异常检测方法 | |
CN117370548A (zh) | 用户行为风险识别方法、装置、电子设备及介质 | |
CN111783883A (zh) | 一种异常数据的检测方法及装置 | |
CN114756401B (zh) | 基于日志的异常节点检测方法、装置、设备及介质 | |
CN114202110B (zh) | 一种基于rf-xgboost的业务故障预测方法及装置 | |
CN113535458B (zh) | 异常误报的处理方法及装置、存储介质、终端 | |
CN116069606A (zh) | 一种软件系统性能故障预测方法及系统 | |
JP7287481B2 (ja) | 閾値取得装置、その方法、およびプログラム | |
CN115242457A (zh) | 一种日志数据的检测方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |