集群内中间件自管理热备方法及系统技术方案

技术编号:8132446 阅读:208 留言:0更新日期:2012-12-27 05:23
本发明专利技术公开了一种集群内中间件自管理热备方法,当集群系统中主服务节点故障发生时,备份节点自动感知,备份态的节点自动转入选举态,基于内部多播,所有备份节点能根据事先制定的规则,自动选举出一台或多台新的主服务节点,并通知客户端服务节点的切换。本发明专利技术还提供实现上述方法的系统,该系统与服务中间件系统同机部署,系统根据设置的服务中间件信息,调用操作系统接口,来获取相应的服务中间件进程的运行信息,并根据返回的信息确定自身工作状态:主态、备态、选举态。在不同工作状态下,执行不同逻辑。本发明专利技术通过多播选举规则自行决定工作状态,在多播互通的基础上,调度管理整个系统的备份和切换,实现监控备份的自管理。

【技术实现步骤摘要】

本专利技术属于计算机中冗余热备
,具体涉及ー种特别针对云服务和集群内的关键服务中间件的自管理热备方法及系统。
技术介绍
随着云计算和集群的迅速发展,可靠性作为衡量服务质量的重要指标而受到广泛的重视,如何能方便快速构建高可靠性的分布式服务成为重要的课题。目前公知的动态热备技术采用两种方式实现(I)在服务软件内部,编写热备冗余模块,形成专用的热备份体系。 (2)利用专门的软硬件设备进行镜像备份和热切換。作为软件实现由于没有通用性,増加了构建备份体系的难度,同时增加热备机制后造成服务软件复杂度上升,这降低了服务中间件自身的稳定性。而利用软硬件镜像备份方式,由于镜像设备需要额外投入,这无疑会増加系统建设的成本,由于绝大多数服务是中间件系统方式,不会产生新数据,因此镜像方式起不到应有的作用,这样也造成了投资的浪费。同时对于大量现有的无热备功能的中间件系统,则无法采用软件手段构建具有高可靠的热备功能的中间件系统群。
技术实现思路
为了解决以上问题,本方案提出了ー种独立于服务中间件系统的基于多播选举技术的集群内中间件自管理热备方法,通过多播选举规则自行决定工作状态,在多播互通的基础上,调度管理整个系统的备份和切換,实现监控备份的自管理。本专利技术还提供了实现上述方法的系统。集群内中间件自管理热备方法,包括以下步骤( I)启动本机接收广播;( 2 )依据步骤(I)接收的广播检查集群系统内是否存在主态机广播,如果不存在,则进入步骤(3),否则进入步骤(12);(3)启动本机作为主态机广播;(4)启动本机监听接收广播;(5)根据步骤(4)接收的广播,检测是否存在超过预定数量的主态机,如果不存在,则进入步骤(6),否则进入步骤(15);( 6 )开启本机进程监控;(7)启动本机的服务中间件;(8)循环监控本机服务中间件进程;(9)如果服务中间件进程正常,则进入步骤(8)继续监控,否则进入步骤(10);(10)启动本机休眠以保证本机不进入下次的主态机选举,休眠结束进入步骤(11);(11)启动本机作为备态机循环监听接收广播;(12)如果在预定故障定时时长内接收到主态机广播,则进入步骤(11)继续监听,否则进入步骤(13);(13)启动本机作为选举态机定时发送携帯选举类型信息的广播,在预定选举时段内接收集群系统内其它处于选举态方式的服务器的携帯选举类型的广播消息,对选举类型汇总,根据汇总结果,按照预定的选举规则进行选举,以确定本机是否为主态机;(14)如果本机选举成为主态机,则进入步骤(3),否则停止广播,进入步骤(11);( 15)根据预定的选举规则重新确定本机是否为主态机;(16)如果本机是主态机,则进入步骤(6),否则停止广播,进入步骤(11)。 进ー步地,所述选举规则具体为将接收到的所有处于选举态工作模式的服务器IP地址与本机IP进行比较,若本机IP最大则自主升为主态机。实现所述方法的集群内中间件自管理热备系统,包括用于执行权利要求I或2所述方法的系统,该系统被安装于集群系统中的各服务器上。集群内中间件自管理热备系统,包括第一装置,用于启动本机接收广播;第二装置,用于依据第一装置接收的广播检查集群系统内是否存在主态机广播,如果不存在,则进入第三装置,否则进入第十二装置;第三装置,用于启动本机作为主态机广播;第四装置,用于启动本机监听接收广播;第五装置,用于根据第四装置接收的广播,检测是否存在超过预定数量的主态机,如果不存在,则进入第六装置,否则进入第十三装置;第六装置,用于开启本机进程监控;第七装置,用于启动本机的服务中间件;第八装置,用于循环监控本机服务中间件进程;第九装置,用于如果服务中间件进程正常,则进入第八装置继续监控,否则进入第十装置;第十装置,用于启动本机休眠以保证保证本机不进入下次的主态机选举,休眠结束进入第十一装置;第十一装置,用于启动本机作为备态机循环监听接收广播;第十二装置,用于如果在预定故障定时时长内接收到主态机广播,则进入第十一装置继续监听,否则进入第十三装置;第十三装置,用于启动本机作为选举态机定时发送携帯选举类型信息的广播,在预定选举时段内接收集群系统内其它处于选举态方式的服务器的携帯选举类型的广播消息,对选举类型汇总,根据汇总结果,按照预定的选举规则进行选举,以确定本机是否为主态机;第十四装置,用于如果本机选举成为主态机,则进入第三装置,否则停止广播,进入第i 装置;第十五装置,用于根据预定的选举规则重新确定本机是否为主态机;第十六装置,用于如果本机是主态机,则进入第六装置,否则停止广播,进入第i 装置。本专利技术的技术效果体现在本专利技术系统独立于服务中间件系统,与服务中间件同机部署,系统根据设置的服务中间件系统信息,调用操作系统接ロ,来获取相应的服务中间件进程的运行信息,并根据返回的信息确定自身工作状态主态、备态、选举态。在不同工作状态下,执行不同逻辑。通过分布在系统中的所有的系统协同工作来保证大系统正常服务的持续提供当大系统中主服务节点故障发生时,备份节点自动感知,备份态的系统自动转入选举态,基于内部多播,所有备份节点能根据事先制定的规则,自动选举出一台或多台新的主服务节点,并通知客户端服务节点的切換。本专利技术是ー种独立于服务中间件的系统设置方式,只需ー个完全同质的小系统,完全相同的配置方式,就可完成服务监控,主备状态切換,系统备份的自管理等工作,且无须改动服务中间件代码,就能支持现有的服务中间件系统,构建高可靠性集群服务系统。方 案属于对等同构冗余架构,以广播通讯为基础,实现动态可伸縮的冗余备份机制,整个过程自管理,同时支持客户端的自动切换功能的实现。附图说明图I为本专利技术系统工作状态变迁示意图。图2为本专利技术系统的工作流程示意图。具体实施例方式下面结合附图和实施例对本专利技术作进ー步的描述,但该实施例不应理解为对本专利技术的限制。图I为本专利技术系统工作状态变迁示意图。本专利技术系统定义三个工作状态主态,备态,选举态,三个工作状态的切换方式描述如下主态本机为工作服务器。出现故障转为备态运行。备态本机为备份服务器。当确定主态机故障后,自动转成选举态。选举态本机处于选举状态。利用广播信息,按照预定规则进行选举,自动完成选举程序,最終确定一台或多台主态机,启动主态机上的服务中间件。在系统中定义如下时间常量V0TE_DEADLINE :选举的最晚时限,设为4秒。BORAD_INTERVAL :插件定时广播的周期,设为2秒。CHECK_ERROR_INTERVAL :定义为 BR0AD_INTERVAL*3,插件监听主服务器状态,未收到消息包的超时时限,超过此时限插件由备份模式转入选举模式。系统间通讯协议定义如下servertype$host$port$statel$state2i$ :为消息分割符为消息结束符servertype :服务器类型(可支持系统内多种类型服务器的热备)host :服务器主机地址port:服务器端ロstatel :服务器工作状态(O :主态;1 :选举态)state2 :其它信息定义ー个简单易行的选举规则,这里以采取基于IP的选举规则为例根据接收到的所有处于选举态工作模式的广播的计算机的IP地址,对所有获取的IP地址与自己的IP进行比较,若自己的IP最大则自主升为主态机。三个状态的工本文档来自技高网...

【技术保护点】
集群内中间件自管理热备方法,其特征在于,包括以下步骤:(1)启动本机接收广播;(2)依据步骤(1)接收的广播检查集群系统内是否存在主态机广播,如果不存在,则进入步骤(3),否则进入步骤(12);(3)启动本机作为主态机广播;(4)启动本机监听接收广播;(5)根据步骤(4)接收的广播,检测是否存在超过预定数量的主态机,如果不存在,则进入步骤(6),否则进入步骤(15);(6)开启本机进程监控;(7)启动本机的服务中间件;(8)循环监控本机服务中间件进程;(9)如果服务中间件进程正常,则进入步骤(8)继续监控,否则进入步骤(10);(10)启动本机休眠以保证本机不进入下次的主态机选举,休眠结束进入步骤(11);(11)启动本机作为备态机循环监听接收广播;(12)如果在预定故障定时时长内接收到主态机广播,则进入步骤(11)继续监听,否则进入步骤(13);(13)启动本机作为选举态机定时发送携带选举类型信息的广播,在预定选举时段内接收集群系统内其它处于选举态方式的服务器的携带选举类型的广播消息,对选举类型汇总,根据汇总结果,按照预定的选举规则进行选举,以确定本机是否为主态机;(14)如果本机选举成为主态机,则进入步骤(3),否则停止广播,进 入步骤(11);(15)根据预定的选举规则重新确定本机是否为主态机;(16)如果本机是主态机,则进入步骤(6),否则停止广播,进入步骤(11)。...

【技术特征摘要】
1.集群内中间件自管理热备方法,其特征在于,包括以下步骤 (1)启动本机接收广播; (2)依据步骤(I)接收的广播检查集群系统内是否存在主态机广播,如果不存在,则进入步骤(3),否则进入步骤(12); (3)启动本机作为主态机广播; (4)启动本机监听接收广播; (5)根据步骤(4)接收的广播,检测是否存在超过预定数量的主态机,如果不存在,则进入步骤(6),否则进入步骤(15); (6)开启本机进程监控; (7)启动本机的服务中间件; (8)循环监控本机服务中间件进程; (9)如果服务中间件进程正常,则进入步骤(8)继续监控,否则进入步骤(10); (10)启动本机休眠以保证本机不进入下次的主态机选举,休眠结束进入步骤(11); (11)启动本机作为备态机循环监听接收广播; (12)如果在预定故障定时时长内接收到主态机广播,则进入步骤(11)继续监听,否则进入步骤(13); (13)启动本机作为选举态机定时发送携帯选举类型信息的广播,在预定选举时段内接收集群系统内其它处于选举态方式的服务器的携帯选举类型的广播消息,对选举类型汇总,根据汇总结果,按照预定的选举规则进行选举,以确定本机是否为主态机; (14)如果本机选举成为主态机,则进入步骤(3),否则停止广播,进入步骤(11); (15)根据预定的选举规则重新确定本机是否为主态机; (16)如果本机是主态机,则进入步骤(6),否则停止广播,进入步骤(11)。2.根据权利要求I所述的集群内中间件自管理热备方法,其特征在于,所述选举规则具体为将接收到的所有处于选举态工作模式的服务器IP地址与本机IP进行比较,若本机IP最大则自主升为主态机。3.实现权利要求I或...

【专利技术属性】
技术研发人员:李晨阳
申请(专利权)人:武汉达梦数据库有限公司
类型:发明
国别省市:

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

1