高可用性系统设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

高可用性系统设计

作者:李金霞

来源:《电脑知识与技术》2009年第33期

摘要:该文介绍了高可用系统软件结构及其工作原理、同时分析了高可用系统的硬件组成,如何采用容错技术来提高计算机系统的可用性。

关键词:高可用性;磁盘阵列

中图分类号:TP311文献标识码:A文章编号:1009-3044(2009)33-9542-02

The Design of the High Useful System

LI Jin-xia

(The Computer Center of Hebei University of Economics and Business, Shijiazhuang 050061, China)

Abstract: The article introduced the software structure and work principle of the high useful function system. At the same time analysed the hard ware form of the high useful function. Adopted the hold wrong technology to improve the useful function of the computer system.

Key words: the high useful function; disk formation

随着计算机应用技术的发展,数据容量大量增长,广大用户对计算机系统整体性能的要求也越来越高,要求有更为完备的手段保障系统运行的高可靠性和不间断性。高可用性是在相当长的时间段内,系统连续不断地执行其功能的能力,获得高可用性最常使用的方式就是容错。

1 高可用系统的工作过程

HA服务器(HA Daemon)啟动:启动HA Daemon管理程序,HA Daemon监测服务器资源是否可靠并对服务器进行配置,然后启动指定的服务和代理程序。

代理程序(Agent)工作:代理程序(Agent)启动后,可以通过心跳(Heartbeat)监测服务器资源及所有服务的相关进程。

Agent心跳(Heartbeat)检测:心跳信号(Heartbeat),是一种错误检测机制,包括Agent心跳和服务器心跳(Server Heartbeat)两种。通过周期性的Agent心跳,Agent代理程序会将服务的可靠性通知HA服务器(HA Daemon)。

HA服务器(HA Daemon)响应:HA服务器(HA Daemon)在预定时间内没有收到Agent心跳,就预示它所监测的服务出现了故障,此时,HA服务器会执行向备份服务器发出故障信号。

服务器心跳(Server Heartbeat)检测:HA服务器通过周期性的服务器心跳(Server Heartbeat),会将自身的可靠性通知备份服务器。服务器心跳是通过基于TCP/IP 的Socket或RS-232线来传送的,如果服务器出现故障,HA管理器将向对方发送服务已死的心跳。

服务(Service)切换:备份服务器(Backup Server)在规定的收到主服务器(Active Server)发出的故障信号后,开始进行服务切换。HA管理器首先停止主服务器上的服务,同时释放公用IP地址(Swithable IP)和共享磁盘,然后启动由备份服务器上接管公用磁盘和公用IP地址,接管主服务器上的全部服务。切换完成后,服务自动恢复正常运行。

2 高可用性系统的硬件构成

高可用性系统主要采用集群或双机容错、磁盘冗余阵列(RAID)、多路径故障检测等技术来保证系统的可靠性。

集群(Cluster):集群是一组被称为节点的计算机,针对重要服务和资源,如Web服务和数据库服务,使用两台以上的服务器,对于网络的其他部分来说,这些服务器就象一个单一的实体,一个高可用的“虚拟”服务器,集群在检测到软件和硬件故障时,自动将数据和处理的服务转到无故障的节点,借此提高系统的可用性。

磁盘冗余阵列(Redundant Arrays of Inexpensive Disks):磁盘阵列(RAID)是一项非常优秀的容错技术,按功能可以分为0至5级,其中RAID1和RAID5最为常用。

磁盘镜像/硬盘双工(RAID1):磁盘镜像指系统保存数据时,会将相同的数据同时写入到两块物理盘上,以防止单个硬盘的物理故障。硬盘双工指计算机装有两个磁盘控制器,使镜像集中的两个磁盘都有自己的磁盘控制器,可以同时防止磁盘控制器和磁盘介质的失效。

含奇偶校验的磁盘条带集(RAID5):磁盘条带集是一种磁盘管理技术,创建条带集需要两块以上的硬盘,将这些硬盘的自由空间组织到一个大的逻辑驱动器中。使用条带集时,数据按顺序写入到所有物理盘中,每次一行,这样数据就可以均匀地分布到所有的驱动器上。磁盘条带集没有数据冗余,不提供任何容错功能。

RAID5是当前最流行的容错设计方法,其读操作有比磁盘镜像更高的性能。但是,由于写盘时需要进行奇偶校验值的计算,需要使用比一般写操作更大的内存。

多路径故障检测:心跳信号(Heartbeat)是一种错误检测机制,是集群节点间保持着的间歇通信信号。通过每一个通信路径,在两个对等系统之间进行周期性的握手,如果连续没有收到的心跳信号到了一定的数目,就把这条路径标示为失效。

为了减少由于潜在的通讯错误所引起的不必要的系统切换,节点之间可以使用不同介质的多条通信路径。

当通过心跳信号检测其它服务器失败时,则认为此服务器是关闭的。使用多种检测方法确保了系统错误能够被正确识别,可以避免不必要的失效切换。

3 高可用系统的软件

操作系统(Operating System):主服务器和备份服务器一般需要运行相同版本的操作系统。如:Windows NT/2000、Sun Solaris、Linux等。

服务程序(Service):服务程序在指定的活动服务器上运行,客户机可以通过连接在该服务器上的网卡上的指定的Active IP 地址来访问,服务程序由HA软件来管理,当活动服务器出现故障时,在很短的当机时间内,备份服务器会将服务程序接管过去。主服务由特殊的应用软件来提供。主服务需要的数据和程序存放在公用磁盘上,这些数据和程序只有运行主服务的服务器可以访问。

HA管理进程(HA Daemon):HA Daemonand 和HA Monitor Daemon是HA软件的核心进程,由它来初始化系统配置,接收来自HA代理的信息,并通过专用网与其它服务器的HA管理进程通信,协调运行服务器与备份服务器间的关系。

HA代理(Agent):Agent是一个软件监视模块,可以监控数据库服务或其他应用服务的运行,为了完成特定的任务,用户可以自己编写Agent脚本(Script)。

管理工具(Administration Tool):系统管理员通过管理工具管理、监视服务程序的运行状态。

高可用系统可以自动实现关键服务在两台服务器之间的切换,在很大程度上减少了管理员的介入,提高了系统的可靠性。系统运行性能稳定可靠,达到了预期效果。

参考文献:

[1] Snia dictionary N [EB/OL]. /education/dictionary/n.

[2] 郭长勇.磁盘阵列与双机容错[J].电子计算机与外部设备,1999,23(2):33-37.

[3] 石春和,周新莲.服务器容错与磁盘阵列技术的集成[J].计算机应用研究,2001(1).

[4] Rose HA For Solaris安装配置手册[M].

相关文档
最新文档