9.17commit version2
注:微服务部分组件出现异常时,用户访问情况的逻辑视图
本项目旨在容器化的微服务应用环境中,构建一套具备实时监控、精准检测与根因分析能力的异常监控系统。随着云计算与大数据技术的发展,微服务架构因灵活扩展、高度解耦、便于协作的特性成为大型应用开发部署的主流选择,但也面临着诸多挑战:分布式架构可能引发连锁故障风险,某个服务的微小异常可能沿调用链扩散,影响系统整体稳定性。
传统监控手段聚焦单一服务或服务器指标,缺乏全局视角且依赖固定阈值,易出现误报或漏报,难以适应复杂环境;同时,突发访问高峰、硬件故障等不确定性因素也随时可能导致微服务异常。
基于这些背景,本系统通过三个核心模块协同运作形成完整闭环:
该系统能够提高微服务应用的安全性,及时发现潜在安全风险;助力异常响应与排除,加快问题解决速度;满足金融、医疗等行业的合规性和审计需求,同时在防范重大安全事件、提升业务连续性等方面具有重要意义,为微服务应用的稳定运行提供有力保障。
Kubernetes云原生计算底座:
本项目的监控数据采集模块、异常注入模块、Train Ticket微服务实例部署都是基于Kubernetes云原生计算底座的,负责为各个模块提供计算资源。
监控数据采集模块:
包含Trace数据采集模块、Logs采集模块、基于eBPF的Metrics指标采集模块,分别用于收集微服务的调用链数据、微服务的日志数据以及集群设施、微服务的资源占用、网络延迟、服务可达性、容器调用等指标数据。为后续的基于深度学习的异常检测、基于多模态融合的根因分析提供数据来源。
异常注入模块:
负责为Train Ticket微服务实例注入如网络延迟异常、资源耗尽异常、服务镜像异常等多种不同的异常,以产生不同的异常数据。为后续异常检测模型训练、多模态融合根因分析提供异常数据来源。
基于深度学习的异常检测模块:
包含两个部分,分别是指标筛选算法模块与异常检测模块;指标筛选算法用于将监控数据采集模块收集到的众多Metrics指标进行筛选以达到提高异常检测效率的同时降低异常检测的计算开销和时间开销。异常检测模块则使用指标筛选算法筛选后的指标进行异常检测,得出二元异常检测结果,并交给多模态根因分析模块,以进一步故障诊断。
多模态融合的根因分析模块:
该模块使用监控数据采集模块收集到的三种模态的数据,分别对三种模态数据进行特征提取、模态融合,最终进行故障诊断,找到异常的根因。
压力测试模块:
该模块使用开源工具Locust实现,用于模仿实际应用中用户对微服务的访问请求。
监控可视化与异常检测前端模块:
该模块是我们自主开发的一个将监控数据采集模块中部分指标与异常检测的结果进行集成显示的一个前端界面。
网络延迟异常演示
服务镜像异常
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
面向微服务基准的Trace监控数据采集与异常检测工具
项目背景
注:微服务部分组件出现异常时,用户访问情况的逻辑视图
项目简介
本项目旨在容器化的微服务应用环境中,构建一套具备实时监控、精准检测与根因分析能力的异常监控系统。随着云计算与大数据技术的发展,微服务架构因灵活扩展、高度解耦、便于协作的特性成为大型应用开发部署的主流选择,但也面临着诸多挑战:分布式架构可能引发连锁故障风险,某个服务的微小异常可能沿调用链扩散,影响系统整体稳定性。
传统监控手段聚焦单一服务或服务器指标,缺乏全局视角且依赖固定阈值,易出现误报或漏报,难以适应复杂环境;同时,突发访问高峰、硬件故障等不确定性因素也随时可能导致微服务异常。
基于这些背景,本系统通过三个核心模块协同运作形成完整闭环:
该系统能够提高微服务应用的安全性,及时发现潜在安全风险;助力异常响应与排除,加快问题解决速度;满足金融、医疗等行业的合规性和审计需求,同时在防范重大安全事件、提升业务连续性等方面具有重要意义,为微服务应用的稳定运行提供有力保障。
系统架构
Kubernetes云原生计算底座:
本项目的监控数据采集模块、异常注入模块、Train Ticket微服务实例部署都是基于Kubernetes云原生计算底座的,负责为各个模块提供计算资源。
监控数据采集模块:
包含Trace数据采集模块、Logs采集模块、基于eBPF的Metrics指标采集模块,分别用于收集微服务的调用链数据、微服务的日志数据以及集群设施、微服务的资源占用、网络延迟、服务可达性、容器调用等指标数据。为后续的基于深度学习的异常检测、基于多模态融合的根因分析提供数据来源。
异常注入模块:
负责为Train Ticket微服务实例注入如网络延迟异常、资源耗尽异常、服务镜像异常等多种不同的异常,以产生不同的异常数据。为后续异常检测模型训练、多模态融合根因分析提供异常数据来源。
基于深度学习的异常检测模块:
包含两个部分,分别是指标筛选算法模块与异常检测模块;指标筛选算法用于将监控数据采集模块收集到的众多Metrics指标进行筛选以达到提高异常检测效率的同时降低异常检测的计算开销和时间开销。异常检测模块则使用指标筛选算法筛选后的指标进行异常检测,得出二元异常检测结果,并交给多模态根因分析模块,以进一步故障诊断。
多模态融合的根因分析模块:
该模块使用监控数据采集模块收集到的三种模态的数据,分别对三种模态数据进行特征提取、模态融合,最终进行故障诊断,找到异常的根因。
压力测试模块:
该模块使用开源工具Locust实现,用于模仿实际应用中用户对微服务的访问请求。
监控可视化与异常检测前端模块:
该模块是我们自主开发的一个将监控数据采集模块中部分指标与异常检测的结果进行集成显示的一个前端界面。
系统功能
技术创新
赛题完成情况
演示Demo
网络延迟异常演示
服务镜像异常