基于Linux 的PC 集群

摘 要:PC 机由于其自身性能的限制,不可能用于大规模的科学计算中,速度和稳定性已经
成为PC 更深层次应用的一大障碍. 随着主要适用于PC 机的Linux 操作系统及其集群技术的发
展,这一问题得到了很好地解决,这就是采用基于Linux 的PC 集群.

PC(个人计算机) ,相对于高级计算机,如:小型机、中型机、大型机来说,只有非常有限的
计算能力. 因此,在需要大量的科学计算或是网络服务请求时,PC 就很难满足实际需要,这时
候往往要使用更高级的计算机. 但是,高级计算机的价格非常昂贵,配置起来成本太高,因此极
大的阻碍了一些单位计算能力或网络服务能力的提高. 目前大都采用相对低级的计算机集群
从而达到较高级计算机计算能力的方法. 集群,就是由一些互相连接在一起的计算机构成的一
个平行或分布系统. 它们是一个完整的系统,既可以同时处理许多不相关的事务,又可以提供
统一的服务. 随着计算机应用的日益广泛,PC 的价格已经大幅度的下降,同时其性能又有巨大
提高. 更快的CPU 、更大的内存、海量的硬盘,使PC 的应用更加深入,许多单位已经在使用PC
做以前只有小型机才能做的工作. 特别是近年来,Linux 操作系统及其集群技术的飞速发展,
基于Linux 的PC 集群已经得到了较大的应用,同时显示出非常好的应用前景.
1  基于Linux 的PC 的集群
1. 1  PC 集群的特点
由于PC 是市场发达、技术与熟的计算机产品,其稳定性虽然不能和高级计算机相比较,
但由于价格低廉,使PC 集群具有其独特的特点:
价格便宜 PC 集群的硬件完全采用PC 机的硬件,在PC 市场发达的情况下,非常容易购
买. 同时PC 集群所采用的软件是几乎免费的Linux 操作系统以及附带的大量的免费应用软
件,更是大大的降低了集群的软件成本.
配置随意 PC 集群中的节点计算机是普通的PC 机,其各种硬件可以根据实际需要随意
地配置. 更由于PC 很好的兼容性,还可以选择不同厂家生产的配件. 因此,无论是要求快速的
计算机能力还是要求海量的存储空间,都很容易实现. 集群的规模也随时根据实际需要进行更
改.
维护方便 虽然PC 集群的各个节点是普通的PC 机,其稳定性不如高级的计算机,但由
于PC 机的价格便宜,一旦某个节点机出现硬件或软件故障,则可以用一台完全相同的备用节 点机替换出现故障的节点机,整个集群可以迅速重新投入使用. 故障机器的维修也非常方便,
所需要的配件随时可购买、替换. 机器维修好以后,还可以继续充当备用节点机.
1. 2  PC 集群的硬件
PC 集群的硬件配置分为节点机硬件配置和网络配置. 节点机的硬件配置和普通的PC 机
没有很大区别. 由于其用于集群的特殊性,只需配置主板、CPU 、内存、网卡,连硬盘都可以根据
实际需要选择配用. 这可以极大的降低集群的硬件成本. 除了普通节点机外,还需要有主控节
点机. 主控节点机相对来说配置要高一些,配置也要更齐全. 对于网络配置来说,要求可能要高
一些. 由于考虑到系统的速度,整个集群的网络应该是百兆网或是千兆网. 此外,还需要一台高
速的交换机用于内部的数据交换. 如果对外服务,还需要一个节点充当路由器,负责两个网络
的连接. 在这种情况下,集群内的IP 地址一般使用内部IP ,对外使用统一的IP 地址. 至于网
络的拓扑结构,可以根据集群的需要自由采用. 一般情况下以太网应该能满足大部分的需要.
1. 3  PC 集群的软件
PC 集群采用Linux 操作系统. Linux 主要是由自由程序员维护的,它具有良好的稳定性
和安全性. 同时它真正的多任务模式以及非常强大的网络通信功能,非常适合于集群的应用环
境. 正是Linux 的发展,才更快地推动了PC 集群的发展. Linux 是个几乎免费的操作系统,任
何人都可以通过多种途径得到它. 同时由于Linux 是个源代码开放的系统,任何人都可以根据
自己的实际需要对它进行修改以满足自己的需要,使整个集群的系统软件和应用软件更有效
地工作. 还有非常重要的一点是,只需要很少的费用甚至不需要任何费用,就可以获得应用于
Linux 的非常丰富的应用软件库. 而且,Linux 具有非常完善的开发环境,可以根据实际需要开
发自己的应用软件. 这一切,都将在保证软件的有用性和可靠性的同时大大降低集群的软件成
本.
2  PC 集群的工作原理和应用
2. 1  PC 集群的工作原理
集群的技术基础是实现负载均衡. 负载均衡的基本思想是把本来施加于一台机器的服务
请求,根据某种算法,尽可能的把服务平均地分配到多台机器,使服务在尽可能短的时间之内
完成. 根据PC 集群的特点,大都采用流量分发的方法实现负载均衡. 这是一种效率高,集群结
构相对简单负载均衡实现方法. 其基本工作原理是:
所有的服务请求先汇集到集群的主控节点,主控节点根据所管理的全部集群工作节点的
处理能力和现状决定将服务请求分发给哪个集群工作节点. 当某个集群工作节点发生硬件或
软件故障时,主控节点能够自动地检测到并停止向这个集群工作节点分发服务请求. 这样,既
提高了系统的性能和处理能力,又很好的提高系统的可用性.
由于主控节点在集群中的重要性,有必要对主控节点进行冗余配置,甚至是对主控节点做
一个子集群,这样就可以消除由于主控节点的单一性带来的单一故障点.
典型的PC 集群拓扑结构如下:
交换机
主控节点
从控节点
工作节点1
Internet 路由器
工作节点N
2. 2  PC 集群的应用
基于Linux 的PC 集群几乎可以运用于所有科学研究和商务应用. 目前主要有以下几种
类型:
应用程序切换 当集群中的某个工作节点出现故障时,其它工作节点进行应用程序一级
的切换. 所有工作节点在正常情况下都可以独立的对外提供自己的服务. 在服务请求量不是很
大的情况下,一个集群可以保证多个应用程序的切换.
并行计算 主要依靠任务分发、进程通信等方法实现大规模的、并行的科学计算. 这在科
研开发中起了非常重要的作用. 用于这种环境的集群,其规模一般都比较大. 在保证集群稳定
性可靠性的前提下,明显地突出了PC 集群的成本优势.
动态的负载均衡 所有的集群工作节点提供相同的服务,通过主控节点流量分发,实现单
个应用程序的负载均衡,提供了高可用性. 现阶段,以动态均衡为目的的集群在商务应用中非
常广泛.
由此可见,成本低廉、可靠性高的基于Linux 的PC 集群,可以在很大程序上满足许多对
计算机系统要求比较高的单位需要.
虽然高级计算机的集群技术已经发展了很多年,但是PC 的集群还是比较新的技术,不是
非常的完善,还有很多可以发展的地方,必将并且已经出现了新的发展,如集群分层处理技术。
PC Integrity Based on Linux
WANG Hui2zhen
( Gannan Teacher’s College , Ganz hou 341000 , China)
Abstract :Owing to the limitation of PC Computer features ,it is impossible to do scientific calculation on large
scale. The speed and stability is a deeper obstalle to PC application. With the development of Linux operation and its
integrity technology ,the obstacle will be overcomed by the PC integrity based on Linux.
Key words :PC; linux ;integrity