基于Linux的双机热备系统研究与设计
- 格式:pdf
- 大小:856.56 KB
- 文档页数:5
双机热备实施方案一、引言双机热备是指在主服务器出现故障时,备用服务器能够立即接管主服务器的工作,以保证系统的持续运行。
双机热备实施方案是企业信息化建设中重要的一环,它能够有效提高系统的可靠性和稳定性,保障企业的正常运营。
本文将就双机热备实施方案进行详细介绍。
二、双机热备原理双机热备系统由主服务器和备用服务器组成,主服务器负责正常的业务处理,备用服务器处于待命状态。
主服务器将实时数据同步到备用服务器上,一旦主服务器出现故障,备用服务器能够迅速接管主服务器的工作,保证系统的连续性和稳定性。
双机热备系统的实施需要考虑到硬件设备、网络连接、数据同步等多个方面,确保系统能够在最短的时间内实现故障切换。
三、双机热备实施步骤1. 硬件设备准备:首先需要准备两台性能相当的服务器,确保备用服务器能够完全替代主服务器的工作。
同时需要配置双机热备专用的网络设备,保证主备服务器之间的数据同步和通讯畅通。
2. 系统软件安装:在主备服务器上安装双机热备软件,确保数据能够实时同步,并能够实现故障切换。
同时需要进行系统的配置和优化,确保系统能够在最短的时间内完成故障切换。
3. 数据同步设置:配置主备服务器之间的数据同步策略,确保数据能够实时同步。
同时需要定期进行数据同步的测试,保证数据同步的准确性和及时性。
4. 故障切换测试:在双机热备系统实施完成后,需要进行故障切换的测试,确保备用服务器能够在主服务器故障时能够迅速接管工作,并保证系统的正常运行。
四、双机热备实施注意事项1. 确保主备服务器之间的网络连接畅通,避免数据同步的延迟和丢失。
2. 定期对双机热备系统进行全面的检查和测试,确保系统的可靠性和稳定性。
3. 对双机热备系统进行定期的维护和更新,确保系统能够及时适应业务的变化和需求。
4. 对双机热备系统的故障切换进行定期的演练,提高系统故障切换的速度和准确性。
五、结论双机热备实施方案是企业信息化建设中非常重要的一环,它能够有效提高系统的可靠性和稳定性,保障企业的正常运营。
linux双机热备方案在现代信息技术高速发展的背景下,高可用性和数据安全性成为企业日常运营中非常重要的课题。
特别是对于采用Linux操作系统的企业来说,实施一个可靠的双机热备方案是至关重要的。
本文将介绍一种基于Linux操作系统的双机热备方案,以帮助企业实现高可用性和数据容灾。
一、方案概述双机热备方案是通过利用两台运行相同应用和环境的服务器,以实现故障转移和数据灾备的目的。
在该方案中,主服务器负责处理正常的业务请求,而备用服务器则实时复制主服务器上的数据和配置信息,并保持与主服务器的高度同步。
一旦主服务器发生故障,备用服务器将自动接管业务,并在最短的时间内实现故障恢复。
二、硬件要求在部署Linux双机热备方案之前,首先需要确保服务器硬件满足要求。
这包括两个方面:1. 服务器性能要求:主服务器和备用服务器的硬件性能应该相当,以确保业务在两台服务器之间的切换时不会出现性能瓶颈。
服务器应具备足够的处理能力和内存容量,以支持所运行的应用和服务。
2. 存储设备要求:为了实现数据的高可用性和容灾备份,主服务器和备用服务器应采用相同的存储设备。
这可以保证数据在主备服务器之间的实时同步和复制。
三、软件配置在Linux双机热备方案中,需要配置一系列软件来实现主备服务器之间的数据同步和故障转移。
以下是必要的软件配置内容:1. Heartbeat软件:Heartbeat是一种开源软件工具,用于检测主服务器的可用性。
它会定期发送心跳信号给备用服务器,以确认主服务器的正常运行。
一旦主服务器发生故障,备用服务器将接收到心跳信号的中断,并立即启动故障切换操作。
2. DRBD软件:DRBD是一种分布式块设备复制工具,在主备服务器之间实现数据的实时同步。
通过配置DRBD,主服务器上的数据将实时复制到备用服务器上,从而保持数据的高可用性和一致性。
3. Cluster软件:Cluster软件用于管理和控制主备服务器之间的故障转移。
它可以自动监测主服务器的状态,并在主服务器发生故障时触发备用服务器的接管操作,以实现业务的持续运行。
有两台服务器如何做双机热备双机热备是一种常见的服务器配置方式,可以提高系统的可用性和容错性。
通过配置两台服务器,当其中一台服务器出现故障时,另一台服务器可以立即接管工作,确保系统的连续性和稳定性。
本文将介绍如何进行双机热备配置,以及配置过程中需要注意的问题。
一、双机热备的基本原理双机热备的基本原理是将两台服务器配置为主备关系。
其中一台服务器作为主服务器(Master),负责处理用户请求和业务逻辑;另一台服务器作为备服务器(Backup),处于待命状态,等待接管主服务器的工作。
主备服务器之间通过网络进行通信,保持数据的同步和一致性。
二、双机热备的配置步骤1. 确定主备服务器的角色和IP地址:首先需要确定哪台服务器将担任主服务器,以及每台服务器的IP地址。
主服务器通常配置为具备更高性能的服务器,而备服务器则配置为相对较低性能的服务器。
2. 安装并配置操作系统:在两台服务器上安装并配置相同版本的操作系统,确保操作系统的版本和配置相同,以保证数据的一致性。
常见的操作系统包括Windows Server和Linux等。
3. 安装并配置数据库和应用程序:根据实际需求,在主备服务器上安装并配置相同版本的数据库和应用程序。
数据库和应用程序的版本、配置和数据结构需要保持一致,以确保数据的同步和一致性。
4. 配置网络和通信:配置主备服务器之间的网络和通信,确保主备服务器可以相互通信并进行数据同步。
可以使用局域网(LAN)或广域网(WAN)进行通信,常见的网络通信协议包括TCP/IP等。
5. 配置双机热备软件:选择并安装适用于双机热备的软件,常见的软件包括Heartbeat、Keepalived和Pacemaker等。
这些软件可以监控主服务器的运行状态,一旦主服务器发生故障,备服务器可以立即接管。
6. 测试和验证:在配置完成后,进行测试和验证,确保主备服务器能够正常工作。
可以模拟主服务器宕机的情况,观察备服务器是否能够顺利接管,并能够继续处理用户请求和业务逻辑。
基于双机热备系统的数据安全探讨【摘要】信息高速发展的时代,企业对计算机系统的依赖程度日渐增加。
为保证数据的安全性和可靠性,在计算机系统中采用可靠的数据备份和恢复措施是当务之急。
本文就双机热备系统的工作原理及技术方案进行探讨,以实现网络数据的安全性和可靠性。
【关键词】双机热备系统单工模式心跳信号磁盘阵列信息高速发展的时代,企业对计算机系统的依赖程度日渐增加,系统内存储着重要的信息和数据,一旦数据丢失将造成无法弥补的损失。
为了保证系统中数据的安全性和可靠性,当计算机网络系统出现故障时,网络中的核心数据必须能安全保存和迅速恢复,因此,在计算机网络中采用可靠的数据备份和恢复措施是非常必要的。
一、数据备份与恢复概述在计算机网络中,最珍贵的财产是计算机内的数据。
建立网络的初衷是方便地传递与使用数据,但人为错误、硬盘损坏、电脑病毒、断电或天灾人祸等随时可能造成数据丢失。
数据备份与恢复是指将计算机硬盘上的原始数据复制到其它存储媒体上,在出现数据丢失或系统灾难时将复制在其它存储媒体上的数据恢复到硬盘上,从而保护计算机的系统数据和应用数据。
目前几乎每个大型网络都有数据备份和恢复措施,而这些措施确实在不少灾难性的数据丢失事件中发挥了重要作用。
二、数据备份与恢复的原则对数据进行备份是为保证数据的安全性,不同系统要求不同的解决方案,但总体应满足以下原则:1、安全性和稳定性备份产品的主要作用是为系统提供一个数据保护的方法,该产品在对数据进行备份时,要具有检查、预防和杀病毒的功能,确保无毒备份,同时还要保证备份介质不丢失和备份数据的完整性。
2、实时高效性随着业务不断发展,使得数据多更新快,数据备份间隔越来越短,备份需要的时间也越来越长,一定要提高备份的速度。
有些关键性任务要保证24小时不停机运转,进行备份时,要实时查看文件大小,进行事务跟踪,保证正确备份系统中的所有文件。
3、具有自动化和容错性备份方案应提供定时的自动备份功能,可利用磁带库技术进行自动换带和日志记录功能,并在出现异常时自动报警等。
oracle for linux双机热备实战完全手册10.0.0.11是我主服务器的ip,10.0.0.111是我从服务器的ip, testdbase是数据库的sid号,操作系统的版本是RedHat L in ux 8.0 数据库版本是Oracle 9.2.0.11.建立oracle用户[root@test2 etc]#groupadd oinstall[root@test2 etc]#groupadd dba[root@test2 etc]#useradd –g oinstall –G dba oracle2.设置oracle用户环境变量#主从服务器的环境变量最好一致以下是一个oracle用户环境变量范本[oracle@test2 oracle]$ more .bash_pr ofileexport LD_ASSUME_KERNEL=2.4.1 #RedHat AS 3.0必须加此参数export ORACLE_BASE=/opt/oracle #根据实际情况设定ORACLE_BASEexport ORACLE_HOME=/opt/oracle/product/9.2.0 #根据实际情况设定ORACLE_HOME export ORACLE_SID=testdbaseexport ORACLE_TERM=xtermexport NLS_LANG=american_america. ZHS16GBK; #繁体中文字符集是ZHT16BIG5 export ORA_NLS33=$ORACLE_HOME/o com mon/nls/admin/dataLD_LIBRARY_PA TH=$ORACLE_HOME/lib:/lib:/usr/libLD_LIBRARY_PA TH=$LD_LIBRARY_PA TH:/usr/local/libexport LD_LIBRARY_PA THexport PA TH=$PATH:$ORACLE_HOME/binCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib CLASSPATH=$CLASSPA TH:$ORACLE_HOME/network/jlib:$ORACLE_HOME/jdbc/lib/class es12.jarexport CLASSPATHJA V A_HOME=/usr/java/j2sdk1.4.1_02 #根据实际情况设定JA V A_HOME的路径export JA VA_HOMEPATH=$PATH:$JA V A_HOME:$JA V A_HOME/bin:$JA V A_HOME/jre:$ORACLE_HOME/bin export PA THumask 0223.安装java4.建立.bash_profile相关文件夹[root@test2 etc]#chown oracle.oinstall –Rf /opt #将/opt目录的属主改为oracle.oinstall[root@test2 etc]# su – oracle[oracle@test2 oracle]$ mkdir -p /opt/oracle/product/9.2.0/ocommon/nls/admin/data[oracle@test2 oracle]$ mkdir -p /opt/oracle/product/9.2.0/lib[oracle@test2 oracle]$ mkdir -p /opt/oracle/product/9.2.0/net work/jlib[oracle@test2 oracle]$ mkdir -p /opt/oracle/product/9.2.0/jdbc/lib/5.在备用服务器上安装oracle备用服务器在安装的时候不需要建库,只需安装Software如果安装的是oracle9201版本,在安装到84%的时候,会有一个编译错误"Error in invoking target install of makefile /opt/oracle/product/9.2.0/ctx/lib/ins_ctx.mk",此时打开这个文件:$ORACLE_HOME/ctx/lib/env_ctx.mk,把"$(LDLIBFLAG)dl"加到如下位置:INSO_LINK = -L$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)dl $(LDLIBFLAG)sc_ca $(LDLIBFLAG)sc_fa $(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_fi $(LLIBCTXHX) $(LDLIBFLAG)c-Wl,-rpath,$(CTXHOME)lib $(CORELIBS)然后按重试,就可以继续安装下去了。
双机热备原理
双机热备原理是指在计算机系统中,通过两台服务器实现热备份,以保证系统在一台服务器发生故障时能够快速切换到另一台服务器,从而保证系统的高可用性和可靠性。
首先,双机热备系统需要两台服务器,它们之间通过网络连接,实现数据同步和通讯。
在正常情况下,两台服务器同时工作,共同承担系统的负载。
其中一台服务器充当主服务器,负责处理用户的请求和数据操作,另一台服务器则作为备用服务器,实时接收主服务器的数据同步,并保持与主服务器的数据一致性。
其次,双机热备系统中的关键技术是心跳检测和自动切换。
心跳检测是指主备服务器之间定时发送心跳信号,用于检测对方的状态。
一旦主服务器发生故障,备用服务器能够通过心跳检测感知到主服务器的异常,并立即接管主服务器的工作,实现自动切换,从而保证系统的连续性和稳定性。
另外,双机热备系统还需要具备数据同步和故障恢复的能力。
数据同步是指备用服务器需要实时接收主服务器的数据更新,以保证数据的一致性。
而在主服务器发生故障时,备用服务器需要快速接管主服务器的工作,同时保证数据的完整性和准确性,从而实现系统的快速恢复。
总的来说,双机热备原理通过两台服务器之间的数据同步和自动切换实现了系统的高可用性和可靠性。
它能够有效地避免单点故障,提高系统的容错能力,保证用户的正常使用。
因此,在大型企业和关键系统中,双机热备系统被广泛应用,成为保障系统稳定运行的重要手段之一。
服务器双机热备解决方案服务器双机热备解决方案是一种为服务器提供高可用性和容错能力的解决方案。
通过使用两台服务器进行镜像备份和故障切换,可以实现在主服务器故障时无缝地切换到备份服务器,确保系统的连续可用性。
以下是一个详细的服务器双机热备解决方案。
1. 硬件配置:首先,选择两台具备相同规格和配置的服务器作为主备服务器,确保它们具备相同的处理能力、存储容量和网络连接性能。
在服务器之间建立高速互联通道,如双机网卡冗余链接(Multiple Network Interface Redundancy)或光纤通道(Fibre Channel),确保数据传输的稳定和可靠性。
2.系统镜像备份:在主服务器上完成系统的安装和配置后,制作主服务器的系统镜像,并定期更新备份服务器的系统镜像。
可以使用备份软件或快照工具来实现系统镜像的制作和恢复。
3. 数据同步:使用数据复制技术实现主备服务器之间数据的实时同步。
常用的数据同步方式包括同步复制(Synchronous Replication)和异步复制(Asynchronous Replication)。
在同步复制中,主服务器将数据写入备份服务器之前,需要确认数据已经被写入备份服务器。
而在异步复制中,主服务器将数据写入备份服务器后马上返回,不等待备份服务器的确认。
根据需求和实际情况选择适当的数据同步方式。
4. 心跳检测:为了监测主备服务器的状态并确保高可用性,需要在主备服务器之间建立心跳检测机制。
心跳检测可以通过心跳包(Heartbeat)或集群管理软件实现。
当主服务器发生故障时,备份服务器可以通过接收不到心跳信号来判断主服务器的故障,并开始服务切换过程。
5. 故障切换:主服务器发生故障后,备份服务器需要尽快接管主服务器的工作。
在故障切换过程中,需要确保数据的一致性和完整性。
可以通过一些技术手段来实现故障切换,如虚拟IP(Virtual IP)、磁盘共享(Shared Disk)或共享文件系统(Shared File System)等。
服务器双机热备方案
在现代社会,服务器作为信息存储和传输的重要设备,其稳定性和可靠性显得
尤为重要。
为了确保服务器在遇到故障时能够实现快速切换和备份,双机热备方案应运而生。
双机热备方案是指在服务器集群中,两台服务器同时工作,一台作为主服务器,另一台作为备份服务器。
主服务器负责正常的数据处理和服务提供,备份服务器则时刻与主服务器保持同步,一旦主服务器出现故障,备份服务器可以立即接管工作,实现快速切换,保证系统的连续性和稳定性。
双机热备方案的实现需要借助专业的硬件设备和软件技术。
首先,硬件方面需
要两台服务器具有相同的配置和性能,以及高可靠性的存储设备和网络设备。
其次,软件方面需要利用专业的双机热备软件,实现数据的实时同步和故障的快速切换。
另外,还需要配备专业的监控系统,及时发现故障并进行处理。
在实际应用中,双机热备方案可以应用于各种对系统稳定性要求较高的场景,
比如金融交易系统、电信运营系统、医疗信息系统等。
通过双机热备方案,可以最大程度地提高系统的可用性和稳定性,保证用户的正常使用和数据的安全性。
总的来说,双机热备方案是一种高可用性的服务器备份方案,可以在主服务器
故障时实现快速切换,保证系统的连续性和稳定性。
通过合理的硬件配置和专业的软件技术,双机热备方案可以在各种对系统稳定性要求较高的场景中得到应用,为用户提供更加可靠的服务和保障。
总第325期2016年第11期计算机与数字工程Computer &•Digital Engineering Vol. 44 No. 112293基于L i n u x的双机热备系统研究与设计‘李勇(92941部队96分队葫芦岛125001)摘要为提高Lmux系统下软件的高可用性,研究了双机热备技术,分析了 Lmux内核机制,设计了 Lmux系统下的 双机热备系统架构,完成了模块化设计,并提供了对外的接口。
关键词双机热备;高可用;Lm ux;模块化中图分类号TP319 DOI:10. 3969/j. issa 1672-9722. 2016. 11. 041Research and Design of Dual Computer HotStandby System Based on LinuxLI Yong(Unit 96, N o 92941 Troops of PLA, Huludao 125001)Abstract In order to improve the high availability of software based on Linux system, the hot standby technology i s studied, the mechanism of Linux kernel i s analyzed, the architecture of dual machine hot standby system based on Linux system i s designed, the modular design i s completed, and the c a l l interface of the system i s provided.Key Words hot standby, high availability, Linux, modularizationClass Number TP319i引言随着网络和信息技术的发展,信息系统集成度 不断增大,面对的风险也越来越多,一个硬件或软 件故障都可能导致网络瘫痪、系统崩溃,对企业造 成损失,因此提高系统的高可用性成为最迫切解决 的问题[1]。
目前高可用解决方案有集群和双机热 备两种。
集群技术将多台服务器虚拟成一台服务 器并对外提供服务,具有负载均衡能力,适合大型 和超大型系统[2]。
双机热备系统以其低成本、操作 简洁的优势成为中小系统的首要选择。
2双机热备技术分析2.1双机热备简介双机热备是在互为备份的两台服务器上共同 执行同一服务,一台服务器处于服务的工作状态 (主机),另一台服务器处于备用状态(备机)[3]。
正 常情况下,主机对外提供服务,备机监视主机的状态。
当主机因某种故障而不能继续提供服务时,备 机接管主机的工作。
是否采用双机热备,取决于服务的重要性以及 中断对服务的影响。
关键服务不容忍长时间的服 务中断,需要通过双机热备来保证系统长期、可靠的运行[4]。
2.2双机热备系统工作模式分析双机热备系统一般有双工、主从和双机互备三种工作模式[5]。
在双工模式中,两台服务器同时运行同样的应 用,对外提供同样的服务,彼此独立运行。
当一台 服务器出现故障时,Xt外服务也不会中断。
因为两 服务器都实时运行,不存在服务切换问题,但是需 要增加I/O设备通信开销。
由于两台服务器相互 独立,难以保证逻辑控制的统一,也不符合“数出一 源”的原则。
主从模式是指使用两台或两台以上的服务器,一台作为主机,对外提供服务。
其他作为备机,运收稿日期=2016年5月4日,修回日期= 2016年6月25日作者简介:李勇,男,硕士研究生,工程师,研究方向:计算机应用软件、系统安全。
2294李勇:基于Linux的双机热备系统研究与设计第44卷行与主机一样的应用,但是处于备用状态。
当主机 出现故障时,备机变为主机,使对外服务在短时间 内恢复。
双机互备模式中,两台服务器分别运行不同的 应用,彼此互为备机[6]。
当一台服务器出现故障 时,另一台服务器接管应用,同时运行两个应用。
这是主从模式的扩展,避免了两个应用使用四台服 务器。
此方式存在性能瓶颈,即一台服务器同时运 行两个应用,负载过大。
2.3双机热备系统数据存储方式分析数据是服务的基础,是服务迁移的前提。
在双 机热备系统中,数据存储方式有存储共享和存储隔 离两种方式[7]。
在存储共享方式中,两台服务器所有数据存储 在一个公共的存储空间。
通过权限控制及策略,两 台服务器可访问所有的数据。
数据源的单一性确 保了两台服务器数据的一致性。
在存储隔离方式中,两台服务器使用私有的存 储空间存储各自的数据,服务器通过数据链路将新 产生的数据同步到备机。
3Linux内核结构分析3. 1Linux系统简介Linux系统是一个开源的、与U n ix兼容的操 作系统。
经过多年发展,L in u x已成为一个功能强 大性能稳定的通用操作系统,大部分U n ix上的应 用程序都已经移植到Linux之上[8]。
由于它的成 熟和开放性,Linux在服务器市场占有较大份额。
3.2 L in u x内核架构分析Linu x内核只是Linux操作系统一部分,运行 在内核空间,具有最高的级别,管理系统的所有硬 件设备;应用程序运行在用户态,级别最低,不能直 接访问硬件资源,只能通过系统调用来间接访问硬 件资源,如图1所示。
图1 L i n u x内核结构Linu x内核主要包含进程管理、内存管理、虚 拟文件系统、网络系统、IPC、设备驱动程序等几个 部分[9]。
进程管理负责管理C P U资源,按照策略 让各个进程都能使用C P U资源;内存管理负责管 理内存资源,以便各个进程都能使用有限的内存资 源;虚拟文件系统管理将外设(硬盘、磁盘、软盘、打 印机等设备)抽象成为文件,通过统一的文件操作 接口访问;网络服务负责管理网络设备,支持多种 网络标准;IP C负责Linu x系统中进程间的通信。
此外,Linux系统支持模块编程,可以将软件作为 一个模块插入Lin u x内核,进行内核级的开发[1°]。
4基于Linux双机热备系统总体设计在主从模式下,主机不断地发送心跳包给备 机,若备机或心跳线路出现故障,主机无法察觉。
在这种情况下主机故障,系统服务无法迁移到备 机。
双心跳线路可避免单条线路失效的风险。
为了保持对外服务接口的一致性,系统采用虚 拟I P技术。
两台服务器都有独立的I P地址,但是 对外服务公用一个虚拟I P地址。
虚拟I P由主机 拥有,当服务迁移时,虚拟I P也随之漂移到新的主 机上。
硬件连接如图2所示。
在软件设计上,将双机热备设计成多个功能模 块。
利用Linux模块加载原理,将模块加载到内 核,完成双机热备功能。
从功能上看,软件包括基2016年第11期计算机与数字工程2295础服务、故障诊断与处理、数据管理、对外接口四个 功能模块,如图3所示。
图3软件结构5基于Linux双机热备系统模块设 计与实现5.1基础服务模块设计基础服务模块负责建立并维护两台服务器的 主备状态,双机热备系统状态结构如下所示typedef struct _DUP_STATUS{unsigned char StatusOfThis;//本机状态unsigned char StatusOfOther;//另一台服务器状态unsigned char LinelStatus;//心跳线路 1 状态unsigned char Line2Status;//心跳线路 2 状态unsigned char Line3Status;//数据线路状态unsigned char SoftStatusOfThis;//本机关键软件状态unsigned char NetStatusOfThis;//本机网络连接状态unsigned char Mode;//双工模式unsigned char SoftStatusOfOther;//另一■台月艮务器关键软件状态unsigned char NetStatusOfOther;//另一■台服务器网络连接状态}DUP_STATUS, * PDUP_STATUS;服务器启动时,双机热备基础服务模块根据配 置信息及另一台服务器的状态确定本机的状态。
一台服务器可配置为主机、备机或先启动者为主 机。
当一台服务器配置为主机或先启动者为主机 时,若另一*台服务器的状态不是主机,则它启动后 就为主机,否则就为副机。
当一台服务器配置为副 机时,若另一*台服务器的状态不是副机,则它启动 后就为副机,否则就为主机。
主备机通过定期发送心跳包来确定彼此的状 态,心跳包格式如图4所示,各字段含义如下:总长:表示心跳包总长度,心跳包长度固定为10B〇源ID和目的ID:标识主机与备机的心跳线路 1、线路2。
序号:用于心跳包和数据包的计数。
SG S:表示本机的双工热备状态,包括主用、备 用和双工三种状态。
X L1、XL2、X L3:表示心跳线路1、线路2和数 据传输线路的状态。
网络状态:表示服务器连接网络状态。
关键事件状态:表示服务器上系统服务的状〇图4心跳协议包格式5. 2故障监测模块设计与实现为了能及时发现各种错误,提高服务的可用 性,采用基于双心跳线路的心跳监测协议机制,如 图5所示。
本模块会记录所有心跳信息,作为故障 诊断的依据。
图5双机热备心跳线路本模块会启动三个监听线程,线程1与关键服 务构成服务器系统内部的心跳链路,线程2和线程3分别维护一条主机与备机之间的心跳链路,心跳 包发送周期和故障诊断周期由配置文件确定;通过 监测心跳包,可获得本机和它机的综合状态,从而 进行故障定位和处理。
本模块可以定位和处理的 故障有心跳线路故障、网络连接故障、服务器故障 和关键服务故障四类。
心跳线路故障:当服务器在故障诊断周期内只 能收到一条来自另一台服务器的心跳包,则另一条 心跳链路故障,主备机重启心跳线程,替代故障线程。
网络连接故障:主机定期向交换机发送ICMP 数据包,若主机故障诊断周期内没有收到应答,则 认为网络连接故障,进行主备机服务切换。
服务器故障:服务器在故障诊断周期内收不到2296李勇:基于Linux的双机热备系统研究与设计第44卷另一台服务器的心跳包,则认为服务器故障,进行双工切换。
关键服务故障:在一个故障诊断周期内,通过 解析心跳包,发现关键服务字段为异常,则主机关 键服务故障,进行主备机服务切换。
5.3数据管理模块设计在关键服务软件运行过程中,会产生很多重要 数据。
借助这些数据,关键服务可恢复到故障前的 状态,降低主副机切换的损失。
本模块通过数据定 期同步技术实现备机与主机间重要数据的一致。