摘要
伴随着Docker等虚拟化容器技术的逐渐成熟,因其可扩展性、灵活性等特点与微服务架构完美契合,工业界逐渐将微服务架构应用部署在基于容器的云环境下,并用Kubernetes等容器编排工具来管理应用的全生命周期。在这样复杂的微服务架构下,如何使用人工智能技术高效发现异常并且定位根因成为重中之重。首先,文章总结了在微服务系统环境下进行异常检测和根因定位所面临的主要挑战和现有的关键技术;然后,针对现有技术异常检测覆盖范围不全面的问题,文章提出了一种基于无监督学习的多维度的异常检测方法,在调用链Trace数据的基础上结合服务和机器资源利用数据进行综合分析,确保能够检测出服务响应时间异常的同时,也能够识别服务资源利用异常和环境异常;最后,在异常已知的情况下,为了减少根因定位时间,拓展定位范围和缩小粒度,文章提出了一种轻量的基于异常传播子图的方法,将服务接口和机器节点两种维度的数据统一到异常传播子图中进行根因定位。实验表明,文章所提方法与已有方法相比,定位时间更短,不仅拓宽了根因定位场景,而且准确率也有明显提升。
-
单位中国科学院信息工程研究所; 中国科学院大学