微服务架构监控系统技术方案

技术编号:19067358 阅读:23 留言:0更新日期:2018-09-29 14:43
本发明专利技术提出了一种微服务架构监控系统,包括1个或多个功能服务器,每个功能服务器都与1个或多个节点服务器、1个或多个功能服务器入口进行数据通信;首先在功能服务器中部署zabbix监控系统,另外通过每个功能服务器中埋入1个或多个节点服务器,利用日志收集器收集zabbix监控系统以及HTTP请求在各服务节点产生的信息,并放入elastic‑search系统中进行监控。本发明专利技术能够对所有的微服务器进行统一管理和统一监控,通过动态拓扑图的方式,使监控系统有很强的可视化效果,当系统出现问题时,可以直接看到故障所在位置。

【技术实现步骤摘要】
微服务架构监控系统
本专利技术涉及服务器
,特别涉及一种微服务架构监控系统。
技术介绍
目前市场上也存在着一部分为微服务架构专门开发的监控系统,但是由于微服务架构刚刚势起,现有的监控系统并不成熟,并不能很好的实现对公司内微服务系统的统一监控管理。微服务的特点决定了功能模块的部署是分布式的,以往在单应用环境下,所有的业务都在同一个服务器上,如果服务器出现错误和异常,我们只要盯住一个点,就可以快速定位和处理问题,但是在微服务的架构下,大部分功能模块都是单独部署运行的,彼此通过总线交互,都是无状态的服务,这种架构下,前后台的业务流会经过很多个微服务的处理和传递。现有的微服务监控系统,主要存在以下方面不足。一、不能对微服务系统进行统一的、规范化的管理。二、没有可视化的拓扑图。三、没有可视化的从入到出的服务调用关系图。四、没有快速查找服务的上下游节点调用关系和调用效率。
技术实现思路
本专利技术的目的旨在至少解决所述技术缺陷之一。为此,本专利技术的目的在于提出一种微服务架构监控系统,能够提供可视化的拓扑图,快速查找服务的上下游节点调用关系和调用效率。为了实现上述目的,本专利技术提供一种微服务架构监控系统,包括1个或多个功能服务器,每个功能服务器都与1个或多个节点服务器、1个或多个功能服务器入口进行数据通信;首先在功能服务器中部署zabbix监控系统,另外通过每个功能服务器中埋入1个或多个节点服务器,利用日志收集器收集zabbix监控系统的信息,并放入elastic-search系统中进行监控;当任一个功能服务器入口或多个功能服务器入口接收到来自外部的HTTP请求,并生成入口信息,HTTP请求首先到达该功能服务器入口对应的功能服务器,通过其对应的功能服务器的负载均衡功能将HTTP请求分发到此次服务对应的一个或多个节点上,并依次进行HTTP请求;在HTTP请求到达节点时,由该节点的节点服务器判断是否为此次调用的第一个节点,如果是第一个节点,则由该节点的节点服务器分配一个全局唯一标识,然后再分配该节点内部的唯一标识,最后再分配顺序标识;如果不是第一个节点,则由该节点的节点服务器直接分配该节点的内部的唯一标识,之后再分配一个顺序标识;HTTP请求结束后,在各个节点产生所有行为、数据、日志都会带有相应标识,并由日志收集器收集;日志收集器将信息进行分级分批处理在不同维度展示,生成拓扑图;日志收集器对各个节点的存活监控,通过python开发的程序向各节点发送心跳请求,监控节点存活状态.进一步的,使用zabbix监控系统进行所有服务器的硬件资源进行监控,配合拓扑图使用,能够随时查看各节点服务器的资源使用情况,以便快速的发现和解决问题,合理的管理和分配硬件服务器资源。进一步的,通过功能服务器和elastic-search系统中收集的信息使用h5中的canvas标签进行拓扑图构建,以便对软件系统中所有应用节点、服务和服务间的调用关系进行可视化监控。进一步的,进行可视化监控的主要监控指标至少包括各节点的存活监控、服务的存活监控、服务的调用链关系、服务的版本信息、服务内部信息、定时任务的执行情况、服务的执行效率中的一种或多种。进一步的,还包括流式处理模块,通过数据挖据,利用优秀的数据分析能力和数据模型,进行数据预测,以及统计报表功能。进一步的,HTTP请求产生的行为、数据、日志会通过Redis、Kafka、ELK、ALIRDS按照分配的标识进行多纬度分类管理,通过对应的标识获取对应的行为、数据和日志信息。进一步的,所述功能服务器入口还接收来自其他功能服务器出口的数据,其他功能服务器出口的数据来自于其他功能服务器,其他功能服务器中也部署zabbix监控系统,另外通过在其他功能服务器中埋入1个或多个其他节点服务器。进一步的,当其他节点服务器接收到外部的HTTP请求后,由该节点的其他节点服务器判断是否为此次调用的第一个节点,如果是第一个节点,则由该节点的其他节点服务器分配一个全局唯一标识,然后再分配该节点内部的唯一标识,最后再分配顺序标识;如果不是第一个节点,则由该节点的其他节点服务器直接分配该节点的内部的唯一标识,之后再分配一个顺序标识;然后被标记的HTTP请求进入到对应的其他功能服务器,由其他功能服务器出口分发出去,由功能服务器入口接收。进一步的,被标记的HTTP请求被其他功能服务器出口分发出去后,在各个节点产生所有行为、数据、日志都会带有相应标识,并由其他功能服务器的日志收集器收集。进一步的,其他功能服务器的日志收集器进行分级分批处理在不同维度展示,生成其他功能服务器的拓扑图。本专利技术的微服务架构监控系统具有以下有益效果:1、本专利技术能够对所有的微服务器进行统一管理和统一监控,通过动态拓扑图的方式,使监控系统有很强的可视化效果,当系统出现问题时,可以直接看到故障所在位置。2、本专利技术通过在HTTP请求进入到不同节点服务器时进行标记,标记全局唯一标识、节点内部的唯一标识、顺序标识等,然后通过这些标识来记录HTTP请求从入到出的整个调用过程的路径,然后由将信息进行分级分批处理在不同维度展示,生成拓扑图,监控了微服务器集群系统中的服务间的多级调用关系,可以直接看到从入到出的整个调用过程。3、本专利技术通过可视化拓补图可以快速查看一个服务节点相关的所有上下游节点调用关系及调用效率。4、本专利技术可以通过这些标识可以将HTTP请求的路径进行可视化,进而形成秒级监控的流式数据处理功能。本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1为本专利技术的工作流程图;图2为本专利技术的HTTP请求访问流程示意图;图3为本专利技术的可视化拓扑图。具体实施方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。本专利技术提供一种微服务架构监控系统,参考附图1-3所示,包括1个或多个功能服务器,每个功能服务器都与1个或多个节点服务器、1个或多个功能服务器入口进行数据通信。步骤S1,接受外部HTTP请求;在功能服务器中部署zabbix监控系统,另外通过每个功能服务器中埋入1个或多个节点服务器,利用日志收集器收集zabbix监控系统的信息,并放入elastic-search系统中进行监控,由任一个功能服务器入口或多个功能服务器入口接收到来自外部的HTTP请求。HTTP请求产生的行为、数据、日志会通过Redis、Kafka、ELK、ALIRDS按照分配的标识进行多纬度分类管理,通过对应的标识获取对应的行为、数据和日志信息。步骤S2,生成此次调用的全局唯一标识,并添加入口信息;当任一个功能服务器入口或多个功能服务器入口接收到来自外部的HTTP请求后生成入口信息,HTTP请求首先到达该功能服务器入口对应的功能服务器,通过其对应的功能服务器的负载均衡功能将HTTP请求分发到此次服务对应的一个或多个节点上,并依次进行HTTP请求。步骤S3,调用过程中生成项目标识和顺序标识;在HTT本文档来自技高网...

【技术保护点】
1.一种微服务架构监控系统,其特征在于,包括1个或多个功能服务器,每个功能服务器都与1个或多个节点服务器、1个或多个功能服务器入口进行数据通信;首先在功能服务器中部署zabbix监控系统,另外通过每个功能服务器中埋入1个或多个节点服务器,利用日志收集器收集zabbix监控系统的信息,并放入elastic‑search系统中进行监控;当任一个功能服务器入口或多个功能服务器入口接收到来自外部的HTTP请求后,并生成入口信息,HTTP请求首先到达该功能服务器入口对应的功能服务器,通过其对应的功能服务器的负载均衡功能将HTTP请求分发到此次服务对应的一个或多个节点上,并依次进行HTTP请求;在HTTP请求到达节点时,由该节点的节点服务器判断是否为此次调用的第一个节点,如果是第一个节点,则由该节点的节点服务器分配一个全局唯一标识,然后再分配该节点内部的唯一标识,最后再分配顺序标识;如果不是第一个节点,则由该节点的节点服务器直接分配该节点的内部的唯一标识,之后再分配一个顺序标识;HTTP请求结束后,在各个节点产生所有行为、数据、日志都会带有相应标识,并由日志收集器收集;日志收集器将信息进行分级分批处理在不同维度展示,生成拓扑图;日志收集器对各个节点的存活监控,通过python开发的程序向各节点发送心跳请求,监控节点存活状态。...

【技术特征摘要】
1.一种微服务架构监控系统,其特征在于,包括1个或多个功能服务器,每个功能服务器都与1个或多个节点服务器、1个或多个功能服务器入口进行数据通信;首先在功能服务器中部署zabbix监控系统,另外通过每个功能服务器中埋入1个或多个节点服务器,利用日志收集器收集zabbix监控系统的信息,并放入elastic-search系统中进行监控;当任一个功能服务器入口或多个功能服务器入口接收到来自外部的HTTP请求后,并生成入口信息,HTTP请求首先到达该功能服务器入口对应的功能服务器,通过其对应的功能服务器的负载均衡功能将HTTP请求分发到此次服务对应的一个或多个节点上,并依次进行HTTP请求;在HTTP请求到达节点时,由该节点的节点服务器判断是否为此次调用的第一个节点,如果是第一个节点,则由该节点的节点服务器分配一个全局唯一标识,然后再分配该节点内部的唯一标识,最后再分配顺序标识;如果不是第一个节点,则由该节点的节点服务器直接分配该节点的内部的唯一标识,之后再分配一个顺序标识;HTTP请求结束后,在各个节点产生所有行为、数据、日志都会带有相应标识,并由日志收集器收集;日志收集器将信息进行分级分批处理在不同维度展示,生成拓扑图;日志收集器对各个节点的存活监控,通过python开发的程序向各节点发送心跳请求,监控节点存活状态。2.如权利要求1所述的微服务架构监控系统,其特征在于:使用zabbix监控系统进行所有服务器的硬件资源进行监控,配合拓扑图使用,能够随时查看各节点服务器的资源使用情况,以便快速的发现和解决问题,合理的管理和分配硬件服务器资源。3.如权利要求1所述的微服务架构监控系统,其特征在于:通过功能服务器和elastic-search系统中收集的信息使用h5中的canvas标签进行拓扑图构建,以便对软件系统中所有应用节点、服务和服务间的调用关系进行可视化监控。4.如权利要求3所述的微服务架构监控系统...

【专利技术属性】
技术研发人员:张继超
申请(专利权)人:深圳光华普惠科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1