云系统异常检测背景
随着云技术的飞速发展,云系统的复杂性和规模不断增加,云系统的稳定性受到了极大挑战。为了解决运维问题,运营商会通过指标(Metrics)、日志(Logs)等多个维度信息来了解云系统的运行状态。
本文介绍的方法是通过分析系统指标(如CPU 使用率、I/O 请求数、网络吞吐量等)对云系统进行异常检测。
对于这些指标数据,研究人员提出了单变量的时间序列异常检测方法。但随着云系统复杂性的增加,运维人员可以收集的指标越来越多,该方法往往无法反映云系统整体的异常情况。
基于此种情况,研究人员又提出了多元时间序列异常检测,这种方法虽然考虑了云系统中多个指标,但没有将云系统中的组织结构考虑进来,适用性也不太好。
在复杂的云系统中我们以系统拓扑结构为基础,获得系统状态的基于图的表示,进而进行异常检测。随着深度神经网络的迅速发展,研究人员提出了基于深度学习的异常检测方法,将图神经网络与RNN和CNN一起应用来同时考虑空间和时间关系,对云系统中数据以及拓扑结构进行建模。
01. 常用的异常检测方法
1. 传统异常检测方法
● 静态阈值:原指标超过阈值即异常。
● 3sigma:计算当前值是否偏离历史均值且偏离程度达3个标准差。
● 基于分类的方法,例如支持向量机。
● 基于最邻近方法,例如局部异常因子。
2