直接做简单cluster其实不是太麻烦的。举个例子,总共5台服务器A,B,C,D,E,
1. 5个机器都安装好熟悉的linux发新版,安装、配置好inter编译器(用来编译mpich之类的,性能比gcc好很多)、mpich2之类的。
2.打通ssh信任登陆,选一个同时做控制节点和存储节点(自己玩玩,结算过程中IO量不大的话简单的NFS就行了),其他几个机器都挂上NFS,主要的工作目录都是在共享目录上。配置好mpich2以及openpbs或者lsf之类的调度软件。
3.把mpich2里面自带的算Pi之类的c程序用mpicc编译一下,fortran的用mpif90?好多年不玩这些有点忘记了。
4.使用任务调度系统提交任务。。
PS:一般HPC cluster的结构大同小异,比如超算中心会用专门的存储服务器并且用lustre这样的分布式文件系统(自己玩就太复杂了),节点与节点直接的连接方式除了以太网外会使用infiniband(延迟是us级别,而且infiniband交换机背板带宽也很大)。编译节点也会单独分开,还会放几个debug用的节点给大家调试,但是一般这样的节点上的进程运行时间、内存会限制一下。
HPC cluster不是什么高科技,现在新玩法也就是计算节点插点显卡,做异构的架构,大部分行业内的计算软件还是用不了GPU的。我也转行几年了。有不对的地方大家指正。
一般专门讲这个的书不多,复旦车静光老师以前自己组建过一个cluetr写成了书。
FUCON96主页内容虽然有点老,不过大概思路都是这样的。做大规模的集群本来就是发现哪里成为了瓶颈就进行改机。也可以参考一下国内 曙光和联想深腾系里的结构图。