快速搭建Linux服务器集群(上)

2008-9-26  选择字号:  | |
打印本文章
正在加载数据...

  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构建一个四节点的集群系统

  2.1 所需设备

  1)4台采用Pentium II处理器的PC机,每台配 置64M内存,2GB以上的硬盘,和EIDE接口的光盘驱动器。

  2)5块100M快速以太网卡,如SMC 9332 EtherPower 10/100(其中四块卡用于连接集群中的结点,另外一块用于将集群中的其中的一个节点与其它网络连接。)

  3)5根足够连接集群系统中每个节点的,使用5类非屏蔽双绞线制作的RJ45缆线

  4)1个快速以太网(100BASE-Tx)的集线器或交换机

  5)1张Linux安装盘

  2.2 构建说明

  对计算机硬件不熟的人,实施以下这些构建步骤会感到吃力。如果是这样,请找一些有经验的专业人士寻求帮助。

  1.准备好要使用的采用Pentium II处理器的PC机。确信所有的PC机都还没有接上电源,打开PC机的机箱,在准备与网络上的其它设备连接的PC机上安装上两块快速以太网卡,在其它的PC机上安装上一块快速以太网卡。当然别忘了要加上附加的内存。确定完成后盖上机箱,接上电源。

  2.使用4根RJ45线缆将四台PC机连到快速以太网的集线器或交换机上。使用剩下的1根RJ45线将额外的以太网卡(用于与其它网络相连的那块,这样机构就可以用上集群)连接到机构的局域网上(假定你的机构局域网也是快速以太网),然后打开电源。

  3.使用Linux安装盘在每一台PC机上安装。请确信在Linux系统中安装了C编译器和C的LIB库。当你配置TCP/IP时,建议你为四台PC分别指定为192.168.1.1、192.168.1.2、192.168.1.3、192.168.1.4。第一台PC为你的服务器节点(拥有两块网卡的那台)。在这个服务器节点上的那块与机构局域网相连的网卡,你应该为其指定一个与机构局域网吻合的IP地址。

  4.当所有PC都装好Linux系统后,编辑每台机器的/etc/hosts文件,让其包含以下几行:

  192.168.1.1 node1 server

  192.168.1.2 node2

  192.168.1.3 node3

  192.168.1.4 node4

  编辑每台机器的/etc/hosts.equiv文件,使其包含以下几行:

  node1

  node2

  node3

  node4

  $p#

  以下的这些配置是为了让其能使用MPICH’s p4策略去执行分布式的并行处理应用。

  1.在服务器节点建一个/mirror目录,并将其配置成为NFS服务器,并在/etc/exports文件中增加一行:

  /mirror node1(rw) node2(rw) node3(rw) node4(rw)

  2.在其他节点上,也建一个/mirror目录,关在/etc/fstab文件中增加一行:

  server:/mirror /mirror nfs rw,bg,soft 0 0

  3./mirror这个目录从服务器上输出,装载在各个客户端,以便在各个节点间进行软件任务的分发。

  4.在服务器节点上,安装MPICH。MPICH的文档可在

  http://www.mcs.anl.gov/mpi/mpich/docs.html获得。

  5.任何一个集群用户(你必须在每一个节点新建一个相同的用户),必须在/mirror目录下建一个属于它的子目录,如/mirror/username,用来存放MPI程序和共享数据文件。这种情况,用户仅仅需要在服务器节点上编译MPI程序,然后将编译后的程序拷贝到在/mirror目录下属于它的的子目录中,然后从他在/mirror目录下属于它的的子目录下使用p4 MPI策略运行MPI程序。


搭建Linux服务器集群
 快速搭建Linux服务器集群(上)
 快速搭建Linux服务器集群(下)

原文出处:http://server.51cto.com/art/200807/81601.htm
来源:51cto    作者:过客    
思科准备为Linux开发人员悬赏10万美金举办程序大赛,开发人员必须基于思科的AXP以及ISRs来开发网络应用,并希望……
一款所谓尖端产品和前沿产品的区别是什么?为什么Fedora 10是一款真正的尖端Linux发行版?这个版本主要有哪些特点?
Top 500组织每隔半年就会发布超级计算机的最新排行榜,根据其发布的最新排行榜,运行Linux的计算机具有最快的速度。
谈及Linux在市场上和人们理念中的战争,我们更多的想到的是Linux与微软Windows或Sun的Solaris在服务器端的竞争,但不要忘了还有更激烈的战争……
什么是Intel VT/AMD-V?kvm支持哪些用户空间工具?哪些虚拟磁盘格式?kvm和Xen有何区别?
在之前的专题里,我们学习了如何运行ESX Server以及它与免费的VMware Server的比较。在本专题中,我们将详细描述VMware ESX Server子操作系统性能的技巧。
随着VMware陆续推出新产品,越来越多的虚拟化管理更加关注在虚拟架构里的存储问题。虚拟化存储有哪些选择?如何提高存储效率?在配置存储的时候应该注意哪些事项?
Novell推出PlateSpin PowerConvert Version 7.0版本,新增备份与恢复功能,并扩充对多重平台的支持。那么如何安装PlateSpin PowerConvert?如何在具体环境中使用迁移和恢复功能?
最新更新
专家答疑
技巧
James E. Geis
使用两台非同步的或不同的服务器作为提供冗余的一种方式怎么样?但是由于增加了设备,容易引起管理混乱的问题。有没有更好的办法呢?
Anil Desai
使用虚拟硬盘(VHD)优劣势是什么?那么直接映射虚拟机到物理磁盘的优劣势呢?在具体的情况下如何进行选择?
Andrew Kurtz
虚拟机文件在VMware里如何处理?有识别虚拟机及其状态与位置的好用工具、标准做法或策略吗?您能比较追踪服务器信息与状态的方法吗?