1.什么是服务器集群
随着Internet的爆炸性增长,Internet与人的生活越来越息息相关,通过Internet上进行交易也就越来越受关注。近几年,电子商务的年增长均超过100%。服务器的工作量也迅速增长,所以服务器(特别是一个受人欢迎的WEB服务器)很容易在访问高峰时期过载。
而另一方面,计算机从1946年单纯的科学计算任务到现在大量纷繁复杂的信息处理,工作量越来越大,需要越来越快的处理能力。所以计算机界就不得不不断研究更快的处理器,存储器,以适应这一需求。
然而,科学家们意识到,单块处理器的速度发展空间是有限的,为什么不能让计算机象人一样协同工作,“群策群力”地将工作完成好呢!这时,就掀起了“并行计算”的研究。
举个例子来说,我们架设了一台WWW服务器,上面构建了一个电子商务网站,然而随着时间的推移,名声越来越大,这时点击率也就越来越高,WWW服务器的负载也就越来越高。这种情况下,我们就必须提升WWW服务器的能力,以满足以益增长的服务请求。这时,我们就面临两种选择:
1)升级WWW服务器,采用更快的CPU,增加更多的内存,使其更具有POWER;但日益增长的服务请求又会使服务器再次过载,需要再次升级,这样就陷入了升级的怪圈。还有,升级时还得考虑到服务如何接续,能否中止!
2)增加WWW服务器,让多台服务器来完成相同的服务。
这种方法就是服务器集群,通过并行技术来大大提升系统性能。也就是这一章的主要内容,这种方法具有很好的扩展性,而且可以最大限度地利用已有投资。
1.1.集群的概念
集群,是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。
近几年来,微处理器、内存、总线技术、网络技术有了非常大的进步,软件的并行技术也有了非常大的进步,这使得让一组廉价的个人电脑与工作站协同工作成为可能,甚至可以与拥有强大的芯片处理能力的超级计算机竞争。
比如,16个普通微处理器组成的集群系统可以达到亿次级浮点计算机能力,而且总的成本小于40万元。
不幸的是,建造一个集群并不是一件简单的事件。集群的组成部分必须根据要运行的主要应用进行调整,以使之运行在最佳状态。这此因素带来的结果就是,建造集群系统不是只有一个标准的方案,在本章中,我们就会看到许多种建造方案。
集群技术是计算机系统结构的前沿领域,笔者也仅是略有了解,希望本文能起到抛砖引玉之用。
1.2.并行技术
这是一个非常简单的建造四节点的小集群系统的例子,它是构建在Linux操作系统上,通过MPICH软件包实现的,希望这个小例子能让大家对集群系统的构建有一个最基本的了解。
2.使用MPICH构建一个四节点的集群系统
这是一个非常简单的建造四节点的小集群系统的例子,它是构建在Linux操作系统上,通过MPICH软件包实现的,希望这个小例子能让大家对集群系统的构建有一个最基本的了解。