Web集群服务器系统的概念最早由UIUC的NCSA提出并实现了一个原型系统“NCSA Scalable Web Server Cluster”,后来Berkeley的NOW(Network of Workstations)小组、网络设备巨头CiSCO公司和著名的IBM公司等也加入了这个行列,提出了许多新概念和新方法,并很快推出了相应的产品。目前比较成熟的产品主要有Cisco的Local Director,IBM的Network Dispatcher等等。
一个Web集群服务器系统让”是由多台Web服务器组成的,但对外部而言,整个集群就如同一台高性能的Web服务器,系统只有一个对外的网络地址,所有HTTP请求都发到这个地址。系统中有专门的机制能够将这些请求按照一定的策略分发到集群中的各台服务器上,让它们各自分担一部分工作。也就是说,Web集群服务器系统是通过并行处理来达到整个系统的高性能。
在一个Web集群服务器系统中,每台Web服务器都是一台独立的计算机,其上面有自己的操作系统和Web服务器软件,这些计算机可以相同,也可以不同。由完全相同计算机(硬件组成、配置、操作系统和Web服务器软件都相同)组成的Web集群服务器被称为同构Web集群服务器系统:而由不完全相同的计算机组成的集群Web服务器成为异构Web集群服务器系统。构造异构Web集群服务器具有较强的现实意义,但其实现的难度却大的多,必须解决许多额外的困难问题。
Linux 高可用集群系统支持的工作模式较多, 主要有以下几种:
激活/备用模式(Active/Standby):指一台服务器处于工作状态, 运行应用程序, 对外提供服务, 另外一台服务器处于集群组中, 但处于空闲状态, 在必要时接管失败节点的任务。
激活/激活模式(Active/Active):指两台服务器都处于工作状态, 运行各自的应用程序, 对外提供不同的服务, 但同时彼此保持接管对方任务的状态。
故障转移级连模式(Cascading Failover):指在大于两台服务器组成的集群组中, 服务器 A 配置成故障转移到服务器 B, 服务器 B 被配置成故障转移到服务器 C, 以此类推。
分布式故障转移模式 (Distributed Failover):指当故障发生在一台或多台节点服务器上的时候, 集群系统将把其上的应用故障后转移到其它服务器上, 防止剩下的服务器群在性能上显著下降。
故障修复切回模式(Automatic Failback):指当集群中的故障服务器回到集群中时, 其它服务器将以前在此节点上运行的应用程序转移回去的工作模式。
3.4 需求分析
Web服务器的搭建是中小企业建立自己的网站,向客户展示和宣传自己企业产品和企业文化的重要平台,考虑到客户访问内容种类多,数据量大,因此搭建的web服务器应具备强大的稳定性和实时性,高可用集群的web服务器提高了企业网站的工作效率,更好的服务了企业客户使企业走向信息化和网络化。作为中小企业使用的web服务器,本服务器应设计简单,尽可能地简化操作步骤,做到: (1)很高的稳定性。(2)价格低廉的实现成本。(3)快速响应性能。
3.4.1 系统开发和运行环境
a.系统开发平台:虚拟机软件VMware-workstation-full-8.0.1 以及redhat linux 5.0 安装镜像
b.运行平台:windows XP/7操作系统平台
c.处理器:core I3 内存:4GB 硬盘:320GB
3.4.2 运行过程常见问题和解决办法
高可用集群中的脑裂(split brain)问题
对于高可用集群中的一些节点感知不到另外一些节点存在时,此时如果没有任何特殊机制,这些节点会抢占另外一些节点的资源来提供它们所提供的服务;而另外一些节点,也可能在做同样的事情,因此集群就发生了分裂,我们称之为脑裂。在“双机热备”高可用(HA)系统中,当联系2个节点的“心跳线”断开时,本来为一整体、动作协调的HA系统,就分裂成为2个独立的个体。由于相互失去了 联系,都以为是对方出了故障,2个节点上的HA软件像“裂脑人”一样,“本能”地争抢“共享资源”、争起“应用服务”,就会发生严重后果:或者共享资源被 瓜分、两边“服务”都起不来了;或者两边“服务”都起来了,但同时读写“共享存储”,导致数据损坏(常见如数据库轮询着的联机日志出错)。脑裂所带来的问题:1.分裂开来的多个子集群,提供整个集群的功能,无疑压力增大,单个服务性能会下降2.我们知道,通常在一个高可用集群中,每种服务的资源都是不同的,但是有两个节点在提供同样的服务是,它们就会争抢资源,更甚者如果对同一文件系统上的同一文件同时发起写造作会造成文件系统崩溃。 中小企业web服务器的高可用集群方案设计(7):http://www.youerw.com/jisuanji/lunwen_2317.html