一种主节点和备节点切换的方法和装置的制造方法

文档序号:8361299阅读:506来源:国知局
一种主节点和备节点切换的方法和装置的制造方法
【技术领域】
[0001]本申请涉及通信技术领域,特别是涉及一种主节点和备节点切换的方法和一种主节点和备节点切换的装置。
【背景技术】
[0002]主备管理是一种保证设备可靠性的技术,它是指在一台设备处于某种业务的激活状态(即Active状态),另一台服务器处于该业务的备用状态(即Standby状态)时,备用设备(即Backup或Slave)对数据做备份处理。当主设备(即Master)出现故障时,系统能将业务及时切换到备用设备,保证业务不间断的进行。
[0003]归属签约用户服务器(Home Subscriber Server,HSS)作为通信网络的重要组成部分,其主要作用是存储用户数据和签约数据,并且向发起请求的网元提供数据服务,因此,任何原因导致的硬件或软件故障,如计划性停机(版本升级或周期性维护)、突发性停机(宕机或掉电),都将直接导致部分用户数据或业务数据不可用,从而影响到通信网络的正常使用。
[0004]目前现有的服务器主备管理方案主要是通过采用第三方软件的实现主备节点的用户及业务数据实时同步,并通过第三方软件实现主备节点间的健康检查,通常采用传输控制协议(Transmiss1n Control Protocol,TCP)方式进行心跳检测。由于现有的服务器主备管理方案中依赖第三方软件进行数据同步和健康检测,而第三方软件向外提供的接口较少,灵活性差,二次开发难度较大,无法有效保证服务器的可靠性和稳定性。
[0005]因此,目前需要本领域技术人员迫切解决的一个技术问题就是:提出一种主节点和备节点切换的机制,解决现有技术中依赖第三方软件进行数据同步和健康检测,无法有效保证服务器的可靠性和稳定性的技术问题。

【发明内容】

[0006]本申请实施例所要解决的技术问题是提供一种主节点和备节点切换的方法,用以解决现有技术中依赖第三方软件进行数据同步和健康检测,无法有效保证服务器的可靠性和稳定性的技术问题。
[0007]相应的,本申请实施例还提供了一种主节点和备节点切换的装置,用以保证上述方法的实现及应用。
[0008]为了解决上述问题,本申请公开了一种主节点和备节点切换的方法,所述主节点和备节点同时运行并共用同一浮动IP地址,所述浮动IP地址与主节点关联,所述的方法包括:
[0009]依据预设的主节点检测条件,判断所述主节点是否运行异常;
[0010]若是,则将所述备节点切换为新的主节点,并将原主节点切换为新的备节点,以及,将所述主节点和备节点的数据信息以及版本文件进行同步;
[0011]若否,则将所述主节点和备节点的数据信息以及版本文件进行同步。
[0012]优选的,所述主节点检测条件从预设的配置文件keepalived.cnf中获得,所述配置文件keepalived.cnf由shell脚本生成。
[0013]优选的,将所述主节点和备节点的数据信息进行同步的步骤包括:
[0014]将所述主节点的数据信息传输至所述备节点;
[0015]和/ 或,
[0016]将所述备节点的数据信息传输至所述主节点。
[0017]优选的,所述将所述主节点的数据信息传输至所述备节点的子步骤进一步包括:
[0018]获取所述主节点的日志中的日志事件至备节点的日志;所述日志事件包括生成数据信息的步骤;
[0019]重做所述日志事件,获得所述日志事件对应的数据信息。
[0020]优选的,所述获取所述主节点的日志中的日志事件至备节点的日志的子步骤进一步包括:
[0021]监听所述主节点的日志是否存在新增的日志事件;
[0022]若是,则获取所述新增的日志事件至备节点的日志。
[0023]优选的,将所述主节点和备节点的版本文件进行同步的步骤包括:
[0024]按照预设的时间间隔将所述主节点的版本文件通过安全外壳协议SSH加密通道传输至所述备节点。
[0025]优选的,所述主节点和备节点具有优先级,所述将所述备节点切换为新的主节点,并将原主节点切换为新的备节点的步骤包括:
[0026]将所述备节点按照优先级进行排序;
[0027]将优先级最高的备节点切换为新的主节点,建立所述浮动IP地址与所述新的主节点的关联;
[0028]将原主节点切换为新的备节点,断开所述浮动IP地址与所述原主节点的关联。
[0029]为了解决上述问题,本申请还公开了一种主节点和备节点切换的装置,所述主节点和备节点同时运行并共用同一浮动IP地址,所述浮动IP地址与主节点关联,所述的装置包括:
[0030]判断模块,用于依据预设的主节点检测条件,判断所述主节点是否运行异常;若是,则调用切换模块以及同步模块;若否,则调用同步模块;
[0031]切换模块,用于将所述备节点切换为新的主节点,并将原主节点切换为新的备节占.V,
[0032]同步模块,用于将所述主节点和备节点的数据信息以及版本文件进行同步。
[0033]优选的,所述主节点检测条件从预设的配置文件keepalived.cnf中获得,所述配置文件keepalived.cnf由shell脚本生成。
[0034]优选的,所述同步模块包括:
[0035]第一数据信息同步子模块,用于将所述主节点的数据信息传输至所述备节点;
[0036]和/ 或,
[0037]第二数据信息同步子模块,用于将所述备节点的数据信息传输至所述主节点。
[0038]优选的,所述第一数据信息同步子模块进一步包括:
[0039]日志事件获取单元,用于获取所述主节点的日志中的日志事件至备节点的日志;所述日志事件包括生成数据信息的步骤;
[0040]日志事件重做单元,用于重做所述日志事件,获得所述日志事件对应的数据信息。
[0041]优选的,所述日志事件获取单元进一步包括:
[0042]监听子单元,用于监听所述主节点的日志是否存在新增的日志事件;若是,则调用获取子单元;
[0043]获取子单元,用于获取所述新增的日志事件至备节点的日志。
[0044]优选的,所述同步模块包括:
[0045]版本文件同步子模块,用于按照预设的时间间隔将所述主节点的版本文件通过安全外壳协议SSH加密通道传输至所述备节点。
[0046]优选的,所述切换模块包括:
[0047]优先级排序子模块,用于将所述备节点按照优先级进行排序;
[0048]备节点切换子模块,用于将优先级最高的备节点切换为新的主节点,建立所述浮动IP地址与所述新的主节点的关联;
[0049]主节点切换子模块,用于将原主节点切换为新的备节点,断开所述浮动IP地址与所述原主节点的关联。
[0050]与现有技术相比,本申请实施例包括以下优点:
[0051]第一,本申请实施例通过主节点和备节点同时运行并共用同一浮动IP地址提供服务,将所述主节点和备节点的数据信息以及版本文件进行同步,依据预设的主节点检测条件,判断所述主节点是否运行异常,一旦出现主节点故障,就切换到备节点上继续运行并提供业务使用,有效地保证节点的可靠性和稳定性。
[0052]第二,本申请实施例通过第三方软件keepalived实现节点的健康检测,可以通过写入shel I脚本生成新的配置文件keepal ived.cnf,实现对第三方软件keepal ived的检测条件进行设置或者修改,从而可以根据用户需求对检测条件进行补充设置,使检测条件的设置更加灵活,从而进一步保证节点的可靠性和稳定性。
[0053]第三,本申请实施例通过获取日志事件,重做所述日志事件,获得所述日志事件对应的数据信息的方式,实现主、备节点中数据信息的同步。由于日志事件的数据量远小于数据信息的数据量,因此,相对于通过直接获取节点中的数据信息实现节点间的数据同步的方式,本申请实施例可以减少所述主节点和备节点的数据信息进行同步时传输的数据量,减少了资源的占用。
[0054]第四,本申请实施例通过监听是否存在新增的日志事件,当存在新增的日志事件时,获取所述新增的日志事件,从而实现了数据信息实时的监听,实时的同步,使主、备节点的数据信息同步更加及时,提升了节点的可靠性。
【附图说明】
[0055]图1是本申请的一种主节点和备节点切换的方法实施例1的步骤流程图;
[0056]图2是第三方
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1