一种面向大规模云数据中心的服务器协同监控方法

文档序号:7802035阅读:163来源:国知局
一种面向大规模云数据中心的服务器协同监控方法
【专利摘要】本发明公开了一种面向大规模云数据中心的服务器协同监控方法,以服务器相互感知、彼此监视的方式来替代集中式架构的监控模式,提升服务器的自我管理能力,有效减轻监控服务器的监控负担,消除性能瓶颈和单点失效风险。发明给出了协同监控机制模型及功能组件,以及数据服务器加入系统时、单个数据服务器失效时、成片数据服务器失效时协同监控机制的工作步骤。本发明应用在大规模的云数据中心中,系统响应时间明显少于集中式监控机制的响应时间,有效实现了负载均衡,具有很低的更新开销,且无论数据服务器发生离散失效还是在服务器成片失效的情况下,均能够有效的将全部的失效服务器检测出来。
【专利说明】—种面向大规模云数据中心的服务器协同监控方法
【技术领域】
[0001]本发明涉及信息技术类系统管理应用领域,尤其涉及一种面向大规模云数据中心的服务器协同监控方法。
【背景技术】
[0002]云计算基于集中构建的云数据中心为用户提供动态的、高性价比的、弹性规模扩展的计算、存储和各类信息服务,改变了传统信息技术产业的体系架构和运作模式,受到了目前国内外学术界和产业界的极大关注。世界主要国家政府和具有显著影响力的企业机构纷纷构建大规模的云数据中心;Google、百度、IBM、Microsoft、Yahoo、Amazon、VMware>Salesforce、华为等均提出了各自的云计算解决方案;Facebook、YouTube、淘宝、万网、新浪等受到广泛欢迎的网络系统也都基于云计算平台。
[0003]云数据中心中的数据服务器是实际承载所有资源的物理基础,服务器的正常运行是云计算系统稳定、高效地提供服务的前提。因此,高效的服务器监控机制对于云计算系统而言至关重要。目前的云计算监控及管理系统关注的重点是对虚拟机资源和行为进行监控,对服务器本身的监控则简单采用集中式架构以及心跳或轮询模式。例如,Google云计算系统采用由一个或几个主控服务器来负责监控云数据中心的服务器集群中各数据服务器的状态。IBM的“蓝云”云计算平台采用Tivoli监控软件来监控云数据中心的服务器及任务的执行情况,也采用集中式监控架构。Nagios是被云计算系统广泛应用的主机和网络状态的监视系统,仍采用集中式监控架构。集中式监控架构的优点是可控性强、维护方便灵活,缺陷是系统存在性能瓶颈和单点故障问题。
[0004]在中、小规模的数据中心里,如果采用集中式监控架构,数据服务器作为任务执行者向监控服务器定期发送心跳信息以汇报当前工作状态,防止服务器失效带来的延误是可行的。但在大规模的云数据中心中,则明显不能采用简单心跳机制,因为数量庞大的数据服务器都向监控服务器发送周期心跳信息将会带来大量额外的网络通信负担,并容易大量消耗监控服务器的系统和网络资源,造成系统性能瓶颈和监控服务器失效问题,至造成类似于分布式拒绝服务攻击的效果。
[0005]为了解决上述问题,目前采用的方式是配置具备高性能和高可用性的监控服务器,并辅以日志恢复或双机备份等功能模块,由此也带来使得系统成本升高,并没有从本质上解决问题。
[0006]本发明针对目前云数据中心监控系统存在的问题,给出一种面向大规模云数据中心的服务器协同监控方法,以数据服务器相互感知、彼此监视的方式来替代集中式架构的监控模式,提升服务器的自我管理能力,有效减轻监控服务器的监控负担,消除性能瓶颈和监控服务器失效风险。

【发明内容】

[0007]为解决上述技术问题,本发明提供一种面向大规模云数据中心的服务器协同监控方法,其采用的技术方案如下:
[0008]一种面向大规模云数据中心的服务器协同监控方法,其基于服务器协同监控模型实现,服务器协同监控模型的主要部件包括监控服务器,消息路由器,数据服务器,消息队列,监控路由表,守护进程;其协同监控的方法包括如下步骤:
[0009]步骤一:所有数据服务器依次相连构成单向环形拓扑结构,每个数据服务器都有前继服务器和后继服务器且受后继服务器监控,数据服务器发生故障而失效时,由其后继服务器负责将数据服务器的失效情况汇报监控服务器;
[0010]步骤二:当数据服务器加入系统时其服务器协同监控方法为:重新建立包含该新数据服务器的单向环形拓扑结构,监控服务器将新数据服务器加入系统的情况通告给任务调度器;
[0011]当单个数据服务器发生故障而失效时其服务器协同监控方法为:该数据服务器的后继服务器负责发现并将这个情况报告给监控服务器,重新建立排除该故障数据服务器的单向环形拓扑结构,监控服务器将该数据服务器故障的情况通告给任务调度器,并继续进行监控;
[0012]当成片数据服务器失效时其服务器协同监控方法为:由后继于这些成片失效数据服务器的第一个正常数据服务器来负责依次发现并依次将数据服务器失效的情况报告给监控服务器,重新建立排除该故障数据服务器的单向环形拓扑结构,监控服务器依次将所有数据服务器故障的情况通告给任务调度器,并继续进行监控。
[0013]步骤二中,当数据服务器加入系统时其服务器协同监控方法如下:
[0014]步骤1:系统首先判断当前加入系统的数据服务器是首次加入系统还是重新加入系统;若数据服务器是首次加入系统时,将会通过守护进程与消息路由器连接,请求消息路由器为该服务器创建一个独立的心跳队列,系统中若曾经有N个数据服务器加入过系统,无论这些服务器目前是否在线,消息路由器上都将存在N个心跳队列,在后续阶段,服务器将会周期性向属于自己的心跳队列发布消息;若数据服务器是重新加入系统,则消息路由器已经有了该服务器首次加入系统时为其创建的心跳队列,则不必重新创建;
[0015]步骤2:数据服务器主动向监控服务器汇报,具体的做法是向消息路由器发布一个主题为“登录”的消息包,该消息包被填入消息路由器上的全局监控队列中;
[0016]步骤3:监控服务器在初始化时已订阅该全局监控队列,当监控服务器获得“登录”消息包时,立刻从该消息包中提取所需监控的服务器信息(NID,IP, QID),将该信息填入监控服务器本地维护的监控路由表中,对监控路由表中的该服务器的后继服务器的相关记录进行修改,并将相关信息发送给该后继服务器,以重建单向环形网络拓扑。
[0017]步骤3中的修改方法具体为:
[0018]步骤⑴:设数据服务器DNm+1加入系统,监控服务器根据其“登录”消息包中的信息在监控路由表末尾为DNm+1新增一条记录,同时修改列表中的DN1记录对应的信息,如表2所示。添加数据服务器DNm+1的信息意味着将DNm+1插入至DN1和DNm之间,因此将原来的DNi的前继指针(PreNode,PreQID)信息(DNm,Qm)填入DNm+1记录的前继指针对应项中,然后修改DN1的前继指针为(DNm+1,Qm+1)。
[0019]步骤⑵:监控服务器将表中服务器DNm+1对应记录中的前继指针(DNm,Qffl)按照DNm+1的IP地址再发送给服务器DNm+1 ;还将0&对应记录中的修改后的前继指针信息(DNm+1,Qm+1)按照DN1的IP地址再发送给服务器DN1 ;
[0020]步骤(3):服务器DNm+1向消息路由器申请订阅标识为%的心跳队列,服务器DN1向消息路由器申请订阅标识为Qm+1的心跳队列;网络拓扑重建完成,原来的DN1和DNm之间的监控关系被修正为DN1和DNm+1之间、DNm+1和DNm之间的监控关系。
[0021]步骤4:监控服务器还需要将DNm+1加入系统的情况通告给任务调度器,后续再有新任务时,任务调度器可选择分配任务给DNm。
[0022]步骤二中当单个数据服务器发生故障而失效时其服务器协同监控方法如下:
[0023]步骤1:如果服务器DNi+1连续几个心跳周期(如连续3个周期)没有从Qi所标识的心跳队列中获得消息,则立刻向消息路由器发布一个主题为“故障”的消息包,该消息包将被填入消息路由器上的全局监控队列中;
[0024]步骤2:监控服务器在全局监控队列中获得“故障”消息包时,从该消息包提取到发出故障信息的服务器为DNi+1,再由本地的监控路由表中发现DNi+1监控对象(即DNi+1的前继服务器)为DNi
[0025]步骤3:监控服务器判定DNi故障,然后更新监控路由表:首先将表中服务器DNi对应记录中的(PreNode, PreQID)信息(DNi+ Qi^1)提取出来以更新DNi+1对应记录中的(PreNode, Pr eQID)信息,然后将DNi对应的记录删除;
[0026]步骤4:监控服务器按照DNi+1的IP地址将更新后的(PreNode,PreQID)信息再发送给服务器DNi+1,服务器DNi+1向消息路由器申请订阅标识为Qp1的心跳队列。此时DNi+1和DNi^1建立起监控关系,单向环形网络拓扑也重建完成。
[0027]步骤5:监控服务器还需要将DNi故障的情况通告给任务调度器,后续再有新任务时,任务调度器将不会分配任务给DNi,除非DNi恢复正常在线状态并重新加入系统。
[0028]步骤二中当成片数据服务器失效时其服务器协同监控方法如下:
[0029]步骤1:在服务器DNi+1向连续几个周期没有从Qi所标识的心跳队列中获得消息,则立刻向消息路由器发布一个主题为“故障”的消息包,该消息包将被填入消息路由器上的全局监控队列;
[0030]步骤2:监控服务器在全局监控队列中获得“故障”消息包时,从该消息包提取到发出故障信息的服务器为DNi+1,再由本地的监控路由表中发现DNi+1监控对象为DNi,则判定DNi故障;
[0031]步骤3:监控服务器更新监控路由表:首先将表中服务器DNi对应记录中的(PreNode, PreQID)信息(DNi^QiJ提取出来以更新DNi+1对应记录中的(PreNode, PreQID)信息,然后将DNi对应的记录删除;
[0032]步骤4:监控服务器按照DNi+1的IP地址将更新后的(PreNode,PreQID)信息再发送给服务器DNi+1,服务器DNi+1向消息路由器申请订阅标识为Qp1的心跳队列,DNi+1和DN^建立起监控关系;
[0033]步骤5:监控服务器还需要将DNi故障的情况通告给任务调度器,后续再有新任务时,任务调度器将不会分配任务给DNi,除非DNi恢复正常在线状态并重新加入系统。
[0034]步骤6:由于DNg也因故障而失效了,因此同样的,在服务器DNi+1连续几个周期没有从Qh所标识的心跳队列中获得消息,则又立刻向消息路由器发布一个主题为“故障”的消息包,该消息包将被填入消息路由器上的全局监控队列;[0035]步骤7:监控服务器在全局监控队列中获得“故障”消息包时,从该消息包提取到发出故障信息的服务器为DNi+1,再由本地的监控路由表中发现DNi+1监控对象为DNp1,则判定DNp1故障;
[0036]步骤8:监控服务器更新监控路由表:首先将表中服务器DNp1对应记录中的(PreNode, PreQID)信息(DNi^QiJ提取出来以更新DNi+1对应记录中的(PreNode, PreQID)信息,然后将DNp1对应的记录删除;
[0037]步骤9:监控服务器按照DNi+1的IP地址将更新后的(PreNode,PreQID)信息再发送给服务器DNi+1,服务器DNi+1向消息路由器申请订阅标识为Qp2的心跳队列,DNi+1和DN^建立起监控关系,单向环形网络拓扑也再次重建完成;
[0038]步骤10:监控服务器还需要将DNp1故障的情况通告给任务调度器,后续再有新任务时,任务调度器将不会分配任务给DNi+除非DNp1恢复正常在线状态并重新加入系统。
[0039]更多的数据服务器失效时,则采用与步骤6~步骤9相同的流程来依次发现所有的失效数据服务器。
[0040]本发明提出的面向大规模云数据中心的服务器协同监控方法,可达到以下的有益效果:
[0041](I)响应时间。在小规模的云数据中心中,在采用同样监测间隔与间隔次数以及服务器失效率相同的情况下,协同监控机制的响应时间与集中式监控机制的响应时间是近似的,因为每次发生服务器失效时,与集中式监控机制相比,协同监控机制需要增加一次通信,然而集中式监控机制中的监控服务器需要处理较多的服务器心跳信息;在大规模的云数据中心中,协同监控机制的响应时间将明显少于集中式监控机制的响应时间。
[0042](2)负载均衡。协同监控机制将服务器之间的监控任务分散到各个数据服务器上,监控服务器仅在数据服务器首次或重新加入系统、发生故障时,才会接收到相关信息,即将原来监控过程中监控服务器需要处理的大量正常服务器信息交由各个数据服务器来接收并处理,有效实现了负载均衡。
[0043](3)更新开销。当数据服务器加入系统或是数据服务器失效时,监控系统的网络拓扑将发生变化,为了重建网络拓扑需要更新部分服务器上的信息,但每次新加入了一个服务器或是一个服务器发生失效时,仅对监控服务器和与之相邻的那两个数据服务器产生影响,并实质仅影响负责监控当前这个新加入或是失效服务器的数据服务器;对于监控路由表的修改,也仅需要修改其中两条记录,其它记录不受影响,更新开销很低。
[0044](4)检测效率。无论是数据服务器发生离散失效的情况下,还是在服务器成片失效的情况下,协同监控机制均能够有效的将全部的失效服务器检测出来;虽然成片数据服务器失效时检测出所有失效服务器所花费的时间较长,但由于发生成片数据服务器失效的概率很低,因此对系统的整体性能影响有限。
【专利附图】

【附图说明】
[0045]图1是协同监控网络拓扑图。
[0046] 图2是服务器协同监控模型图。
【具体实施方式】[0047]目前的云计算系统即使是采用廉价服务器的云数据中心,在一段时间内,发生失效的服务器占服务器总数的比例仍然是比较低的,因此汇报“异常”比汇报“正常”显然会降低通信次数。本发明提出的面向大规模云数据中心的服务器协同监控方法遵循“若数据服务器没有主动地向监控服务器发送信息,则该数据服务器默认为正常”的原则,数据服务器仅在发生异常时才会主动地向监控服务器发送信息。问题是当服务器自身发生异常时,自身将已失去向主控服务器发送异常信息的能力,因此协同监控机制依赖数据服务器之间的相互感知、彼此监视,即服务器的异常信息是由其邻居服务器汇报给主控服务器。
[0048]1、单向环形拓扑结构
[0049]云计算系统中的服务器集群首先构成一种用于协同监控的单向环形拓扑结构,即服务器首尾相连,且服务器之间的监控方式是单向的,如图1所示=DN1的前继服务器(PreNode)是DN8, DN1的后继服务器(PostNode)是DN2, DN1仅受到DN2的监视,DN1仅负责监视DN8的状态,若DN1发生故障而失效,则由DN2负责将DN1发生故障而失效的信息汇报给监控服务器丽。
[0050]本发明提出的面向大规模云数据中心的服务器协同监控方法包含以下几个环节:
[0051](I)系统中的新加入服务器和其它服务器建立前继和后继关系,即服务器选择负责监控的服务器,以及被哪个服务器监控,并获得前继和后继服务器的IP地址等信息。例如DN1知道它的前继服务器是DN8而后继服务器是DN2,而不是其它服务器。
[0052](2)当服务器发生故障而失效时,原先的网络拓扑被破坏,方法以低开销快速重建完整的环形拓扑。如当DN1宕机时,DN2和DN8迅速建立协同监控关系,而系统中与DN1无直接关联的服务器不受任何影响。
[0053](3)当成片服务器几乎同时发生发生故障而失效时,即某个服务器及负载监控该服务器的服务器均失效时,监控服务器快速获得所有的服务器失效信息,严重破坏的网络拓扑被快速重建。例如,当DN1和DN2同时失效时,DN1和DN2异常的信息均被快速汇报给监控服务器。
[0054]2、协同监控模型
[0055]为了解决上述问题,首先需要构建适合大规模云计算系统的服务器协同监控模型,如图2所示,主要涉及以下功能组件:
[0056](I)监控服务器。监控服务器负责监控系统中所有服务器的运行状态,获取的服务器状态信息可提供给云系统管理员用以快速掌握系统的全局状况;维护服务器之间的协同监控关系,保障系统的正常运行;提供给系统中的其它模块(如任务调度器等)作为任务执行者或服务提供者等的选择依据,特别是将服务器失效的信息及时发送给任务调度器等模块。
[0057](2)消息路由器。消息路由器可作为系统中所有服务器、模块之间进行信息交换的核心部件;采用高级消息队列协议,可维护一个或多个消息队列。
[0058](3)消息队列。每个消息队列是存在于消息路由器上的一个具名缓冲区,每个消息队列均有一个独一无二的队列标识QID,而每个消息均有主题Topic ;服务器可以与特定的消息队列进行绑定;协同监控系统中涉及两类消息队列:心跳队列和全局监控队列。每个服务器都对应着一条心跳队列,服务器周期性向自己对应的心跳队列发布心跳消息,而其它服务器可以从该队列中订阅消息。全局监控队列整个系统中仅有一个,涉及2种主题的消息包:“登录”消息包和“故障”消息包;“登录”消息包含发送该信息的服务器的标识NID、IP地址和心跳队列标识QID 故障”消息包包含发送该信息的服务器的标识NID。
[0059](4)监控路由表。监控路由表存在于监控服务器上,本质上是一个单向循环链表,表中每一条记录可以一个5元组来描述:(NID, IP, QID, PreNode, PreQID)其中NID是服务器标识,IP是服务器的IP地址,QID是服务器对应的心跳队列的标识,PreNode是当前服务器的前继服务器,PreQID指当前服务器的前继服务器的心跳队列的标识。典型的监控路由表如表1所不。
[0060]表1监控路由表
[0061]
【权利要求】
1.一种面向大规模云数据中心的服务器协同监控方法,其基于服务器协同监控模型实现,服务器协同监控模型的主要部件包括监控服务器,消息路由器,数据服务器,消息队列,监控路由表,守护进程;其协同监控的方法包括如下步骤: 步骤一:所有数据服务器依次相连构成单向环形拓扑结构,每个数据服务器都有前继服务器和后继服务器且受后继服务器监控,数据服务器发生故障而失效时,由其后继服务器负责将数据服务器的失效情况汇报监控服务器; 步骤二:当数据服务器加入系统时其服务器协同监控方法为:重新建立包含该新数据服务器的单向环形拓扑结构,监控服务器将新数据服务器加入系统的情况通告给任务调度器; 当单个数据服务器发生故障而失效时其服务器协同监控方法为:该数据服务器的后继服务器负责发现并将这个情况报告给监控服务器,重新建立排除该故障数据服务器的单向环形拓扑结构,监控服务器将该数据服务器故障的情况通告给任务调度器,并继续进行监控; 当成片数据服务器失效时其服务器协同监控方法为:由后继于这些成片失效数据服务器的第一个正常数据服务器来负责依次发现并依次将数据服务器失效的情况报告给监控服务器,重新建立排除该故障数据服务器的单向环形拓扑结构,监控服务器依次将所有数据服务器故障的情况通告给任务调度器,并继续进行监控。
2.根据权利要求1所述的一种面向大规模云数据中心的服务器协同监控方法,其步骤二中,当数据服务器加入系统时其服务器协同监控方法如下: 步骤1:系统首先判断当前加入系统的数据服务器是首次加入系统还是重新加入系统;若数据服务器是首次加入系统时,将会通过守护进程与消息路由器连接,请求消息路由器为该服务器创建一个独立的心跳队列,然后该服务器周期性向该心跳队列发布心跳消息,系统中若曾经有N个数据服务器加入过系统,无论这些服务器目前是否在线,消息路由器上都将存在N个心跳队列,在后续阶段,服务器将会周期性向属于自己的心跳队列发布消息;若数据服务器是重新加入系统,则消息路由器已经有了该服务器首次加入系统时为其创建的心跳队列,则不必重新创建,服务器周期性向自己对应的心跳队列发布心跳消息; 步骤2:数据服务器主动向监控服务器汇报,具体的做法是向消息路由器发布一个主题为“登录”的消息包,该消息包被填入消息路由器上的全局监控队列中; 步骤3:监控服务器在初始化时已订阅该全局监控队列,当监控服务器获得“登录”消息包时,立刻从该消息包中提取所需监控的服务器信息(NID,IP,QID),将该信息填入监控服务器本地维护的监控路由表中,对监控路由表中的该服务器的后继服务器的相关记录进行修改,并将相关信息发送给该后继服务器,以重建单向环形网络拓扑。 步骤4:监控服务器还需要将DNm+1加入系统的情况通告给任务调度器,后续再有新任务时,任务调度器可选择分配任务给DNm。
3.根据权利要求2所述的一种面向大规模云数据中心的服务器协同监控方法,其步骤3中的修改方法具体为: 步骤(1):设数据服务器DNm+1加入系统,监控服务器根据其“登录”消息包中的信息在监控路由表末尾为DNm+1新增一条记录,同时修改列表中的DN1记录对应的信息,如表2所示;添加数据服务器DNm+1的信息意味着将DNm+1插入至DN1和DNm之间,因此将原来的DN1的前继指针(PreNode,PreQID)信息(DNm,Qm)填入DNm+1记录的前继指针对应项中,然后修改DN1的前继指针为(DNm+1,Qm+1); 步骤⑵:监控服务器将表中服务器DNm+1对应记录中的前继指针(DNm,Qm)按照DNm+1的IP地址再发送给服务器DNm+1 ;还将0&对应记录中的修改后的前继指针信息(DNm+1,Qm+1)按照DN1的IP地址再发送给服务器DN1 ; 步骤⑶:服务器DNm+1向消息路由器申请订阅标识为Qm的心跳队列,服务器DN1向消息路由器申请订阅标识为Qm+1的心跳队列;网络拓扑重建完成,原来的DN1和DNm之间的监控关系被修正为DN1和DNm+1之间、DNm+1和DNm之间的监控关系。
4.根据权利要求1一种面向大规模云数据中心的服务器协同监控方法,所述的步骤二中当单个数据服务器发生故障而失效时其服务器协同监控方法如下: 步骤1:如果服务器DNi+1连续几个心跳周期没有从Qi所标识的心跳队列中获得消息,则立刻向消息路由器发布一个主题为“故障”的消息包,该消息包将被填入消息路由器上的全局监控队列; 步骤2:监控服务器在全局监控队列中获得“故障”消息包时,从该消息包提取到发出故障信息的服务器为DNi +1,再由本地的监控路由表中发现DNi+1的监控对象即前继服务器为DNi ; 步骤3:监控服务器判定DNi故障,然后更新监控路由表:首先将表中服务器DNi对应记录中的(PreNode, PreQID)信息(DNi+ Qi^1)提取出来以更新DNi+1对应记录中的(PreNode, PreQID)信息,然后将DNi对应的记录删除; 步骤4:监控服务器按照DNi+1的IP地址将更新后的(PreNode,PreQID)信息再发送给服务器DNi+1,服务器DNi+1向消息路由器申请订阅标识为Qp1的心跳队列,此时DNi+1和DN^1建立起监控关系,单向环形网络拓扑也重建完成; 步骤5:监控服务器还需要将DNi故障的情况通告给任务调度器,后续再有新任务时,任务调度器将不会分配任务给DNi,除非DNi恢复正常在线状态并重新加入系统。
5.根据权利要求1一种面向大规模云数据中心的服务器协同监控方法,步骤二中当成片数据服务器失效时其服务器协同监控方法如下: 步骤1:在服务器DNi+1向连续几个周期没有从Qi所标识的心跳队列中获得消息,则立刻向消息路由器发布一个主题为“故障”的消息包,该消息包将被填入消息路由器上的全局监控队列; 步骤2:监控服务器在全局监控队列中获得“故障”消息包时,从该消息包提取到发出故障信息的服务器为DNi+1,再由本地的监控路由表中发现DNi+1监控对象为DNi,则判定DNi故障; 步骤3:监控服务器更新监控路由表:首先将表中服务器DNi对应记录中的(PreNode, PreQID)信息(DNh,QiJ提取出来以更新DNi+1对应记录中的(PreNode, PreQID)信息,然后将DNi对应的记录删除; 步骤4:监控服务器按照DNi+1的IP地址将更新后的(PreNode,PreQID)信息再发送给服务器DNi+1,服务器DNi+1向消息路由器申请订阅标识为Qp1的心跳队列,DNi+1和DN^1建立起监控关系;步骤5:监控服务器还需要将DNi故障的情况通告给任务调度器,后续再有新任务时,任务调度器将不会分配任务给DNi,除非DNi恢复正常在线状态并重新加入系统; 步骤6:由于DNp1也因故障而失效了,因此同样的,在服务器DNi+1连续几个周期没有从Qh所标识的心跳队列中获得消息时,则又立刻向消息路由器发布一个主题为“故障”的消息包,该消息包将被填入消息路由器上的全局监控队列; 步骤7:监控服务器在全局监控队列中获得“故障”消息包时,从该消息包提取到发出故障信息的服务器为DNi+1,再由本地的监控路由表中发现DNi+1监控对象为DNp1,则判定DNh故障; 步骤8:监控服务器更新监控路由表:首先将表中服务器DNp1对应记录中的(PreNode, PreQID)信息(DNi^QiJ提取出来以更新DNi+1对应记录中的(PreNode, PreQID)信息,然后将DNp1对应的记录删除; 步骤9:监控服务器按照DNi+1的IP地址将更新后的(PreNode,PreQID)信息再发送给服务器DNi+1,服务器DNi+1向消息路由器申请订阅标识为Qp2的心跳队列,DNi+1和DN"建立起监控关系,单向环形网络拓扑也再次重建完成; 步骤10:监控服务器还需要将DNp1故障的情况通告给任务调度器,后续再有新任务时,任务调度器将不会 分配任务给DNi+除非DNp1恢复正常在线状态并重新加入系统。
【文档编号】H04L29/08GK103944784SQ201410166275
【公开日】2014年7月23日 申请日期:2014年4月23日 优先权日:2014年4月23日
【发明者】徐小龙, 杨冠, 章韵, 李嘉豪, 张凯, 李爱群 申请人:南京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1