一种分布式计算机自动拨测方法

文档序号:8395788阅读:626来源:国知局
一种分布式计算机自动拨测方法
【技术领域】
[0001] 本发明涉及一种计算机在线检测方法,尤其涉及一种分布式计算机自动拨测方 法。
【背景技术】
[0002] 随着信息化的推进,互联网在人们的生活中占据着越来越重要的地位。互联网上 的各种网站每时每刻都在为来自世界各地的用户服务,因此网站的稳定性非常重要。鉴于 互联网的特性,网站的服务器一般都是由廉价的定制化的计算机集群组成,因此每台计算 机的稳定性都对整个集群的稳定性产生影响。为了及时发现提供服务的计算机是否有死 机、服务不可用等现象,需要有拨测系统对计算机集群进行拨测。
[0003] 图1为现有计算机集群拨测系统拓扑结构示意图,现有的拨测方法主要步骤包 括:1、拨测任务机获取拨测任务;2、拨测任务机对被拨测机器进行拨测;3、被拨测机器返 回拨测结果;4、拨测任务机获取拨测结果进行展示或二次处理,然后对下一台机器执行同 样的过程。现有技术的主要缺点如下:1、拨测任务机与被拨测机器一般不在同一个机房,而 机房间的网络通路出现抖动(如网络短暂拥塞、丢包等)时有发生,因此如果拨测任务机与 被拨测机器的机房间网络通路发生抖动,很有可能导致拨测任务机把被拨测机器误判为异 常状态(死机、服务不正常等);2、如果第一次拨测失败,需要重试拨测的话,两次拨测任务 是串行的,时间成本高,如果集群机器数量比较多的话,对所有机器完成一轮拨测的时间周 期将非常长。

【发明内容】

[0004] 本发明所要解决的技术问题是提供一种分布式计算机自动拨测方法,能够在机房 间网络通路发生抖动的情况下提高拨测结果的准确率。
[0005] 本发明为解决上述技术问题而采用的技术方案是提供一种分布式计算机自动拨 测方法,包括如下步骤:a)配置拨测任务和拨测周期;b)拨测任务机根据拨测任务,随机 挑选多台拨测代理机,并按照预置的拨测周期同时向所有挑选出的拨测代理机发送拨测命 令;c)每台拨测代理机接收到拨测命令后,各自向被拨测机发起拨测;所述被拨测机接收 到拨测请求后,返回成功/失败的响应结果;d)每台拨测代理机将拨测耗时和拨测结果返 回给拨测任务机;e)所述拨测任务机根据所有挑选出的拨测代理机的返回结果确定被拨 测机的状态。
[0006] 上述的分布式计算机自动拨测方法,其中,所述拨测代理机的数目为2n+l,n为自 然数;当超过n台拨测代理机的返回拨测结果为成功时,所述拨测任务机才判断最终的拨 测结果成功。
[0007] 上述的分布式计算机自动拨测方法,其中,所述2n+l台拨测代理机位于多个机 房,每台拨测代理机发送心跳包给拨测任务机,所述拨测任务机根据心跳包更新维护当前 可用的拨测代理机列表。
[0008] 上述的分布式计算机自动拨测方法,其中,所述拨测任务包括设置拨测任务机和 被拨测机,所述每个机房随机挑选任意1台本次拨测任务外的计算机,所述随机挑选出的 计算机通过安装拨测代理程序作为拨测代理机。
[0009] 上述的分布式计算机自动拨测方法,其中,所述拨测周期和拨测代理机的数目大 致呈正比;所述2n+l台拨测代理机平均分布于每个机房,当拨测任务机发现有拨测代理机 上线、下线时,实时调整拨测周期。
[0010] 上述的分布式计算机自动拨测方法,其中,当拨测任务机发现拨测代理机下线时 间超过预设阀值时,重新挑选与所述下线的拨测代理机位于同一机房的计算机作为新的拨 测代理机。
[0011] 上述的分布式计算机自动拨测方法,其中,所述每台拨测代理机在向被拨测机发 起拨测时,记录下发送时间T1,在接收拨测结果时,记录下接收时间T2,并计算出该拨测代 理机的本次拨测耗时t = T2-T1 ;所述拨测任务机根据公式丨=计算出平均耗时j,其 2/2+1 中t是各台拨测代理机返回的拨测耗时。
[0012] 本发明对比现有技术有如下的有益效果:本发明提供的分布式计算机自动拨测方 法,拨测任务机不直接对被拨测机进行拨测,而是将拨测任务下发给一组拨测代理机,由这 组拨测代理机进行实际的拨测,所述拨测代理机是被随机挑选出来的,原来压在一台机器 上的拨测任务,现在被分散开来,这种分布式架构可以有效降低机器的负载,从而能够在机 房间网络通路发生抖动的情况下提高拨测结果的准确率。
【附图说明】
[0013] 图1为现有计算机集群拨测系统拓扑结构示意图;
[0014] 图2为本发明分布式计算机自动拨测流程示意图;
[0015] 图3为本发明分布式计算机自动拨测系统具体交互过程示意图;
[0016] 图4为本发明分布式计算机自动拨测系统拓扑结构示意图。
【具体实施方式】
[0017] 下面结合附图和实施例对本发明作进一步的描述。
[0018] 图2为本发明分布式计算机自动拨测流程示意图。
[0019] 请参见图2,本发明提供的分布式计算机自动拨测方法包括如下步骤:
[0020] 步骤S1 :配置拨测任务和拨测周期;
[0021] 步骤S2 :拨测任务机根据拨测任务,随机挑选多台拨测代理机,并按照预置的拨 测周期同时向所有挑选出的拨测代理机发送拨测命令;
[0022] 步骤S3 :每台拨测代理机接收到拨测命令后,各自向被拨测机发起拨测;所述被 拨测机接收到拨测请求后,返回成功/失败的响应结果;
[0023] 步骤S4 :每台拨测代理机将拨测耗时、拨测结果和拨测任务拼装成一个序列对, 返回给拨测任务机;
[0024] 步骤S5 :所述拨测任务机根据所有挑选出的拨测代理机的返回结果确定被拨测 机的状态,并将最后的结果进行存储以备展示、监控、告警等用途。
[0025] 本发明提供的分布式计算机自动拨测方法,拨测任务机不直接对被拨测机进行拨 测,而是将拨测任务下发给一组拨测代理机,由这组拨测代理机进行实际的拨测。其中,所 述拨测代理机的挑选原则如下:不同的拨测代理机属于不同的机房;所选的拨测代理机不 能是本次任务的被拨测机。由于拨测代理机是在满足一定条件下被随机挑选出来的,原来 压在一台机器上的拨测任务,现在被分散开来,这种分布式架构可以有效降低机器的负载。 具体拨测交互过程如图3所示:
[0026] 201拨测配置模块,工作人员配置好拨测任务和拨测周期。
[0027] 202拨测任务机从拨测配置模块取出配置好的拨测任务。其中所述拨测任务机是 拨测任务控制的中枢。负责拨测任务的调度和拨测结果的收集、判决。
[0028] 203拨测任务机随机从(2n+l)个机房分别挑选出一台拨测代理机,按照预置的拨 测周期向(2n+l)台拨测代理机发送拨测命令,其中n为自然数。
[0029] 204拨测代理机接收到拨测命令后,向被拨测机发起拨测。
[0030] 其中所述拨测代理机上面安装了拨测agent程序,拨测agent程序有如下功能:1、 接收拨测任务机的拨测任务并返回拨测结果;2、对被拨测机进行拨测并接收拨测结果;3、 发送心跳包给拨测任务机,因此拨测任务机可以实时知道哪些拨测代理机可以使用,当有 拨测代理机上线、下线时,拨测任务机可实时发现。
[0031] 其中所述拨测代理机在实际中由在各个机房随机挑选一些机器安装agent可得, 因此不需要单独机器作为拨测代理机。因此,一台机器在不同的拨测任务充当的角色可能 不一样:可能充当拨测代理机,或者可能是被拨测机。其中所述拨测代理机在向被
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1