一种分布式服务监控系统及方法

文档序号:8225908阅读:404来源:国知局
一种分布式服务监控系统及方法
【技术领域】
[0001]本发明涉及网络服务监控的技术领域,具体地涉及一种分布式服务监控系统及方法。
【背景技术】
[0002]在高可用网络服务系统中,对服务进行监控并及时执行故障转移是保证服务高可用性的重要手段。现有的监控系统主要有两种:
[0003]1.本地监控
[0004]在被监控服务所在服务器上设置监控系统,监控服务进程是否存活。
[0005]2.远程监控
[0006]在远程服务器上设置监控系统,通过ping或心跳等手段判断被监控服务是否存活。
[0007]以上两种方案均属于单点监控,并且其故障恢复措施简单。前者通过重启服务以期故障自动修复;后者通过修改IP或域名指向来屏蔽有故障服务并指向新服务,从而完成故障转移。
[0008]现有两种方案的缺陷有:
[0009]1.状态检测不准确
[0010]单点监控无法完整反映被监控服务的真实状态,从而造成检测到的服务状态不准确甚至误报的问题。
[0011]第一种监控系统无法获取外部网络状态,比如外部应用与被监控服务之间网络不可达。这样就无法及时的发现故障并进行故障转移。
[0012]第二种监控系统无法全面反映不同网络运营商、不同地区对被监控服务的影响。
[0013]以上两种系统都无法正确处理监控程序自身故障时的情景。
[0014]2.故障转移措施间单粗暴
[0015]很多故障通过重启服务并不能得到修复,所以这些情况下第一种监控系统无法正常地进行故障转移或恢复。
[0016]第二种监控系统在进行故障转移时并不能选择真正最优的备份服务。比如,监控系统总是选择与它处在相同机房的备份服务进行转移。因为同机房的网络状况大部分情况下好于跨机房的网络状况。从而,给监控系统造成该备份服务要优于其他备份服务的假象。

【发明内容】

[0017]本发明的技术解决问题是:克服现有技术的不足,提供一种分布式服务监控系统,其能够全面完整地监控服务状态,从而把漏报、误报降到最低,不再受单个监控单元自身故障的干扰,通过提高监控系统自身的高可用性来提高整个服务的高可用性。
[0018]本发明的技术解决方案是:这种分布式服务监控系统,该系统包括m个监控单元,m为大于I的整数,这些监控单元部署在m个点,覆盖不同地区、不同网络运营商、不同机房;监控单元组成分布式结构,各个监控单元彼此联系;如果η个或η个以上监控单元检测到被监控服务出现故障,I < η < m,则进行故障转移;服务恢复后,如果η个或η个以上监控单元检测到被监控服务已经恢复,Ι^η^Ξ m,则进行故障恢复。
[0019]由于监控单元部署在m个点,覆盖不同地区、不同网络运营商、不同机房,监控单元组成分布式结构,各个监控单元彼此联系,所以这种分布式服务监控系统能够全面完整地监控服务状态,从而把漏报、误报降到最低,不再受单个监控单元自身故障的干扰,通过提高监控系统自身的高可用性来提高整个服务的高可用性。
[0020]还提供了采用该系统的方法,该方法包括以下步骤:
[0021 ] (I)将m个监控单元部署在m个点,m为大于2的整数,覆盖不同地区、不同网络运营商、不同机房;
[0022](2)监控单元组成分布式结构,各个监控单元彼此联系;
[0023](3)判断是否有η个或η个以上监控单元检测到被监控服务出现故障,I <n<m,是则执行步骤(4),否则重新判断是否有η个或η个以上监控单元检测到被监控服务出现故障;
[0024](4)从这m个监控单元中选举一个作为主监控单元来执行故障转移;
[0025](5)从各监控单元推举的最优备份服务中,选举最终的备份服务以备故障转移,备份服务选定以后,主监控单元执行故障转移;
[0026](6)判断是否有η个或η个以上监控单元检测到被监控服务已经恢复,I彡η彡m,是则执行步骤(7),否则重新判断是否有η个或η个以上监控单元检测到被监控服务已经恢复;
[0027](7)当被监控服务进入恢复后,从各监控单元中选举一个作为主监控单元执行故障恢复。
【附图说明】
[0028]图1为采用本发明的分布式服务监控系统的方法的流程图。
[0029]图2为根据本发明的监控单元的示意图。
[0030]图3为根据本发明的故障转移的示意图。
[0031]图4为根据本发明的故障恢复的示意图。
【具体实施方式】
[0032]这种分布式服务监控系统,该系统包括m个监控单元,m为大于I的整数,这些监控单元部署在m个点,覆盖不同地区、不同网络运营商、不同机房;监控单元组成分布式结构,各个监控单元彼此联系;如果η个或η个以上监控单元检测到被监控服务出现故障,
I<n<m,则进行故障转移;服务恢复后,如果η个或η个以上监控单元检测到被监控服务已经恢复,I < η < m,则进行故障恢复。
[0033]由于监控单元部署在m个点,覆盖不同地区、不同网络运营商、不同机房,监控单元组成分布式结构,各个监控单元彼此联系,所以这种分布式服务监控系统能够全面完整地监控服务状态,从而把漏报、误报降到最低,不再受单个监控单元自身故障的干扰,通过提高监控系统自身的高可用性来提高整个服务的高可用性。
[0034]如图1所示,还提供了采用该系统的方法,该方法包括以下步骤:
[0035](I)将m个监控单元部署在m个点,m为大于I的整数,覆盖不同地区、不同网络运营商、不同机房;
[0036](2)监控单元组成分布式结构,各个监控单元彼此联系;
[0037](3)判断是否有η个或η个以上监控单元检测到被监控服务出现故障,I <n<m,是则执行步骤(4),否则重新判断是否有η个或η个以上监控单元检测到
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1