论文部分内容阅读
在阿里云对象存储Object Storage Servic(OSS)服务器运营维护工作中,人工运维、规则化异常检测依然占据主流,异常检测场景的多样性促使代码开发管理任务繁重,服务器集群的动态变化和调整、区域阈值设定及人工调参的运维方法使得运维任务繁重,运维人员分身乏力,所以需要一种更智能化的异常检测系统伴随服务器集群的动态发展,以保障业务稳定,提高运维效率。本文使用时序数据挖掘技术构建了XGBOOST-Quartile-LOF异常检测方法,该方法主要思路为基于时序数据预测结果进行异常检测;在选择预测方法过程中,对Long Short-Term Memory(LSTM)、Gate Recurrent Unit(GRU)、e Xtreme Gradient Boosting(XGBOOST)方法进行了横向和纵向对比,优化各预测模型的关键参数后,根据预测效果和性能最终确定了XGBOOST预测方法;在预测值原始值的差值绝对值基础上,对多种单一检测方法分别进行了参数优化和数据测试,并通过理论分析和实验对比构建了双层过滤检测方法Quartile-LOF,该检测方法具备良好的检测效果和性能,拥有接近于Quartile的检测性能,同时也具备了Local Outlier Factor(LOF)局部和全局的异常捕获能力,提高了异常检测的精确率以及综合效果。基于XGBOOST-Quartile-LOF异常检测方法,针对在阿里云对象存储(OSS)运维中遇到的实际问题,本文设计并实现了服务器指标异常检测系统;该系统使用阿里云日志服务Simple Log Service(SLS)存储服务器采集数据、压缩后数据、预测数据及异常数据,使用阿里云大数据计算平台Flink作为日志数据规整化计算引擎,使用Python开发指标预测和异常检测模块,使用钉钉智能机器人API和电话通知作为异常分级通知告警方式;该系统数据存储与计算分离,模块之间独立性强,数据易于检索和可视化,可用性与移植性强;通过公开数据集对系统进行测试,结果表明该服务器异常检测系统能够稳定运行,预测和检测效果均达到预期,证明该服务器指标异常检测系统设计合理,能够在有效检出异常的同时提高运维效能,且已在OSS服务器运维工作中上线运行。