一种基于IPSAN服务器双机备份方法和系统与流程

文档序号:14155862阅读:370来源:国知局

本发明涉及服务器数据存储技术领域,特别是涉及一种基于ipsan服务器双机备份方法和系统。



背景技术:

在云计算迅猛发展的今天,服务器作为云计算体系中一项至关重要的基础设施,其可靠性越来越受到人们关注。

服务器是一种硬件设备,真正对外提供服务的是服务器上运行的软件,而根据软件类型的不同,服务器可分为http服务器、域服务器、数据库服务器等不同作用的服务器。不论服务器上运行何种软件,他们都有一个共同的目的,即通过互联网对外提供某种服务,而服务器的可靠性是指在服务器发生故障时,仍能继续对外界提供服务的能力。

为达到此目的,关键服务器通常采用双机备份的方法来提高可靠性,即搭建一台主服务器和一台备用服务器,当主服务器出现故障时,切换到备用服务器继续提供服务。这一技术需要解决的两个关键问题就是主备服务器之间的数据同步和故障切换方式。在传统的双机备份模式中数据同步主要依靠同步或异步远程复制的方式,将数据同时保存在主备服务器的硬盘上,但是这样两次写入必然会降低数据传输的速率,从而影响上层服务的性能,如果在发生故障时数据还没有完成同步则有可能造成数据丢失,从而造成主备服务器数据不一致的情况发生,另外当主服务器故障排除之后又需要与备用服务器进行数据同步,在同步进行期间,服务器将失去任何冗余度。传统双机备份进行故障切换往往需要维护人员根据主服务器的告警信息获取服务器状态并进行手动切换,不但消耗人力,切换过程中还有可能造成服务中断,从而带来损失。



技术实现要素:

本发明的目的是提供了一种基于ipsan服务器双机备份系统和方法,避免了主备用服务器直接的数据同步,提升性能的同时保持了数据一致性,自动进行故障切换,减少服务停止时间,节约维护成本。

为解决上述技术问题,本发明实施例提供了一种基于ipsan服务器双机备份系统,包括主服务器、备用服务器、心跳检测模块和san存储器,所述san存储器与所述主服务器、备用服务器连接,通过建立lun通过iscsi协议同时映射所述主服务器、所述备用服务器,用于存储所述主服务器、所述备用服务器安装的相同的数据库应用程序对应的数据库文件,所述心跳检测模块与所述主服务器、所述备用服务器连接,用于在检测到所述主服务器心跳ip地址处于非连通状态时,判断所述主服务器处于宕机状态,刷新所述lun对应的iscsi,将所述主服务器连接互联网对应的第一网口的ip绑定到所述备用服务器用于连接互联网的第一网口,并启用所述备用服务器的第一网口和启动所述备用服务器的数据库应用程序。

其中,还包括与所述心跳检测模块连接的设置模块,用于输入所述心跳检测模块检测所述主服务器、所述备用服务器的时间周期。

其中,还包括与所述心跳检测模块连接的警告输出模块,用于在所述心跳检测模块检测到所述主服务器心跳ip地址处于非连通状态时,判断所述主服务器处于宕机状态后,向维护人员输出报警信息或发出警报。

其中,还包括与所述心跳检测模块连接的状态显示模块,用于显示当前所述主服务器、备用服务器的使用状态以及维护状态。

其中,还包括与所述主服务器、所述备用服务器、所述心跳检测模块连接的日志记录输出模块,用于将所述主服务器、所述备用服务器发生宕机、故障切换和重新上线的时刻进行记录和输出。

除此之外,本发明实施例还提供了一种基于ipsan服务器双机备份方法,包括:

步骤1,检测主服务器的心跳ip地址是否处于连通状态;

若否,步骤2,判定所述主服务器处于宕机状态,刷新存放数据库文件的lun所对应的iscsi链接;

步骤3,将所述主服务器连接互联网对应的第一网口的ip绑定到备用服务器的用于互联网连接的第一网口;

步骤4,启用所述备用服务器的第一网口和启动所述备用服务器的数据库应用程序;

其中,所述lun为san存储器通过iscsi协议映射到同时连接的所述主服务器、所述备用服务器的lun,用于存储所述主服务器、所述备用服务器的数据库安装的相同的数据库应用程序对应的数据库文件。

其中,所述检测主服务器的心跳ip地址是否处于连通状态为每隔0.5s~1s检测所述主服务器的心跳ip地址是否处于连通状态。

其中,在所述步骤4之后,还包括:

判断是否发生所述主服务器宕机或已经启用所述备用服务器;

若是,将所述主服务器的信息发送到维护人员,和/或发出宕机警报。

其中,在所述步骤4之后,还包括:

判断所述主服务器是否已经恢复正常;

若是,刷新存放数据库文件的lun所对应的iscsi链接,将所述备用服务器连接互联网对应的第一网口的ip绑定到所述主服务器的用于互联网连接的第一网口,并启用所述主服务器的第一网口和启动所述主服务器的数据库应用程序。

其中,在所述步骤4之后,还包括:

获取并输出所述主服务器、所述备用服务器的当前状态。

本发明实施例所提供的基于ipsan服务器双机备份方法和系统,与现有技术相比,具有以下优点:

所述基于ipsan服务器双机备份方法和系统,通过将服务器应用程序安装在主服务器和备用服务器,与应用程序对应的数据库文件存储在san存储器,完成数据与应用的分离,使用网线连接主服务器和备用服务器,组成心跳网络,检测到心跳ip地址处于非连通状态,即可判断其已经宕机需要进行故障切换。主服务器在进行故障切换时,绑定主服务器ip,进行ip漂移,并启动备用服务器的应用程序提供服务,由于使用了san存储器进行应用程序的数据库文件存储,在主服务器故障切换时无需数据同步,提升了系统性能的同时,保持了数据的一致性,减少服务停止时间,节约维护成本。

附图说明

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

图1为本发明实施例提供的基于ipsan服务器双机备份系统的一种具体实施方式的结构示意图;

图2为本发明实施例提供的基于ipsan服务器双机备份方法的一种具体实施方式的步骤流程示意图。

具体实施方式

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

请参考图1~2,图1为本发明实施例提供的基于ipsan服务器双机备份系统的一种具体实施方式的结构示意图;图2为本发明实施例提供的基于ipsan服务器双机备份方法的一种具体实施方式的步骤流程示意图。

在一种具体实施方式中,所述基于ipsan服务器双机备份系统,包括主服务器10、备用服务器20、心跳检测模块30和san存储器40,所述san存储器40与所述主服务器10、备用服务器20连接,通过建立lun通过iscsi协议同时映射所述主服务器10、所述备用服务器20,用于存储所述主服务器10、所述备用服务器20安装的相同的数据库应用程序对应的数据库文件,所述心跳检测模块30与所述主服务器10、所述备用服务器20连接,用于在检测到所述主服务器10心跳ip地址处于非连通状态时,判断所述主服务器10处于宕机状态,刷新所述lun对应的iscsi,将所述主服务器10连接互联网对应的第一网口的ip绑定到所述备用服务器20用于连接互联网的第一网口,并启用所述备用服务器20的第一网口和启动所述备用服务器20的数据库应用程序。

本发明中使用iscsi协议将san存储器40上的同一个lun同时映射给主备服务器,采用san存储作为服务器应用程序保存重要数据的载体,避免了主备服务器之间的数据同步,提高了服务器应用程序的性能,同时彻底避免了主备服务器间数据不一致的情况发生。并且在主备服务器之间搭建直连心跳网络,通过运行在备用服务器20上的心跳监控程序实时监控主服务器10状态,在主服务器10宕机之后,自动执行ip漂移以及服务启动流程,缩短了故障切换的时间,无需人工干预,降低了人力成本。

本发明中的心跳检测模块30,就是通过心跳线连接主服务器10和备用服务器20,检测其ip地址是否处于通用状态,心跳检测可以独立于主服务器10、备用服务器20之外,也可以设置在主服务器10和备用服务器20上,本发明对此并作限定,而且本发明对于心跳检测的周期不做限定,可鞥对于不同的用户来说,需要根据不同的环境进行了灵活检测,如服务器处理压力很大时,容易发生宕机,需要进行更频繁的检测,反之需要降低检测频率,因此在本发明的一个实施例中,所述基于ipsan服务器双机备份系统还包括与所述心跳检测模块30,用于输入所述心跳检测模块30检测所述主服务器10、所述备用服务器20的时间周期。

需要的指出的是,这里的设置模块,用于输入所述心跳检测模块30检测所述主服务器10、所述备用服务器20的时间周期,可以用系统维护人员进行手动输入,也可以是预先设定数据库,根据系统的运行状态自动进行调节。

在本发明的一个实施例中,基于ipsan服务器双机备份系统如下:

配置两台服务器,选定其中一台作为主服务器10,另一台作为备用服务器20;分别为主备服务器安装同样的数据库应用程序;使用一根网线(心跳线)连接主备服务器的网口2,将主服务器10网口2的ip设置为192.168.100.1,将备用服务器20的网口2的ip设置为192.168.100.2。这两个ip即是心跳ip;分别将主备服务器的网口1接入互联网,并将主服务器10网口1的ip设置为数据库应用程序对外提供服务的ip,备用服务器20的网口1无需启用;将主备服务器通过ip网络与san存储器40连接,在san存储器40上建立一个lun,并将该lun通过iscsi协议映射到主备服务器上,在服务器上格式化,并进行挂载;配置主备服务器上的数据库应用,使数据库的数据库文件保存在上述lun中;启动主服务器10上的数据库应用程序,停止备用服务器20的数据库应用程序;启动备用服务器20上的“心跳监控程序”。

至此,双机备份的服务器环境已搭建完毕,上述步骤中的“心跳监控程序”可以是使用任意语言实现的后台应用程序,使用流程如下:每隔1s检测主服务器10的心跳ip192.168.100.1是否可以连通;若能连通,则说明主服务器10没有宕机,等待1s后继续进行检测;若无法连通,则说明主服务器10已宕机,无法再提供服务,启动如下故障切换流程;刷新存放数据库文件的lun所对应的iscsi链接,确保数据库文件可以正常访问;将主服务器10网口1的ip也即数据库对外提供服务的ip绑定到备用服务器20的网口1上,并启用该网口;;启动备用服务器20上的数据库应用程序。至此,备用服务器20便可使用原主服务器10对外提供数据库服务的ip继续对外部客户端提供数据库服务,并且数据库应用程序使用的数据库文件也是最新的数据库文件。实现了故障切换。

在该实施例中,通过将数据库应用程序对应的数据库文件存储在san存储器40中,避免了主备用服务器20直接的数据同步,避免了在同步器件服务器可能失去任何冗余的情况的发生。

为了进一步提高系统的维护效率,在本发明的一个实施例中,所述基于ipsan服务器双机备份系统还包括与所述心跳检测模块30连接的警告输出模块,用于在所述心跳检测模块30检测到所述主服务器10心跳ip地址处于非连通状态时,判断所述主服务器10处于宕机状态后,向维护人员输出报警信息或发出警报。

通过在发生服务器故障时,在进行故障转换后,维护人员通过获取报警信息进行快速维护以及宕机服务器的快速定位,提高维护效率,降低维护成本。

由于在一些工作站,尤其是大型工作站中,一般会使用非常多的服务器,维护人员对于服务器的状态的获知,只是存在于正在使用的服务器,而处于非使用状态的备用服务器20,对于其是否可以使用,是不清楚的,例如,在一组主服务器10和备用服务器20中,主服务器10能够正常使用,但是却不知道备用服务器20是否可以在主服务器10发生故障时进行快速切换,维护人员不知道备用服务器20是否需要还包括与所述心跳检测模块30连接的状态显示模块,用于显示当前所述主服务器10、备用服务器20的使用状态以及维护状态。

而为了进一步提高对服务器的维护效率,在本发明的一个实施例中,所述基于ipsan服务器双机备份系统还包括与所述主服务器10、所述备用服务器20、所述心跳检测模块30连接的日志记录输出模块,用于将所述主服务器10、所述备用服务器20发生宕机、故障切换和重新上线的时刻进行记录和输出。

通过记录主服务器10、备用服务器20发生使用状态变化的过程,能够更加针对性的实现对服务器更高效率的维护,提高维护效率。

在本发明中,在主服务器10发生故障,进行ip漂移实现故障转移之后,备用服务器20替代主服务器10的功能,实现系统的正常运行。这时,原来的备用服务器20可以视作备用服务器20,然后在主服务器10维护好之后,再将原有的应用程序再次进行ip漂移,交还原来的服务器,或者是将进行ip漂移之后的备用服务器20有系统默认为主服务器10,将原来的主服务器10进行维护后默认为备用服务器20,这种方式能够尽可能减少发生ip漂移的次数,提高系统运行效率,而且由于主服务器10和备用服务器20之间的工作时间基本相当,不会出现,备用服务器20的使用极少,而主服务器10超长时间使用,提高了二者的使用寿命,减少发生故障的次数,降低系统的维护效率。

除此之外,本发明实施例还提供了一种基于ipsan服务器双机备份方法,包括:

步骤1,检测主服务器的心跳ip地址是否处于连通状态;主要是通过在主服务器和备用服务器之间通过连接心跳线,组建心跳网络实现。

若否,步骤2,判定所述主服务器处于宕机状态,刷新存放数据库文件的lun所对应的iscsi链接;

步骤3,将所述主服务器连接互联网对应的第一网口的ip绑定到备用服务器的用于互联网连接的第一网口;在判定主服务器处于宕机状态的基础上,刷新iscsi链接,实现备用服务器的的第一网口与互联网的连接。

步骤4,启用所述备用服务器的第一网口和启动所述备用服务器的数据库应用程序;在实现备用服务器与互联网连接之后,进行ip漂移,使用备用服务器的网口和相应的数据库应用程序。

其中,所述lun为san存储器通过iscsi协议映射到同时连接的所述主服务器、所述备用服务器的lun,用于存储所述主服务器、所述备用服务器的数据库安装的相同的数据库应用程序对应的数据库文件。

本发明中对于心跳ip的检测频率不做具体限定,一般所述检测主服务器的心跳ip地址是否处于连通状态为每隔0.5s~1s检测所述主服务器的心跳ip地址是否处于连通状态。

需要指出的是,本发明中的主服务器的心跳ip地址的检测并不局限于上述的范围,使用者可以根据需要进行调节,或者是根据系统的运行情况进行自动调节。

由于在工作站中,一般会有大量的服务器同时进行工作,如果出现服务器故障,对于而为了进一步提高维护效率,在本发明的一个实施例中,在所述步骤4之后,还包括:

判断是否发生所述主服务器宕机或已经启用所述备用服务器;

若是,将所述主服务器的信息发送到维护人员,和/或发出宕机警报。

由于在主服务器发生故障宕机之后,维护人员一般会进行维护,由于主服务器和备用服务器是主备份关系,必须在同一时间至少有一个服务器能够正常工作。主服务器在发生故障之后,启用备用服务器工作,但是备用服务器在工作的过程中,也可能发生故障。如出现最初设置的备用服务器在工作过程中,发生故障而五服务器作为备份,系统就无法正常运转。因此,一般会进行及时对主服务器进行维护,主服务器能够正常工作之后,可以是主服务器将当前的备用服务器的工作任务进行接管,备用服务器始终作为备用,或者是在备用服务器接管当前的系统任务之后,系统自动判定其为主服务器,而将维护好的原先的主服务器作为备用服务器,这样能够减少系统的ip漂移的次数,使得整个系统中主服务器和备用服务器的工作寿命接近,提高其工作稳定性。因此,在一个实施例中,在所述步骤4之后,还包括:

判断所述主服务器是否已经恢复正常;

若是,刷新存放数据库文件的lun所对应的iscsi链接,将所述备用服务器连接互联网对应的第一网口的ip绑定到所述主服务器的用于互联网连接的第一网口,并启用所述主服务器的第一网口和启动所述主服务器的数据库应用程序。

本发明中刷新存放数据库文件的lun所对应的iscsi链接的目的在于,为将原有的主服务器的数据库应用程序指向存储数据库文件的lun,变为备用服务器形成触发条件,改变当前的数据传输线路和指向关系。

由于在一个工作站中,通常会有很多的服务器,为了提高对服务器的维护效率,工作人员需要实施获得当前的服务器的状态,因此,在本发明的一个实施例中,在所述步骤4之后,还包括:

获取并输出所述主服务器、所述备用服务器的当前状态。

通过获取和输出所述主服务器、所述备用服务器的当前状态,工作人员能够准确的得到哪台服务器在正常工作,哪服务器能够作为正常的备份服务器,哪台服务器发生宕机需要维护,从而进行快速定位维护。

综上所述,本发明实施例提供的基于ipsan服务器双机备份方法和系统,通过将服务器应用程序安装在主服务器和备用服务器,与应用程序对应的数据库文件存储在san存储器,完成数据与应用的分离,使用网线连接主服务器和备用服务器,组成心跳网络,检测到心跳ip地址处于非连通状态,即可判断其已经宕机需要进行故障切换。主服务器在进行故障切换时,绑定主服务器ip,进行ip漂移,并启动备用服务器的应用程序提供服务,由于使用了san存储器进行应用程序的数据库文件存储,在主服务器故障切换时无需数据同步,提升了系统性能的同时,保持了数据的一致性,减少服务停止时间,节约维护成本。

以上对本发明所提供的基于ipsan服务器双机备份方法和系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

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