双机热备工作原理及切换过程具体剖析

更新时间:2023-10-01 04:10:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

双机热备工作原理及切换过程具体剖析

双机热备容错基本原理是一个企业需要长期学习的技术,但是企业在组建的时候还是有很多不解的地方。下面我们就详细的了解下双机热备容错的相关知识。

一.双机工作原理

(1)心跳工作过程

通过IP做心跳检测时,主备机会通过此心跳路径,周期性的发出相互检测的测试包,如果此时主机出现故障,备机在连续丢失设定数目的检测包后,会认为主机出现故障,这时备机会自动检测设置中是否有第二种心跳,如果没有第二种心跳的话,备机则根据已设定的规则,启动备机的相关服务,完成双机热备容错的切换。

(2)IP工作过程

IP地址用虚拟IP地址的方法来实现,主要原理

主机正常的情况下虚拟IP地址指向主机的实IP地址,用户通过虚拟IP地址访问主机,这时,双机热备容错软件将虚拟IP地址解析到主机实IP地址。当主机做相关的切换时,虚拟IP地址通过双机热备容错软件自动将虚拟IP地址解析到备机的实IP地址上,这时,虚拟IP地址指向备机的实IP地址。但对用户来说,用户访问的仍然是虚拟IP地址。所以用户只会在切换的过程中发现有短暂的通信中断,经过一个短暂的时间,就可以恢复通信。

应用及网络故障切换过程

(i)可以检测到操作系统的故障并及时将服务切到备用服务器。

(ii)当操作系统正常的情况下,数据库系统出现意外故障,这时双机容错软件可以及时发现并将其切到备用服务器,使服务不致于停止。(如图2)

(iii)当操作系统和数据库系统全都正常的情况下,服务器网络出现故障,这时双机热备容错软件,可以将系统切到正常的备用服务器上。

二.双机热备容错模式

双机热备有两种实现模式,一种是基于共享的存储设备的方式即双机热备容错方式,另一种是没有共享的存储设备的方式,一般称为镜像方式。

双机热备容错方式

对于这种方式,采用两台服务器,使用共享的存储设备(磁盘阵列柜或存储区域网SAN)。两台服务器可以采用互备、主从、并行等不同的方式。在工作过程中,两台服务器将以一个

虚拟的IP地址对外提供服务,依工作方式的不同,将服务请求发送给其中一台服务器承担。同时,服务器通过心跳线(目前往往采用建立私有网络的方式)侦测另一台服务器的工作状况。当一台服务器出现故障时,另一台服务器根据心跳侦测的情况做出判断,并进行切换,接管服务。对于用户而言,这一过程是全自动的,在很短时间内完成,从而对业务不会造成影响。由于使用共享的存储设备,因此两台服务器使用的实际上是一样的数据,由双机或集群软件对其进行管理。

双机热备容错镜像方式

对于镜像的方式,则是通过支持镜像的双机软件,将数据可以实时复制到另一台服务器上,这样同样的数据就在两台服务器上各存在一份,如果一台服务器出现故障,可以及时切换到另一台服务器。

镜像方式还有另外一种情况,即服务器只是提供应用服务,而并不保存数据(比如只进行某些计算,做为应用服务器使用)。

双机容错软件:

软件、硬件配置

a、软件:双机热备容错软件。

b、硬件:服务器可以是任何Intel基础上的平台, Server的型号、配置不必一致,只需硬件平台能保证Windows NT/2K/Linux/Unix运行;磁盘阵列正常使用。

双机热备容错软件原理

1.双机热备容错软件定义、特性、资源保护

双机热备容错软件提供了一个完全容错的软件解决方案,并提供数据、应用程序和通信资源的高度可用性。双机热备容错软件不需要任何特别的容错硬件,并访问特定节点的配置数据。双机热备容错软件会自动地提供错误检测和现场恢复。

在出现故障的情况下,双机热备容错软件会将保护资源自动转换到一个根据预先设定好优先权的系统。在实际进行切换用户时,会经历一个十分短暂的休眠,但是,当系统完成了切换操作后,双机热备容错软件会在所选择的节点上自动地恢复操作。

可以被双机热备容错软件保护起来的资源是:

卷(Volume) : 在共享磁盘阵列的双机方式下,双机热备容错软件可以对磁盘阵列的卷资源进行保护,防止因双机共同写同一个文件造成的故障。

IP 地址 : 双机热备软件可以对网络IP地址,网卡进行全方位的检测。

共享文件:可以对文件夹共享。

管理器服务器名称 : 可以对服务器名做集群热备。

应用程序: 可以对Oracle,Sybase,Informix,DB2,MSSQLServer数据库进行保护及检测功能。

定义的用户: 对用户自有程序做到实时检测及热备功能。

2、心跳故障检测Heartbeat

双机热备容错软件在集群节点间保持着间歇的通信信号,也叫做心跳信号,是错误检测的一个机制。即通过每一个通信路径,在两个对等系统之间进行周期性的握手,如果连续没有收到的心跳信号到了一定的数目,双机热备容错软件就把这条路径标示为失效(红色)。

如果你只定义了一条通信路径,当双机热备容错软件把这唯一的一条通信路径标为失效时,双机热备容错软件便立即开始恢复过程。然而,如果你有冗余路径,双机热备容错软件能够通过第二条路径确定是系统故障还是只是通信路径有问题。如果双机热备容错软件开启优先级第二的通信路径并收到了心跳信号,它就不开始failover恢复,只需要把第一条通信路径标成红色(失效),作为信号告诉你需要修复有故障的路径。

一般情况下双机热备容错软件只在下列事件发生时,启动系统恢复功能:

所有的通信路径故障。如果所有节点都没能收到心跳信号,把所有通信路径都标为失效,双机热备容错软件开始安全检查。

安全检查失败。当所有通信路径故障时,双机热备容错软件向整个网络发出安全检查信号。如果信号指出配对系统还“活”着的时候,双机热备容错软件不启动Failover。如果安全检查没从配对节点返回信号,双机热备容错软件就开始Failover。

因而,为了减少由于潜在的通讯错误所引起的不必要的系统切换,建议您使用不同介质的多条通信路径。

通信路径

双机热备容错软件支持在节点之间和心跳通讯中,使用如下通讯路径:

(1) socket,即套接字。你使用任何的网络硬件接口,只要它能够支持TCP/IP的通讯协议。这样的硬件包括:以太网、快速以网。

(2)串行口在双机热备容错软件配置中,你应当配置有一个串行口通信路径。串口通信路径需要利用RS232的拟调解线路来与双机热备容错软件系统相连接。

双机热备容错软件假定当通过心跳信号检测其它服务器失败时,则认为此服务器是关闭的。

因此,为了避免不必要的失效切换,最好建立两种以上独立的物理路径,使用至少两种心跳。

例如,如果两个服务器被一个串口连接起来,并且,从属服务器来的心跳信号无法被主服务器所检测到,则下面之一是可能引起这一现象的原因:

服务器的RS-232卡或者端口失败电缆失效

主服务器暂时挂起主服务器失败

失效切换只可能在最后一种情况下才发生。因此,节点间的多种通信路径可以帮助避免不必要的失效切换。

本文来源:https://www.bwwdw.com/article/ag2d.html

Top