MPICH是目前应用最广泛的免费MPI系统,也是运行在大部分机群系统的MPI并行环境
MPICH的网址是:http://www.mcs.anl.gov/mpi/mpich,从此处可以下载源程序mpich.tar.gz
下面以四台机器为机群为例说明MPICH的安装和配置:
1在四台机器上/etc/hosts这个文件都配置成一样,里面包括4个节点的ip地址和主机名的一一对应关系,假如四个节点的ip和主机名分别是node1/10.10.10.1, node2/10.10.10.2, node3/10.10.10.3, node4/10.10.10.4
也即是做了hosts解析(适用于内网),这样的话,内网中,无论是用主机名还是ip地址都可以ssh互相访问,方便快捷;
2配置NFS(将MPICH的安装目录以及用户家目录通过NFS网络文件系统共享),把其中一个节点,假如是node1配置为NFS服务器,,把他的/usr/local和/home目录共享出来
3在这个节点上安装NFS程序,然后开启NFS服务:chkconfig nfs on,chkconfig nfslock on , /etc/init.d/nfs restart,/etc/init.d/nfslock restart
然后在/etc/exports这个文件加入下面这些内容:
/home 10.10.10.0/24(rw,async,no_root_squash)
/usr/local 10.10.10.0/24(rw,async,no_root_squash)
做好上述修改后,再执行:exportfs -a,这样便完成了/home和/usr/local两个目录的输出共享;
4root登录到其他三个节点去,在文件/etc/fstab里面加入下面这些内容(也即是开机自动挂载):
node1:/home /home nfs default 0 0
node1:/usr/local /usr/local nfs default 0 0
再执行chkconfig netfs on ,mount -t nfs -a
完成上面步骤后,node2,3,4这3个节点应该就可以共享node1的/home和/usr/local这两个目录了,在任何一个节点用df- h 来验证
5配置NIS服务器,以便在各个节点间共享用户信息,这里还是以node1作为NIS服务器,首先安装ypserv和yp-tools,然后在/etc/sysconfig/network文件下面加入:NISDOMAIN=mycluster(这个NIS域名根据自己情况写)
再执行:
chkconfig ypserv on
/etc/init.d/ypserv restart
/usr/lib/yp/ypinit -m
也即是开机启动nis服务,并初始化NIS数据库
6依次在node2,3,4节点安装ypbind和yp-tools包,在/etc/sysconfig/network文件加入NISDOMAIN=mycluster这一行,然后执行:chkconfig ypbind on ,/etc/init.d/ypbind restart
默认情况下,NIS客户端ypbind会以广播的方式搜索NIS服务器,也可以在/etc/yp.conf加入一行ypserver node1,来直接指定NIS服务器
7配置完服务和客户端后,应该在node2,3,4,节点上分别用命令ypwhich,ypcat来验证是否能够从NIS服务器得到所需要的信息
ypwhich
node1
ypcat passwd
(应该显示出node1的passwd信息)
8为了能够使用NIS数据库中的用户,用户组等信息,需要修改/etc/nsswitch.conf文件,将有关行改成如下:
passwd:files nis
shadow:files nis
group:files nis
hosts:files nis dns.
完成这些步骤后,所有在node1的用户账户都可以在其他节点上使用了;
每次添加新的账户时,只需要在node1上进行,添加完账号后,需要在node1运行下面命令来刷新NIS数据库,cd /var/yp ;make
9/usr/local目录是所有节点的共享目录,所以mpich的安装只需要安装在这个目录下就行了,不必每个节点都安装