正如大家所看到的,我们的机器在绝大多数时间是空闲的。如果在Windows下用任务管理器或Linux平台上top、xload之类的工具观察CPU,会看到CPU的使用率通常只有1~2%。事实上,如果在有更多计算机的情况下,这种浪费会加剧。在一个有300台计算机的部门里,CPU的空闲率是惊人的,然而这些部门还是需要强大的服务器用来编译或模拟计算。随着用户的增加,即使是8个CPU的服务器满负荷时也不能把任务交给另外的空闲服务器,因为用户很少会改变习惯去登陆另外一台服务器。如果能利用现有的计算资源,把空闲的CPU利用起来,或者能让服务器智能地迁移负荷,那该多好。架构分布式计算机[url=http://www.baidu.com/s?tn=piglet&ct=&lm=&z=&rn=&word=集群]集群就能达到充分利用资源的效果。下面我们就详细介绍以MOSIX作为集群方案,使用Red Hat Linux架构高性能价格比分布式计算机集群的方法。
我们选择MOSIX作为集群的方案,并使用无盘节点。架构集群并没有想象中那样复杂。参考下面的步骤可以一步步地架构集群,整个方案也不是很昂贵,而且便于扩展。因为Red Hat在中国是很有影响的Linux发行版本,不论是初学者还是专业工作者,都可以在Red Hat Linux中定制自己的版本,所以集群的Linux操作系统选择Red Hat。我们使用终端服务器LTSP,它结构简单,便于快速扩展。还有,我们架构集群使用的硬件是可以改进的。比如,使用双CPU的主板和至强处理器,这样单一机柜中处理器就可以密集到48块CPU。本例中使用24块CPU。除了CPU以外,还可以使用千兆网卡或光纤网卡,交换机可以使用光纤交换机,内存总数可以达到48GB。但是,随着硬件配置的升级,集群整体价格就会过高,而性能的提升并不是按比例的,因此本例的配置是选择了性价比较好的组合。MOSIX是利用给内核源代码加补丁的办法,增加内核的功能来达到内核级的集群支持。通过编译后的内核,它启动的系统之间的关系类似SMP多处理器系统,即从外面角度看只有一台有很多处理器的庞大机器,但内部却是用很多机器架构成的。MOSIX集群的特点是对用户透明,原有的应用程序不需要修改代码即可以在集群中分布计算。