CN105573824A - 分布式计算系统的监控方法及系统 - Google Patents

分布式计算系统的监控方法及系统 Download PDF

Info

Publication number
CN105573824A
CN105573824A CN201410531211.8A CN201410531211A CN105573824A CN 105573824 A CN105573824 A CN 105573824A CN 201410531211 A CN201410531211 A CN 201410531211A CN 105573824 A CN105573824 A CN 105573824A
Authority
CN
China
Prior art keywords
calculation task
node
sub
distributed computing
computing system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410531211.8A
Other languages
English (en)
Other versions
CN105573824B (zh
Inventor
庄广安
纪塔山
雷小平
林钊航
李斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201410531211.8A priority Critical patent/CN105573824B/zh
Publication of CN105573824A publication Critical patent/CN105573824A/zh
Application granted granted Critical
Publication of CN105573824B publication Critical patent/CN105573824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种分布式计算系统的监控方法及系统,所述方法包括以下步骤:获取分布式计算系统的各个节点处理子计算任务后上报的子任务执行状态信息,包括节点的身份标识信息、子计算任务的来源节点信息、子计算任务的目的节点信息以及各个子计算任务的执行状态;根据节点的身份标识信息、子计算任务的来源节点信息以及子计算任务的目的节点信息获取各个节点的关联关系;根据所述各个子计算任务的执行状态以及各个节点的关联关系,生成总计算任务在所述分布式计算系统中的计算拓扑状态,其中,所述总计算任务包含所述各个子计算任务。本发明可以直观地展示出计算拓扑每一个节点的执行情况以及各节点间的依赖关系,提高了问题处理的效率。

Description

分布式计算系统的监控方法及系统
技术领域
本发明涉及分布式计算领域,特别是涉及一种分布式计算系统的监控方法,以及一种分布式计算系统的监控系统。
背景技术
现有分布式计算系统根据时效性可分为离线分布式计算系统和在线分布式计算系统两类。离线分布式计算系统采用批处理方式来处理计算复杂度高、数据量大的计算,适合对时效性要求相对较低的应用;在线分布式计算系统时效性较高,这也限制了在线系统可以处理的数据量及计算的复杂度。
目前,离线分布式计算系统以阿帕奇(Apache)开源项目Hadoop为典型,其采用映射-化简(即Map-Reduce)计算框架,将离线计算划分为Map和Reduce两个阶段:Map阶段分块并行处理计算任务,Reduce阶段归并处理Map阶段计算结果。Map-Reduce计算任务提交后,任务跟踪模块将任务放入等待队列,调度器根据任务分片信息分配Map和Reduce,子计算跟踪进程调起Map和Reduce计算任务,并且定时向任务跟踪模块上报计算进度,任务跟踪模块会将计算失败或者超时的子计算重调。在网页交互界面能够方便的看到Map/Reduce的运行进度及运行状态。
另外,在线分布式计算系统以推特(Twitter)公司开发的Storm系统为典型。使用Storm系统的应用开发者只需要专注于将应用本身的计算逻辑开发为计算拓扑,拓扑的每一个分支承担部分计算逻辑。开发好的计算拓扑提交到Storm后,Storm提供计算拓扑中计算分支的调度、网络通讯、容错、容灾等框架相关功能。Storm计算框架和Map-Reduce计算框架比较明显的两点差异:实时计算和支持多层计算拓扑,这两点差异导致了Storm对计算任务运行情况的上报需要针对以上两点重点处理。首先在Storm中会对计算拓扑每一个分支的消息吞吐量进行统计;同时Storm还提供了时间窗口,计算在不同时间窗口内处理的进入系统内的请求数。应用计算拓扑的相关状态都可以在Storm的网页交互界面中查找到。
经过研究发现,Hadoop系统中Map-Reduce计算任务状态的上报和展示已经非常完善,但是它主要用于两层离线分布式的计算任务的上报和展示,不适用更多层次和分支的离线计算;而Storm系统中任务运行状态的上报,在通过网页交互界面查看每一个计算分支的执行情况时并不是十分直观,无法直接通过网页交互界面的展示内容分辨出计算分支间的依赖关系,这样一来,当某一个计算分支的业务出现问题时,将不能快速定位出现问题的根源,这对实时性要求很高的在线分布式计算系统来说无疑是非常不利的。
发明内容
基于此,本发明提供一种分布式计算系统的监控方法及系统,能够直观展示分布式计算系统中各节点间的依赖关系,以便快速定位出现问题的根源。
为实现上述目的,本发明采用如下的技术方案:
一种分布式计算系统的监控方法,包括以下步骤:
获取分布式计算系统的各个节点处理子计算任务后上报的子任务执行状态信息,其中,所述子任务执行状态信息包括节点的身份标识信息、子计算任务的来源节点信息、子计算任务的目的节点信息以及各个子计算任务的执行状态;
根据节点的身份标识信息、子计算任务的来源节点信息以及子计算任务的目的节点信息获取各个节点的关联关系;
根据所述各个子计算任务的执行状态以及各个节点的关联关系,生成总计算任务在所述分布式计算系统中的计算拓扑状态,其中,所述总计算任务包含所述各个子计算任务。
一种分布式计算系统的监控系统,包括:
信息接收模块,用于获取分布式计算系统的各个节点处理子计算任务后上报的子任务执行状态信息,其中,所述子任务执行状态信息包括节点的身份标识信息、子计算任务的来源节点信息、子计算任务的目的节点信息以及各个子计算任务的执行状态;
关联模块,用于根据节点的身份标识信息、子计算任务的来源节点信息以及子计算任务的目的节点信息获取各个节点的关联关系;
状态获取模块,用于根据所述各个子计算任务的执行状态以及各个节点的关联关系,生成总计算任务在所述分布式计算系统中的计算拓扑状态,其中,所述总计算任务包含所述各个子计算任务。
由以上方案可以看出,本发明的一种分布式计算系统的监控方法及系统,接收分布式计算系统中各节点处理子计算任务后上报的子任务执行状态信息,并根据节点的身份标识信息、节点的子计算任务的来源节点信息和目的节点信息获取各个节点的关联关系,然后根据所述各个子计算任务的执行状态以及各个节点的关联关系来生成整个总计算任务在所述分布式计算系统中的计算拓扑状态,这样就可以直观地展示出计算拓扑每一个计算节点的执行情况以及各计算节点间的依赖关系,以便于当某个应用出现问题时可以快速定位出现问题的机器和计算节点,极大地提高了问题处理的效率。
附图说明
图1是本发明实施例中分布式计算系统的监控方法的一种实施环境的结构示意图;
图2是本发明的分布式计算系统的监控方法一个实施例的流程示意图;
图3为一种分布式计算拓扑的逻辑图;
图4为本发明分布式计算方法中生成总计算任务的计算拓扑状态的步骤流程图;
图5为本发明分布式计算系统的监控系统一个实施例的结构示意图;
图6为本发明分布式计算系统的监控系统一个实施例中任务跟踪模块的结构示意图;
图7为本发明分布式计算系统的监控系统一个实施例中查询模块的结构示意图;
图8为本发明分布式计算系统的监控系统另一个实施例的结构示意图;
图9所示为本发明分布式计算系统的监控系统的一种应用例。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,图1是本发明实施例中分布式计算系统的监控方法的一种实施环境的结构示意图。
图1所示实施环境用于实现本发明任意实施例或实施方式所述的分布式计算系统监控方法,包括服务器100、展示终端120、分布式计算系统140及其中的若干个节点160;所述服务器100与展示终端120、分布式计算系统140及节点160之间可以通过无线网络或有线网络进行连接。
其中,本发明实施例中的服务器100,可跟踪进入分布式计算系统的每一个计算任务对应的计算拓扑的执行情况,并根据需要发送给展示终端120进行展示。
展示终端120可直观地展示出分布式计算系统140的计算拓扑中的每一个节点的执行情况以及各节点间的关联关系,以便于当某个应用出现问题时可以快速定位出现问题的机器和节点。所述展示终端120可以包括智能手机、台式机、笔记本、个人数字助理、平板电脑等终端设备中的至少一种,并且至少装设有用于显示分布式计算系统监控结果的显示单元和通信模块。其中,显示单元可用于显示由用户输入的信息或提供给用户的信息以及各种菜单;通信模块可以实现与服务器100之间的通信,该通信模块可以采用任何可能的方式实现,例如WiFi模块、蓝牙通信、光纤通信等等,通过通信模块实现了展示终端120与服务器100之间的通信,从而使得展示终端120能够向服务器100发送网页交互界面的相关请求,并接收由服务器100返回的相关计算拓扑状态信息。
分布式计算系统140的节点160,在处理每一个子计算任务时向服务器100上报相关的子任务执行状态信息。
请参阅图2,图2是本发明的一种分布式计算系统的监控方法一个实施例的流程示意图。
本实施方式所述的一种分布式计算系统的监控方法,包括以下步骤:
步骤S101,获取分布式计算系统的各个节点处理子计算任务后上报的子任务执行状态信息,其中,所述子任务执行状态信息包括节点的身份标识信息、子计算任务的来源节点信息、子计算任务的目的节点信息以及各个子计算任务的执行状态;
步骤S102,根据节点的身份标识信息、子计算任务的来源节点信息以及子计算任务的目的节点信息获取各个节点的关联关系;
步骤S103,根据所述各个子计算任务的执行状态以及各个节点的关联关系,生成总计算任务在所述分布式计算系统中的计算拓扑状态,其中,所述总计算任务包含所述各个子计算任务。
在步骤S101中,服务器100可获取分布式计算系统140的各个节点160处理子计算任务后上报的子任务执行状态信息。每个接入到分布式计算系统140的应用,它都具有特定的计算拓扑。分布式计算系统140会处理所接收到的实时计算任务,通过调度计算拓扑的计算分支,将子计算任务传递给计算分支上的各计算节点,而节点在处理子计算任务时会上报相应的子任务执行状态信息到服务器100。
在步骤S102,所述服务器100根据所述子计算任务的来源节点信息(即消息从哪个节点发送过来)以及子计算任务的目的节点信息(产生的新消息将要发送到哪个节点),得出子计算任务的消息从哪个节点发送过来和产生的新消息将要发送到哪个节点去等信息,即可以得到分布式计算系统中各节点间的关联关系,进而可以得到分布式计算系统中所有计算拓扑的执行情况。
如图3所示,当服务器100接收到某计算处理单元(简称PU,即节点)所上报的子计算任务执行状态信息后,假设通过解析得出当前的计算节点为PU31,并且子计算任务执行状态信息中显示计算任务是从PU23中发送过来的、处理完之后产生的计算任务将要发送到PU41,则获得了PU23、PU31以及PU41之间的关联关系。通过将多个子任务执行状态信息进行整理,可以得到总计算任务在所述分布式计算系统中的计算拓扑状态。
在步骤S103,服务器100根据所述各个子计算任务的执行状态以及各个节点的关联关系,即可获得与所述总计算任务相关的各个子计算任务的执行状态,以及执行所述子计算任务的各个节点的关联关系,从而生成总计算任务在所述分布式计算系统中的计算拓扑状态。所述总计算任务包含所述各个子计算任务,所述总计算任务由所述分布式计算系统140划分为多个子计算任务并分别传输至各个节点中执行计算。
本发明通过接收分布式计算系统中各节点处理子计算任务后上报的子任务执行状态信息,并根据节点的身份标识信息、节点的子计算任务的来源节点信息和目的节点信息获取各个节点的关联关系,然后根据所述各个子计算任务的执行状态以及各个节点的关联关系来生成整个总计算任务在所述分布式计算系统中的计算拓扑状态,这样就可以直观地展示出计算拓扑每一个计算节点的执行情况以及各计算节点间的依赖关系,以便于当某个应用出现问题时可以快速定位出现问题的机器和计算节点,极大地提高了问题处理的效率。
在其中一个实施例中,所述子任务执行状态消息中除了包括节点的身份标识信息、子计算任务的来源节点信息、目的节点信息以及各个子计算任务的执行状态等信息之外,还可以包括所述总计算任务的身份标识。
此时,如图4所示,步骤S103中根据所述各个子计算任务的执行状态以及各个节点的关联关系生成总计算任务在所述分布式计算系统中的计算拓扑状态的步骤具体可以包括如下子步骤:
步骤S1031,获取所述分布式计算系统的所有节点上报的子任务执行状态信息,其中,所述子任务执行状态信息还包括总计算任务的身份标识;
步骤S1032,接收总计算任务的计算拓扑状态查询指令,获取待查询的总计算任务的身份标识;
步骤S1033,根据所述待查询的总计算任务的身份标识,获取相应节点的关联关系以及各个子计算任务的执行状态,生成总计算任务在所述分布式计算系统中的计算拓扑状态。
具体的,所述服务器100不断接收各个节点上报的子任务执行状态信息,所述子任务执行状态信息还包括总计算任务的身份标识信息。当服务器100接收到计算拓扑状态查询指令时,解析所述计算拓扑状态查询指令,获得总计算任务的身份标识信息,根据所述总计算任务的身份标识信息与各个节点上报的子任务执行状态信息比对,即可获得执行所述总计算任务的各个子计算任务的节点的身份标识信息,以及对应的各个节点的关联关系以及各个子计算任务的执行状态,生成总计算任务在所述分布式计算系统中的计算拓扑状态。
在另一个实施例中,在步骤S103,生成总计算任务在所述分布式计算系统中的计算拓扑状态的步骤包括:
步骤S1041,根据所述计算拓扑状态中各节点间的关联关系生成计算拓扑的逻辑图;
步骤S1042,在所述逻辑图上标注各个节点的子计算任务的执行状态;
步骤S1043,将所述逻辑图发送至展示终端显示。
即,所述服务器100在获得所述计算拓扑状态中各节点间的关联关系之后,即可根据所述关联关系生成分布式计算系统的各个节点之间的计算拓扑的逻辑图。根据各个所述节点的子计算任务的执行状态,在所述逻辑图上进行标注,并发送至所述展示终端120显示。本实施例中,展示出来的计算拓扑的总体状态逻辑图如图3所示,通过该逻辑图可以方便的在展示终端的网页交互界面上查看以图形展示的计算拓扑每一个节点执行次数及执行情况,直观了解计算拓扑节点间的关联关系,即时了解业务运行状态和快速发现节点业务出现的问题。
进一步的,通过在所述逻辑图上标注各个节点的子计算任务的执行状态,可对执行状态异常的节点进行告警。则在所述逻辑图上标注各个节点的子计算任务的执行状态的步骤包括:
根据预设的异常标准判断所述各个节点的子计算任务的执行状态是否异常;如果是,则在所述逻辑图上对异常的节点进行突出标注。
通过上述方式,当某个应用出现问题时,服务器100可以在逻辑图上将异常的节点进行突出标注,例如标红显示处理,这样一来相关的维护人员在查看展示终端120的交互页面时可以更加一目了然的找到出现问题的节点所在。
在另一个实施例中,在获取各个节点处理子计算任务后上报的子任务执行状态信息之后,还可以包括如下步骤:
步骤S105,创建一个用于保存所述子任务执行状态信息的集群;
步骤S106,获取所述集群中各节点的数目,生成与该数目相对应个数的子任务执行状态信息的备份;
步骤S107,将所述各个节点的子任务执行状态信息的备份保存在内存存储中心。
通过上述方式,所述服务器100将数据存放为多分备份并保存在集群的内存存储中心,可以规避单机数据丢失风险,就算丢失其中一份,还有其他备份可用;而且将数据存放在内存中,读取速度上要远快于硬盘。
进一步地,本发明的一种分布式计算系统的监控方法还可以包括如下步骤:定时从所述内存存储中心拉取所述子任务执行状态信息的备份至展示终端的本地共享内存。
则展示终端120可以在本地共享内存中不断更新各个节点的子任务执行状态,根据查询请求,可随时从所述本地共享内存中获取与该查询请求对应的子任务执行状态信息的备份并显示,更加方便快捷。
通过上述实施方案,展示终端120在接收查询请求时,可以不需要再向服务器100获取实时数据就可以得到所需要展示的子任务执行状态数据,可以减少展示终端120的运行消耗,提高数据获取速度和效率。
与上述一种分布式计算系统的监控方法相对应,本发明实施例中还提供一种分布式计算系统的监控系统,如图5所示,包括:
任务跟踪模块10,用于获取分布式计算系统的各个节点处理子计算任务后上报的子任务执行状态信息,其中,所述子任务执行状态信息包括节点的身份标识信息、子计算任务的来源节点信息、子计算任务的目的节点信息以及各个子计算任务的执行状态;
关联模块20,用于根据节点的身份标识信息、子计算任务的来源节点信息以及子计算任务的目的节点信息获取各个节点的关联关系;
状态管理模块30,用于根据所述各个子计算任务的执行状态以及各个节点的关联关系,生成总计算任务在所述分布式计算系统中的计算拓扑状态,其中,所述总计算任务包含所述各个子计算任务。
所述任务跟踪模块10可获取分布式计算系统的各个节点处理子计算任务后上报的子任务执行状态信息。每个接入到分布式计算系统的应用,它都具有特定的计算拓扑。分布式计算系统会处理所接收到的实时计算任务,通过调度计算拓扑的计算分支,将子计算任务传递给计算分支上的各计算节点,而节点在处理子计算任务时会上报相应的子任务执行状态信息到服务器。
所述关联模块20根据所述子计算任务的来源节点信息(即消息从哪个节点发送过来)以及子计算任务的目的节点信息(产生的新消息将要发送到哪个节点),得出子计算任务的消息从哪个节点发送过来和产生的新消息将要发送到哪个节点去等信息,即可以得到分布式计算系统中各节点间的关联关系,进而可以得到分布式计算系统中所有计算拓扑的执行情况。
所述状态管理模块30根据所述各个子计算任务的执行状态以及各个节点的关联关系,即可获得与所述总计算任务相关的各个子计算任务的执行状态,以及执行所述子计算任务的各个节点的关联关系,从而生成总计算任务在所述分布式计算系统中的计算拓扑状态。所述总计算任务包含所述各个子计算任务,所述总计算任务由所述分布式计算系统划分为多个子计算任务并分别传输至各个节点中执行计算。
本发明分布式计算系统的监控系统通过接收分布式计算系统中各节点处理子计算任务后上报的子任务执行状态信息,并根据节点的身份标识信息、节点的子计算任务的来源节点信息和目的节点信息获取各个节点的关联关系,然后根据所述各个子计算任务的执行状态以及各个节点的关联关系来生成整个总计算任务在所述分布式计算系统中的计算拓扑状态,这样就可以直观地展示出计算拓扑每一个计算节点的执行情况以及各计算节点间的依赖关系,以便于当某个应用出现问题时可以快速定位出现问题的机器和计算节点,极大地提高了问题处理的效率。
在其中一个实施例中,所述子任务执行状态消息中除了包括节点的身份标识信息、子计算任务的来源节点信息、目的节点信息以及各个子计算任务的执行状态等信息之外,还可以包括所述总计算任务的身份标识。
所述任务跟踪模块10包括获取模块11、接收模块12和查询模块13,如图6所示:
所述获取模块11,用于获取所述分布式计算系统的所有节点上报的子任务执行状态信息,其中,所述子任务执行状态信息还包括总计算任务的身份标识;
所述接收模块12,用于接收总计算任务的计算拓扑状态查询指令,获取待查询的总计算任务的身份标识;
所述查询模块13,用于根据所述待查询的总计算任务的身份标识,获取相应节点的关联关系以及各个子计算任务的执行状态,生成总计算任务在所述分布式计算系统中的计算拓扑状态。
通过不断接收各个节点上报的子任务执行状态信息,所述子任务执行状态信息还包括总计算任务的身份标识信息。当接收到计算拓扑状态查询指令时,解析所述计算拓扑状态查询指令,获得总计算任务的身份标识信息,根据所述总计算任务的身份标识信息与各个节点上报的子任务执行状态信息比对,即可获得执行所述总计算任务的各个子计算任务的节点的身份标识信息,以及对应的各个节点的关联关系以及各个子计算任务的执行状态,生成总计算任务在所述分布式计算系统中的计算拓扑状态。
请一并参阅图7,在一个实施例中,所述查询模块30包括:
展示模块31,用于根据所述计算拓扑状态中各节点间的关联关系生成计算拓扑的逻辑图,在所述逻辑图上标注各个节点的子计算任务的执行状态,并将所述逻辑图发送至展示终端显示。
即,在获得所述计算拓扑状态中各节点间的关联关系之后,即可根据所述关联关系生成分布式计算系统的各个节点之间的计算拓扑的逻辑图。根据各个所述节点的子计算任务的执行状态,在所述逻辑图上进行标注,并发送至所述展示终端显示。通过该逻辑图可以方便的在展示终端的网页交互界面上查看以图形展示的计算拓扑每一个节点执行次数及执行情况,直观了解计算拓扑节点间的关联关系,即时了解业务运行状态和快速发现节点业务出现的问题。
进一步的,所述查询模块30还包括:
告警模块32,用于根据预设的异常标准判断所述各个节点的子计算任务的执行状态是否异常,如果是,则在所述逻辑图上对异常的节点进行突出标注。
通过上述方式,当某个应用出现问题时,可以在逻辑图上将异常的节点进行突出标注,例如标红显示处理,这样一来相关的维护人员在查看展示终端的交互页面时可以更加一目了然的找到出现问题的节点所在。
请参阅图8,在另一个实施例中,所述分布式计算系统的监控系统还包括备份模块40,用于创建一个用于保存所述子任务执行状态信息的集群,获取所述集群中各节点的数目,生成与该数目相对应个数的子任务执行状态信息的备份,并将所述各个节点的子任务执行状态信息的备份保存在内存存储中心。
通过将数据存放为多分备份并保存在集群的内存存储中心,可以规避单机数据丢失风险,就算丢失其中一份,还有其他备份可用;而且将数据存放在内存中,读取速度上要远快于硬盘。
进一步地,所述分布式计算系统的监控系统还可包括同步模块50,用于定时从所述内存存储中心拉取所述子任务执行状态信息的备份至展示终端的本地共享内存。
则展示终端可以在本地共享内存中不断更新各个节点的子任务执行状态,根据查询请求,可随时从所述本地共享内存中获取与该查询请求对应的子任务执行状态信息的备份并显示,更加方便快捷。
展示终端在接收查询请求时,可以不需要再向服务器获取实时数据就可以得到所需要展示的子任务执行状态数据,可以减少展示终端的运行消耗,提高数据获取速度和效率。
图9所示为本发明分布式计算系统的监控系统的一种应用例。如图9所示,整个分布式计算以及监控的系统框架包括计算层、数据收集层以及展示层;其中,计算层由分布式计算系统,及其各个节点构成,本发明的分布式计算系统的监控系统主要应用在数据收集层,而展示层则包括Agent(客户端)、SHM(共享内存)、CGI(CommonGatewayInterface,通用网关接口)以及网页交互界面。
所述数据收集层包括任务跟踪模块、状态管理器(包含上述所述关联模块和状态管理模块)以及内存集群;任务跟踪模块将计算拓扑每一个节点的执行情况汇总,并以此判断总计算任务在计算拓扑中是否执行成功;接着任务跟踪模块将汇总后的计算拓扑的执行情况信息上报到状态管理器,状态管理器将计算拓扑执行情况进一步整理汇总,以状态图的形式存储在内存集群中;同时部署单机客户端定时到内存集群拉取所有计算拓扑的执行情况,将数据存放在本地共享内存;然后CGI根据页面请求从共享内存中拉取计算拓扑的执行情况,并将计算拓扑的执行情况以逻辑图的形式展示在网页交互界面。
下面对所述层次结构进行详细描述:
在线分布式计算系统中,数据以消息的形式在系统中扩散,跟踪进入系统的一个数据消息对应计算拓扑的执行情况,需要拓扑的所有计算节点每处理一个消息就要向任务跟踪模块上报处理消息的ID及消息从哪个节点发送过来和产生的新消息将要发送到哪个节点;
任务跟踪模块接收来自计算拓扑每一个节点执行情况的上报,处理上报的信息,判断计算拓扑是否成功/失败/超时,并实时上报计算拓扑每一个节点的执行情况到状态管理器;
状态管理器可以分为三个部分,首先是任务跟踪模块节点上面的状态整合常驻进程,它接收任务跟踪模块对计算拓扑整体及每一个节点的执行情况、关联信息的上报,整合接收到的上报内容,并定时将整合结果写入到状态管理器的第二部分内存存储中心,该内存存储中心为一个集群,保存计算拓扑的执行情况的多份备份,规避单机数据丢失风险,集群节点中的Agent进程是状态管理器的第三部分,它会定时去内存存储中心拉取计算拓扑的执行情况信息和关联信息放在本地共享内存。需要说明的是,本地共享内存是指Agent机器上面的共享内存,共享内存开辟在机器的内存空间中,它是linux操作系统中进程间通讯的一种方式,Agent将数据拉取到共享内存后,网页请求可以从共享内存中拉取需要展示的数据;
CGI进程根据网页交互界面的请求,从本地共享内存中拉取对应计算拓扑的执行情况以及计算节点间的关联信息,并将拓扑的执行情况以及关联信息以逻辑图的形式展示到网页交互界面。需要说明的是,所述的请求是指进入网页或者点击网页上的某个链接,比如查看一个应用计算节点的运行状态,触发后台去读取共享内存数据的动作;请求的触发即是通过页面浏览发出。
本领域普通技术人员可以理解:实现本发明上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种分布式计算系统的监控方法,其特征在于,包括以下步骤:
获取分布式计算系统的各个节点处理子计算任务后上报的子任务执行状态信息,其中,所述子任务执行状态信息包括节点的身份标识信息、子计算任务的来源节点信息、子计算任务的目的节点信息以及各个子计算任务的执行状态;
根据节点的身份标识信息、子计算任务的来源节点信息以及子计算任务的目的节点信息获取各个节点的关联关系;
根据所述各个子计算任务的执行状态以及各个节点的关联关系,生成总计算任务在所述分布式计算系统中的计算拓扑状态,其中,所述总计算任务包含所述各个子计算任务。
2.根据权利要求1所述的分布式计算系统的监控方法,其特征在于,根据所述各个子计算任务的执行状态以及各个节点的关联关系生成总计算任务在所述分布式计算系统中的计算拓扑状态的步骤包括:
获取所述分布式计算系统的所有节点上报的子任务执行状态信息,其中,所述子任务执行状态信息还包括总计算任务的身份标识;
接收总计算任务的计算拓扑状态查询指令,获取待查询的总计算任务的身份标识;
根据所述待查询的总计算任务的身份标识,获取相应节点的关联关系以及各个子计算任务的执行状态,生成总计算任务在所述分布式计算系统中的计算拓扑状态。
3.根据权利要求1或者2所述的分布式计算系统的监控方法,其特征在于,生成总计算任务在所述分布式计算系统中的计算拓扑状态的步骤包括:
根据所述计算拓扑状态中各节点间的关联关系生成计算拓扑的逻辑图;
在所述逻辑图上标注各个节点的子计算任务的执行状态;
将所述逻辑图发送至展示终端显示。
4.根据权利要求3所述的分布式计算系统的监控方法,其特征在于,在所述逻辑图上标注各个节点的子计算任务的执行状态的步骤包括:
根据预设的异常标准判断所述各个节点的子计算任务的执行状态是否异常;
如果是,则在所述逻辑图上对异常的节点进行突出标注。
5.根据权利要求1至2所述的分布式计算系统的监控方法,其特征在于,在获取各个节点处理子计算任务后上报的子任务执行状态信息之后,还包括步骤:
创建一个用于保存所述子任务执行状态信息的集群;
获取所述集群中各节点的数目,生成与该数目相对应个数的子任务执行状态信息的备份;
将所述各个节点的子任务执行状态信息的备份保存在内存存储中心。
6.根据权利要求5所述的分布式计算系统的监控方法,其特征在于,还包括步骤:
定时从所述内存存储中心拉取所述子任务执行状态信息的备份至展示终端的本地共享内存。
7.一种分布式计算系统的监控系统,其特征在于,包括:
任务跟踪模块,用于获取分布式计算系统的各个节点处理子计算任务后上报的子任务执行状态信息,其中,所述子任务执行状态信息包括节点的身份标识信息、子计算任务的来源节点信息、子计算任务的目的节点信息以及各个子计算任务的执行状态;
关联模块,用于根据节点的身份标识信息、子计算任务的来源节点信息以及子计算任务的目的节点信息获取各个节点的关联关系;
状态管理模块,用于根据所述各个子计算任务的执行状态以及各个节点的关联关系,生成总计算任务在所述分布式计算系统中的计算拓扑状态,其中,所述总计算任务包含所述各个子计算任务。
8.根据权利要求7所述的分布式计算系统的监控系统,其特征在于,所述任务跟踪模块包括:
获取模块,用于获取所述分布式计算系统的所有节点上报的子任务执行状态信息,其中,所述子任务执行状态信息还包括总计算任务的身份标识;
接收模块,用于接收总计算任务的计算拓扑状态查询指令,获取待查询的总计算任务的身份标识;
查询模块,用于根据所述待查询的总计算任务的身份标识,获取相应节点的关联关系以及各个子计算任务的执行状态,生成总计算任务在所述分布式计算系统中的计算拓扑状态。
9.根据权利要求7或者8所述的分布式计算系统的监控系统,其特征在于,所述查询模块包括:
展示模块,用于根据所述计算拓扑状态中各节点间的关联关系生成计算拓扑的逻辑图,在所述逻辑图上标注各个节点的子计算任务的执行状态,并将所述逻辑图发送至展示终端显示。
10.根据权利要求9所述的分布式计算系统的监控系统,其特征在于,所述查询模块还包括:
告警模块,用于根据预设的异常标准判断所述各个节点的子计算任务的执行状态是否异常,如果是,则在所述逻辑图上对异常的节点进行突出标注。
11.根据权利要求7或者8所述的分布式计算系统的监控系统,其特征在于,还包括:
备份模块,用于创建一个用于保存所述子任务执行状态信息的集群,获取所述集群中各节点的数目,生成与该数目相对应个数的子任务执行状态信息的备份,并将所述各个节点的子任务执行状态信息的备份保存在内存存储中心。
12.根据权利要求11所述的分布式计算系统的监控系统,其特征在于,还包括同步模块,用于定时从所述内存存储中心拉取所述子任务执行状态信息的备份至展示终端的本地共享内存。
CN201410531211.8A 2014-10-10 2014-10-10 分布式计算系统的监控方法及系统 Active CN105573824B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410531211.8A CN105573824B (zh) 2014-10-10 2014-10-10 分布式计算系统的监控方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410531211.8A CN105573824B (zh) 2014-10-10 2014-10-10 分布式计算系统的监控方法及系统

Publications (2)

Publication Number Publication Date
CN105573824A true CN105573824A (zh) 2016-05-11
CN105573824B CN105573824B (zh) 2020-04-03

Family

ID=55883996

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410531211.8A Active CN105573824B (zh) 2014-10-10 2014-10-10 分布式计算系统的监控方法及系统

Country Status (1)

Country Link
CN (1) CN105573824B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528664A (zh) * 2016-10-21 2017-03-22 广东亿迅科技有限公司 基于分布式的关系数据库的事务数据监控方法及其系统
CN108255681A (zh) * 2018-02-09 2018-07-06 腾讯科技(北京)有限公司 任务告警方法及装置
CN109359100A (zh) * 2018-09-28 2019-02-19 北京赛博贝斯数据科技有限责任公司 Pb级历史数据和在线数据的实时计算的可视化建模方法
CN109684052A (zh) * 2018-12-26 2019-04-26 华为技术有限公司 事务分析方法、装置、设备及存储介质
CN110399208A (zh) * 2019-07-15 2019-11-01 阿里巴巴集团控股有限公司 分布式任务调度拓扑图的展示方法、装置及设备
CN110705036A (zh) * 2019-09-10 2020-01-17 中广核工程有限公司 一种核电设计任务管理系统,方法和存储介质
CN110716692A (zh) * 2018-07-13 2020-01-21 浙江宇视科技有限公司 读取性能提升方法、装置、存储节点及数据读取方法
CN110837453A (zh) * 2019-11-01 2020-02-25 山东中创软件商用中间件股份有限公司 一种公文交换平台的监控方法及相关装置
CN112134739A (zh) * 2020-09-24 2020-12-25 平安科技(深圳)有限公司 链路状态的追踪方法、装置、电子设备及计算机存储介质
CN112199048A (zh) * 2020-10-20 2021-01-08 重庆紫光华山智安科技有限公司 数据读取方法、系统、设备及介质
CN112527493A (zh) * 2019-09-19 2021-03-19 贵州白山云科技股份有限公司 一种边缘计算服务的创建方法、装置、系统及介质
CN112905525A (zh) * 2019-11-19 2021-06-04 中科寒武纪科技股份有限公司 控制运算装置进行计算的方法及设备
CN112905331A (zh) * 2019-11-19 2021-06-04 上海商汤智能科技有限公司 任务处理系统、方法及装置、电子设备和存储介质
CN113760469A (zh) * 2021-02-02 2021-12-07 北京沃东天骏信息技术有限公司 分布式计算的方法和装置
CN113872834A (zh) * 2021-10-19 2021-12-31 北京京航计算通讯研究所 一种分布式系统的可视化监控方法和系统
CN117093161A (zh) * 2023-10-19 2023-11-21 之江实验室 一种基于光收发芯片的内存管理系统、方法、介质及设备

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101980206A (zh) * 2010-11-05 2011-02-23 北京云快线软件服务有限公司 文件任务管理工具
CN102055799A (zh) * 2010-12-09 2011-05-11 北京云快线软件服务有限公司 内容刷新系统
CN102073546A (zh) * 2010-12-13 2011-05-25 北京航空航天大学 一种云计算环境中分布式计算模式下的任务动态调度方法
CN102521044A (zh) * 2011-12-30 2012-06-27 北京拓明科技有限公司 一种基于消息中间件的分布式任务调度方法及系统
CN102609809A (zh) * 2012-01-18 2012-07-25 西安交通大学 一种通过查表实现工作流循环控制的方法
CN102722531A (zh) * 2012-05-17 2012-10-10 北京大学 一种云环境中基于分片位图索引的查询方法
CN103188161A (zh) * 2011-12-30 2013-07-03 中国移动通信集团公司 分布式数据加载调度方法与系统
CN103346914A (zh) * 2013-07-03 2013-10-09 曙光信息产业(北京)有限公司 分布式文件系统的拓扑结构更新方法和装置
CN103377075A (zh) * 2012-04-28 2013-10-30 腾讯科技(深圳)有限公司 管理任务的方法、装置及系统
CN103491129A (zh) * 2013-07-05 2014-01-01 华为技术有限公司 一种业务节点配置方法、业务节点池注册器及系统
CN103617242A (zh) * 2013-11-26 2014-03-05 曙光信息产业股份有限公司 一种分布式文件系统拓扑展示方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101980206A (zh) * 2010-11-05 2011-02-23 北京云快线软件服务有限公司 文件任务管理工具
CN102055799A (zh) * 2010-12-09 2011-05-11 北京云快线软件服务有限公司 内容刷新系统
CN102073546A (zh) * 2010-12-13 2011-05-25 北京航空航天大学 一种云计算环境中分布式计算模式下的任务动态调度方法
CN102521044A (zh) * 2011-12-30 2012-06-27 北京拓明科技有限公司 一种基于消息中间件的分布式任务调度方法及系统
CN103188161A (zh) * 2011-12-30 2013-07-03 中国移动通信集团公司 分布式数据加载调度方法与系统
CN102609809A (zh) * 2012-01-18 2012-07-25 西安交通大学 一种通过查表实现工作流循环控制的方法
CN103377075A (zh) * 2012-04-28 2013-10-30 腾讯科技(深圳)有限公司 管理任务的方法、装置及系统
CN102722531A (zh) * 2012-05-17 2012-10-10 北京大学 一种云环境中基于分片位图索引的查询方法
CN103346914A (zh) * 2013-07-03 2013-10-09 曙光信息产业(北京)有限公司 分布式文件系统的拓扑结构更新方法和装置
CN103491129A (zh) * 2013-07-05 2014-01-01 华为技术有限公司 一种业务节点配置方法、业务节点池注册器及系统
CN103617242A (zh) * 2013-11-26 2014-03-05 曙光信息产业股份有限公司 一种分布式文件系统拓扑展示方法

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528664A (zh) * 2016-10-21 2017-03-22 广东亿迅科技有限公司 基于分布式的关系数据库的事务数据监控方法及其系统
CN108255681B (zh) * 2018-02-09 2021-08-13 腾讯科技(北京)有限公司 任务告警方法及装置
CN108255681A (zh) * 2018-02-09 2018-07-06 腾讯科技(北京)有限公司 任务告警方法及装置
CN110716692B (zh) * 2018-07-13 2022-11-25 浙江宇视科技有限公司 读取性能提升方法、装置、存储节点及数据读取方法
CN110716692A (zh) * 2018-07-13 2020-01-21 浙江宇视科技有限公司 读取性能提升方法、装置、存储节点及数据读取方法
CN109359100A (zh) * 2018-09-28 2019-02-19 北京赛博贝斯数据科技有限责任公司 Pb级历史数据和在线数据的实时计算的可视化建模方法
CN109684052B (zh) * 2018-12-26 2021-04-09 华为技术有限公司 事务分析方法、装置、设备及存储介质
CN109684052A (zh) * 2018-12-26 2019-04-26 华为技术有限公司 事务分析方法、装置、设备及存储介质
CN110399208B (zh) * 2019-07-15 2023-10-31 创新先进技术有限公司 分布式任务调度拓扑图的展示方法、装置及设备
CN110399208A (zh) * 2019-07-15 2019-11-01 阿里巴巴集团控股有限公司 分布式任务调度拓扑图的展示方法、装置及设备
CN110705036B (zh) * 2019-09-10 2023-04-07 中广核工程有限公司 一种核电设计任务管理系统,方法和存储介质
CN110705036A (zh) * 2019-09-10 2020-01-17 中广核工程有限公司 一种核电设计任务管理系统,方法和存储介质
CN112527493A (zh) * 2019-09-19 2021-03-19 贵州白山云科技股份有限公司 一种边缘计算服务的创建方法、装置、系统及介质
CN110837453A (zh) * 2019-11-01 2020-02-25 山东中创软件商用中间件股份有限公司 一种公文交换平台的监控方法及相关装置
CN110837453B (zh) * 2019-11-01 2023-09-01 山东中创软件商用中间件股份有限公司 一种公文交换平台的监控方法及相关装置
CN112905525A (zh) * 2019-11-19 2021-06-04 中科寒武纪科技股份有限公司 控制运算装置进行计算的方法及设备
CN112905331A (zh) * 2019-11-19 2021-06-04 上海商汤智能科技有限公司 任务处理系统、方法及装置、电子设备和存储介质
CN112905331B (zh) * 2019-11-19 2024-06-07 上海商汤智能科技有限公司 任务处理系统、方法及装置、电子设备和存储介质
CN112905525B (zh) * 2019-11-19 2024-04-05 中科寒武纪科技股份有限公司 控制运算装置进行计算的方法及设备
WO2021189899A1 (zh) * 2020-09-24 2021-09-30 平安科技(深圳)有限公司 链路状态的追踪方法、装置、电子设备及计算机存储介质
CN112134739A (zh) * 2020-09-24 2020-12-25 平安科技(深圳)有限公司 链路状态的追踪方法、装置、电子设备及计算机存储介质
CN112199048A (zh) * 2020-10-20 2021-01-08 重庆紫光华山智安科技有限公司 数据读取方法、系统、设备及介质
CN113760469A (zh) * 2021-02-02 2021-12-07 北京沃东天骏信息技术有限公司 分布式计算的方法和装置
CN113872834A (zh) * 2021-10-19 2021-12-31 北京京航计算通讯研究所 一种分布式系统的可视化监控方法和系统
CN117093161A (zh) * 2023-10-19 2023-11-21 之江实验室 一种基于光收发芯片的内存管理系统、方法、介质及设备
CN117093161B (zh) * 2023-10-19 2024-01-26 之江实验室 一种基于光收发芯片的内存管理系统、方法、介质及设备

Also Published As

Publication number Publication date
CN105573824B (zh) 2020-04-03

Similar Documents

Publication Publication Date Title
CN105573824A (zh) 分布式计算系统的监控方法及系统
US10560465B2 (en) Real time anomaly detection for data streams
CN110036599B (zh) 网络健康信息的编程接口
EP3152869B1 (en) Real-time model of states of monitored devices
CN107908637B (zh) 一种基于知识库的实体更新方法及系统
WO2018195137A1 (en) Root cause discovery engine
CN110795503A (zh) 分布式存储系统的多集群数据同步方法及相关装置
CN111190888A (zh) 一种管理图数据库集群的方法和装置
CN110532322B (zh) 运维交互方法、系统、计算机可读存储介质及设备
CA3059738A1 (en) Behaviour data processing method, device, electronic device and computer readable medium
US9887889B1 (en) State reconciliation using event tracking and polling
CN110727560A (zh) 云服务报警方法及装置
CN113377626B (zh) 基于服务树的可视化统一报警方法、装置、设备和介质
US20200099570A1 (en) Cross-domain topological alarm suppression
US20220179729A1 (en) Correlation-based multi-source problem diagnosis
CN110728498A (zh) 一种信息交互方法和装置
CN114077518B (zh) 数据快照方法、装置、设备及存储介质
CN112860343A (zh) 配置变更方法、系统、装置、电子设备以及存储介质
CN111338834B (zh) 数据存储方法和装置
CN117931589A (zh) 运维故障的识别方法及装置
US20240020209A1 (en) Automatically implementing a specification of a data protection intent
CN117950850A (zh) 一种数据传输方法、装置、电子设备及计算机可读介质
CN113762910A (zh) 一种单据监控方法和装置
Rathore et al. Maintaining SmartX multi‐view visibility for OF@ TEIN+ distributed cloud‐native edge boxes
CN117041120A (zh) 一种分布式全链路服务监控系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant