统一监控平台方案一、背景公司软件系统、硬件繁多,没有进行统一管理和监控,急需一个统一的监控系统进行全盘监控和管理进行系统故障预警和告警,保障系统健康稳定运行
如今的服务通常由很多不同系统模块组成,他们之间相互调用并通过API调用外部服务
每个交互是如何被执行的通常是一个黑盒
怎样跟踪和监控这些模块之间的调用流并提供清晰的视图来定位问题区域和潜在瓶颈
如何能够在多个系统同时异常时,快速定位到异常的根源
二、总体方案1
监控内容各个系统日志监控、方法监控、JVM监控、中间件监控、中间件监控(ZK、ES、Kafka)、数据库监控、硬件监控(服务器等)2
技术选型Flume+Kafka+Spark+Elasticsearch+自研UI埋点+pinpoint+zipkin支持3
监控项目版本划分V1
1:实现日志收集,检索和分析功能V1
2:实现硬件资源管理V1
3:实现方法调用跟踪V1
4:实现调用链路跟踪4
监控平台架构图f日志监控系统应用异常监控(method调用异常)应用性能监控中间件监控(zk、es、kafka)告警E埋点PinpoiZipKiSparKafkaFlum统一监控平方法调用监RestAPIhealth接口特殊组件监控;硬件监JVM监日志监各个子系统(业务日志、系统应用组件、JVM
)告警系统:针对监控的数据进行异常告警(mail、短信等方式)5
云化监控平台设想5
1目前有很多系统或者应用都是虚拟机应用,云容器应用是后期发展趋势,企业私有云能够帮助企业实现节约项目实施成本
目前设计的监控平台为了兼容云应用系统,需要考虑云统一监控系统方案
目前主流的云平台采用kubernetes+docker技术实现
Kubenetes实现对docker容器的统一管理和调度以及编排操作,统一监控平台怎样去支持云平台应用的监控
SparkRDD(coreKafkaf>Kafk