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