一种支持自动故障切换的文件共享方法
【技术领域】
[0001]本发明涉及通信技术领域,特别是涉及一种支持自动故障切换的文件共享方法。
【背景技术】
[0002]目前,在通常的文件共享服务环境中,为了保证共享服务的高可用性,通常对文件共享服务采用主、备双机的方式,主、备机之间通过心跳线彼此检测对方的状态,且通过挂接SAN磁盘阵列的方式主、备机访问后端相同的磁盘空间。正常情况下由主服务器提供对外的共享目录空间,客户端通过连接到主服务器的方式访问共享,当主服务器发生宕机等故障不能提供对外服务时,备份服务器通过心跳线检测到异常状态。
[0003]由于主服务器故障,客户端到主服务器的文件共享会话超时后,客户端才能发现原会话连结的异常,将会话重定向到备份服务器,由于这种被动发现会话超时所经历的时间较长,会导致上层依赖于文件共享的应用异常。因此文件共享服务的切换流程所需时间太长,速度太慢,影响工作效率。
[0004]由于原会话的信息通常保存在主服务器的内存中,当主服务器宕机后,这些会话记录信息会一并丢失。尽管后续客户端将共享连接重定向到备份服务器,但是备份端由于无原始会话记录,会将此连接作为全新会话来对待,不能保证原文件共享会话的一致性,从而导致上层依赖于文件共享服务的应用异常。
【发明内容】
[0005]本发明的目的是提供一种支持自动故障切换的文件共享方法,以实现加快文件共享服务的切换流程,提高工作效率。
[0006]为解决上述技术问题,本发明提供一种支持自动故障切换的文件共享方法,该方法包括:
[0007]客户端与主服务器建立文件共享连接,当主服务器发生宕机时,主服务器和备份服务器之间的心跳线路出现异常;
[0008]所述备份服务器检测到心跳线路出现异常,确定所述主服务器无法提供正常的文件共孚服务;
[0009]所述备份服务器向客户端发送故障通知;
[0010]所述客户端接收所述故障通知,将原有的文件共享连接重新定向到所述备份服务器;
[0011]所述客户端与所述备份服务器建立文件共享连接;
[0012]其中,所述主服务器和备份服务器之间通过心跳线路相连,所述主服务器和备份服务器均与后端共享磁盘相连。
[0013]优选的,所述客户端与主服务器之间建立文件共享连接之后,还包括:
[0014]主服务器将客户端与主服务器之间的会话信息作为持久句柄信息记录到后端共享磁盘中。
[0015]优选的,所述持久句柄信息为共享会话的唯一标识信息。
[0016]优选的,所述客户端接收所述故障通知,将原有的文件共享连接重新定向到所述备份服务器之后,还包括:
[0017]所述备份服务器从后端共享磁盘中读取持久句柄信息,利用持久句柄信息恢复客户端的会话连接状态。
[0018]优选的,所述客户端与主服务器之间建立文件共享连接之后,还包括:
[0019]所述客户端将已经打开的文件列表信息、读写信息和文件加锁信息记录到后端共享磁盘中。
[0020]优选的,所述客户端与主服务器建立文件共享连接之后,还包括:
[0021]所述客户端查询主服务器及备份服务器的网络地址列表;
[0022]所述客户端查询主服务器及备份服务器的网络端口状态。
[0023]优选的,所述备份服务器向客户端发送故障通知,包括:
[0024]所述备份服务器记录客户端的网络地址和ID编号生成客户端的注册信息,根据所述注册信息向客户端发送故障通知。
[0025]优选的,所述备份服务器向客户端发送故障通知之前,还包括:
[0026]所述客户端通过定时向所述备份服务器发送心跳数据包来判断传输故障通知的链路是否通畅。
[0027]本发明所提供的一种支持自动故障切换的文件共享方法,客户端与主服务器建立文件共享连接,当主服务器发生宕机时,主服务器和备份服务器之间的心跳线路出现异常;所述备份服务器检测到心跳线路出现异常,确定所述主服务器无法提供正常的文件共享服务;所述备份服务器向客户端发送故障通知;所述客户端接收所述故障通知,将原有的文件共享连接重新定向到所述备份服务器;所述客户端与所述备份服务器建立文件共享连接;其中,所述主服务器和备份服务器之间通过心跳线路相连,所述主服务器和备份服务器均与后端共享磁盘相连。可见,当主服务器发生宕机时,备份服务器检测到异常,并向客户端发送故障通知,通过向客户端主动通知的方式告知主服务器异常,从而客户端将共享连接定向到备份服务器,而不必等待原共享会话发生超时才发现服务异常,从而加快了共享连接的切换速度,避免上层对响应超时时间敏感的应用异常,所以实现加快文件共享服务的切换流程,提高工作效率。
【附图说明】
[0028]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0029]图1为本发明所提供的一种支持自动故障切换的文件共享方法的流程图。
【具体实施方式】
[0030]本发明的核心是提供一种支持自动故障切换的文件共享方法,以实现加快文件共享服务的切换流程,提高工作效率。
[0031]为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0032]请参考图1,图1为本发明所提供的一种支持自动故障切换的文件共享方法的流程图,该方法包括:
[0033]S11:客户端与主服务器建立文件共享连接,当主服务器发生宕机时,主服务器和备份服务器之间的心跳线路出现异常;
[0034]其中,客户端与主服务器之间建立文件共享连接之后,主服务器将客户端与主服务器之间的会话信息作为持久句柄信息记录到后端共享磁盘中。持久句柄信息为共享会话的唯一标识信息。
[0035]其中,主服务器和备份服务器之间通过心跳线路相连,主服务器和备份服务器均与后端共享磁盘相连。
[0036]S12:备份服务器检测到心跳线路出现异常,确定主服务器无法提供正常的文件共早服务;
[0037]S13:备份服务器向客户端发送故障通知;
[0038]其中,备份服务器记录客户端的网络地址和ID编号生成客户端的注册信息,根据注册信息向客户端发送故障通知。
[0039]在主服务器发生故障时,备份服务器向客户端发送故障通知,即备份服务器通过主动通知的方式告知客户端,使客户端将文件共享连接重新定向到备份服务器,以维持原共享连接会话的持续可用性。
[0040]S14:客户端接收故障通知,将原有的文件共享连接重新定向到备份服务器;
[0041]其中,客户端接收故障通知,将原有的文件共享连接重新定向到备份服务器之后,备份服务器从后端共享磁盘中读取持久句柄信息,利用持久句柄信息恢复客户端的会话连接状态。
[0042]客户端在连接到主服务器时,将会话句柄持久的写入后端共享磁盘,而不是存放字内存中,在发生服务切换后,备份服务器从磁盘中读取持久句柄信息,用于识别原有的文件共享会话连接,当客户端将共享连接定向到备份端时可以维持原会话连接的一致性。
[0043]S15:客户端与备份服务器建立文件共享连接;
[0044]可选的,客户端与主服务器之间建立文件共享连接之后,客户端将已经打开的文件列表信息、读写信息和文件加锁信息记录到后端共享磁盘中。
[0045]客户端与主服务器建立文件共享连接之后,客户端还能够查询主服务器及备份服务器的网络地址列表,客户端查询主服务器及备份服务器的网络端口状态。
[0046]其中,备份服务器向客户端发送故障