一种CTDB节点故障虚拟IP迁移的方法及装置与流程

文档序号:16007074发布日期:2018-11-20 20:11阅读:906来源:国知局

本发明涉及集群管理技术领域,具体涉及一种CTDB节点故障虚拟IP迁移的方法及装置。



背景技术:

随着分布式文件存储系统的快速发展,其适用范围越来越广泛,存储节点也越来越多,现阶段的分布式文件存储系统客户端通过手动指定节点IP挂载nfs/cifs协议进行vbench业务读写。但当存储设备出现节点故障时,客户端业务将会中断,CTDB(Clustering TDB)进行虚拟IP的重新分配,该故障节点对应的虚拟IP将迁移至其他节点。

重启该故障节点时,虚拟IP迁移回该节点,但虚拟IP的迁移需要一定时间,仍然会造成客户端业务中断的情形。此外,当虚拟IP进行业务时,虚拟IP的来回迁移会造成CTDB集群的不稳定,同时降低CTDB集群的可利用性。为解决上述问题,本发明提供一种CTDB节点故障虚拟IP迁移的方法及装置。



技术实现要素:

本发明的目的是提供一种CTDB节点故障虚拟IP迁移的方法及装置,用于CTDB节点故障重启时虚拟IP的迁移,避免出现业务中断的情形,同时提高集群的稳定性及可用性。

为解决上述技术问题,本发明提供一种CTDB节点故障虚拟IP迁移的方法,包括:

重启故障节点,返回该故障节点对应的虚拟IP;

判断该虚拟IP是否进行业务:

若该虚拟IP未进行业务,则将该虚拟IP迁移至故障节点;

若该虚拟IP正在进行业务,查看未进行业务的虚拟IP,并将未进行业务的虚拟IP迁移至故障节点。

进一步的,所述重启故障节点,返回该故障节点对应的虚拟IP包括:CTDB主节点通过调用nfc命令返回该故障节点对应的虚拟IP。

进一步的,所述若该虚拟IP正在进行业务,查看未进行业务的虚拟IP,并将未进行业务的虚拟IP迁移至故障节点包括:通过调用CTDB的IP命令查看未进行业务的虚拟IP。

进一步的,当重启故障节点,返回该故障节点的虚拟IP为空时,进行告警提示。

进一步的,当重启故障节点,返回该故障节点的虚拟IP为空时,添加重试次数并控制在一定时间内,当该故障节点的虚拟IP一直返回为空时,进行告警提示。

进一步的,所述重试次数为30次,所述控制时间为30s。

为解决上述问题,本发明还提供一种CTDB节点故障虚拟IP迁移的的装置,包括:

返回模块,用于重启故障节点后,返回该故障节点对应的虚拟IP;

判断模块,用于判断该虚拟IP是否进行业务;

迁移模块,用于当判断模块判断该虚拟IP未进行业务时,将该虚拟IP迁移至故障节点;当判断模块判断该虚拟IP正在进行业务,查看未进行业务的虚拟IP,将未进行业务的虚拟IP迁移至故障节点。

进一步的所述迁移模块具体包括:

第一迁移单元,用于当判断模块判断该虚拟IP未进行业务时,将该虚拟IP迁移至故障节点;

虚拟IP查看单元,用于当判断模块判断该虚拟IP进行业务时,查看未进行业务的虚拟IP;

第二迁移单元,选取虚拟IP查看单元内未进行业务的虚拟IP,并将该未进行业务的虚拟IP迁移至故障节点。

进一步的,所述CTDB节点故障虚拟IP迁移的装置还包括:告警模块,用于当重启故障节点后,返回该故障节点的虚拟IP为空时,进行告警提示。

该种CTDB节点故障虚拟IP迁移的方法能在节点故障重启后,返回该节点对应的的虚拟IP;判断该虚拟IP是否进行业务:若该虚拟IP未进行业务,则将该虚拟IP迁移至故障节点;若该虚拟IP正在进行业务,查看未进行业务的虚拟IP,并将未进行业务的虚拟IP迁移至故障节点,避免了传统情形下,虚拟IP迁移回节点需浪费一定时间,进而造成客户端业务中断的情形,同时,该方案对虚拟IP的业务状态进行判断,若虚拟IP正在进行业务,则迁移未进行业务的虚拟IP至故障节点,避免了传统情形下进行业务的虚拟IP来回迁移造成的CTDB集群的不稳定,同时提高了CTDB集群的可利用性。

此外,本发明还提供一种CTDB节点故障虚拟IP迁移的装置,同样具有上述有益效果。

附图说明

为了更清楚的说明本发明实施例,下面将实施例中所需要使用的附图做简单的介绍,显而易见的,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例CTDB节点故障虚拟IP迁移的方法的流程图。

图2为本发明实施例CTDB节点故障虚拟IP迁移的装置示意图。

具体实施方式

下面结合本发明实施例中的附图,对发明实施例中的技术方案进行清楚完整的描述,显然,所描述的实施例仅仅为本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

为了使本技术领域的人员更好的理解本发明方案,下面结合附图和具体实施方式对本发明做进一步的详细说明。

接下来,详细介绍本发明实施例所提供的一种CTDB节点故障虚拟IP迁移的方法。图1为本发明实施例提供的实施例CTDB节点故障虚拟IP迁移的方法的流程图,该方法包括:

S101:重启故障节点,返回该故障节点对应的虚拟IP;

S102:判断该虚拟IP是否进行业务:

若该虚拟IP未进行业务,则将该虚拟IP迁移至故障节点;

若该虚拟IP正在进行业务,查看未进行业务的虚拟IP,并将未进行业务的虚拟IP迁移至故障节点。

进一步的,所述重启故障节点,返回该故障节点对应的虚拟IP包括:CTDB主节点通过调用nfc命令返回该故障节点对应的虚拟IP。

进一步的,所述若该虚拟IP正在进行业务,查看未进行业务的虚拟IP,并将未进行业务的虚拟IP迁移至故障节点包括:通过调用CTDB的IP命令查看未进行业务的虚拟IP。

以三个节点的CTDB集群为例,具体说明上述过程:

1. CTDB集群三个节点的虚拟IP分别为test01(100.7.43.181)、test02(100.7.43.182)、test03(100.7.43.183);

2.客户端挂载test01,并开启vdbench业务;

3.业务持续过程中,在test01节点执行重启命令,vdbench显示带宽为0,此时虚拟IP顺序为test02(100.7.43.181、100.7.43.182),test03(100.7.43.183),即虚拟IP(100.7.43.181)迁移至test02节点并进行业务;

4.在vdbench业务恢复之后,test01启动完成,虚拟IP顺序为test01(100.7.43.182)、test02(100.7.43.181)、test03(100.7.43.183)。

该种CTDB节点故障虚拟IP迁移的方法能在节点故障重启后,返回该节点对应的的虚拟IP;判断该虚拟IP是否进行业务:若该虚拟IP未进行业务,则将该虚拟IP迁移至故障节点;若该虚拟IP正在进行业务,查看未进行业务的虚拟IP,并将未进行业务的虚拟IP迁移至故障节点,避免了传统情形下,虚拟IP迁移回节点需浪费一定时间,进而造成客户端业务中断的情形,同时,该方案对虚拟IP的业务状态进行判断,若虚拟IP正在进行业务,则迁移未进行业务的虚拟IP至故障节点,避免了传统情形下进行业务的虚拟IP来回迁移造成的CTDB集群的不稳定,同时提高了CTDB集群的可利用性。

在上述步骤中可能会出现当重启故障节点,返回该故障节点的虚拟IP为空的情形,此时则无法完成节点故障虚拟IP迁移的目的,为能够及时将该种情形反馈给用户,添加重试次数30次并控制在30s内,当该故障节点的虚拟IP一直返回为空时,进行告警提示。

图2为本发明实施例提供的CTDB节点故障虚拟IP迁移的装置示意图,包括返回模块21、判断模块22、迁移模块23;

上述返回模块21,用于重启故障节点后,返回该故障节点对应的虚拟IP;

判断模块22,用于判断该虚拟IP是否进行业务;

迁移模块23,用于当判断模块判断该虚拟IP未进行业务时,将该虚拟IP迁移至故障节点;当判断模块判断该虚拟IP正在进行业务,查看未进行业务的虚拟IP,将未进行业务的虚拟IP迁移至故障节点。

具体的,迁移模块具体包括:

第一迁移单元,用于当判断模块判断该虚拟IP未进行业务时,将该虚拟IP迁移至故障节点;

虚拟IP查看单元,用于当判断模块判断该虚拟IP进行业务时,查看未进行业务的虚拟IP;

第二迁移单元,选取虚拟IP查看单元内未进行业务的虚拟IP,并将该未进行业务的虚拟IP迁移至故障节点。

进一步的,所述CTDB节点故障虚拟IP迁移的装置还包括:告警模块,用于当重启故障节点后,返回该故障节点的虚拟IP为空时,进行告警提示。

图2所对应的实施例中的特征说明可以参照图1所对应的实施例的相关说明,这里不再一一赘述。

以上对本发明实施例所提供的一种客户端负载均衡挂载虚拟IP的方法、系统、装置进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,因此描述的较为简单,相关会出参见方法部分说明即可。以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1