编辑: glay | 2017-09-24 |
第一章 绪论 第4页维护部件. 这是维持集群能够正常工作的部件, 包括散热系统如空调和电源、 机柜等. 因为集群常常要长时间高功耗的工作,如果不能保持适当的温度和稳定 的电源,计算机内部出错的概率就会大大的提高,轻则死机导致作业失败,重则 烧毁硬件造成损失.特别是热天,集群高速运转时会有很高的温度,一定要做好 降温的工作;
如果有断电通知,记得事先将总插头拔下,以免恢复供电时瞬时电 流的冲击将机器烧毁. 好了,下面我们来讨论一下构建集群所需要的软件基础. 离开之前,我们必须声明,本教程介绍的是面向科学计算用户的 高性能集群(High Performance Cluster,HPC) ,而不是面向企业的 高可用集群(High Availability Cluster, HAC) .后者常常用于建立企业网站,服务器,大型数据库(如Oracle 数据库).这两 者对性能要求的层重点完全不同! §1.2 计算机集群的软件结构 有了硬件后,要真正实现集群,还必须有优秀的软件进行支持.集群的软件 结构包括以下几部分: 操作系统.虽然世界 top100 的集群中确实有 Windows 集群,但是我们强烈 推荐读者使用 Linux 操作系统.Linux 免费,方便,最重要的是效率高,很多计 算化学软件都是专门为 Linux 编写的,而且 Linux 非常适合于程序开发和批量处 理. Linux 操作系统也有很多不同的分支.比较常见的就是 RedHat 系列,但是 本教程不使用它.我们选择 Debian 操作系统,与RedHat 相比它有很多优点,最 大的优点是体积小,安装完系统后只有不到 100MB,并且随时可以扩充新的功 能,没有冗余的文件,因此非常适合于科学计算.关于 Debian 可以在网上找到 很多信息.本教程不会直接讲解 Linux 或者 Debian 的使用方法,对Linux 不熟 悉的读者可以参考: 王旭.Debian 标准教程.北京:人民邮电出版社,2009 关于哪个版本的 Linux 更适合组装集群是一个老掉牙的问题,和 C 和C++哪个好 一样,作者认为这是一个特别主观的问题.有很多人推荐过别的 Linux,如: OpenSuse.这个系统很好用,但是作者不喜欢,因为它的系统太臃肿.
第一章 绪论 第5页RedHat. 正统 的Linux,而且带有 Cluster Tool.但是作者认为那个 Cluster Tool 不 适合做 HPC,仅仅适合 HAC. Rocks.这个系统非常适合做生物计算的集群,但是因为种种原因,作者后来没有使用 它,还是因为它太大了! 当然,如果读者的个人偏好和作者不同,也没有关系.大多数操作在各个 Linux 间是兼 容的. 网络通信系统.这是集群得以成为 集群 的核心系统.没有这个系统,集 群只是几台互不相干的计算机组成的 机群 .这里的网络通信系统,不止是 TCP/IP 协议等网络连接功能,还包括文件共享系统、远程登录系统、信息管理 系统等, 只有这样才能使集群中的计算机成为一个相互协作的整体. 这些功能可 以直接使用 Debian 操作系统的组件完成. 并行计算系统. 这是实现高性能计算的平台.并行计算系统是实现某种并行 计算协议的软件,各种并行计算的程序都要调用并行计算的函数和库才能运行, 例如量子化学软件 GAMESS,NWChem 和分子动力学软件 NAMD,Gromacs, Amber 等.它本质上是一种通信协议.本教程将使用 MPICH2 作为并行计算系 统. 作业管理系统. 这是管理集群的工具. 它负责计算作业的提交、 管理、 控制, 集群资源的分配、调度,用户权限的分配、区分等,对于管理、维护特别是使用 集群具有重要的意义.本教程使用免费软件 TORQUE 和Maui 实现. 应用软件.这是集群的实用部分,比如 Gaussian,NAMD 和各种编译器等 等. 本教程涉及到的软件,除了 Windows 操作系统和 Gaussian 等以外,所有软 件均为免费软件! 在继续之前,有一些话需要交代给读者.Linux 系列的软件和其它免费学术 类软件都是自由开发的,因此,它们的不同版本之间可能有某些不兼容情形,一 些安装时候发生的状况和本教程所描述的可能有很大的不同. 作者曾经帮人装过 NWChem,因为作者本人安装过 NWChem5.2,没有遇到过什么问题.可是别人 安装的是 6.0 版本,在安装的时候碰到了无数编译错误,最后通过作者手动修改 了NWChem6.0 的源码才得以解决(有经验的读者应该意识到这是编译器版本的