1.安装必要的软件(nano、net-tools、gcc、g++ gfortran)
sudo yum install nano
sudo yum install net-tools
sudo yum install gcc
sudo yum install gcc-c++
sudo yum install gcc-gfortran
2.关闭防火墙
1)直接关闭防火墙
$ sudo systemctl stop firewalld.service
2)禁止firewall开机启动
$ sudo systemctl disable firewalld.service
3)关闭SELinux命令(永久关闭)
$ sudo nano /etc/selinux/config 注释下面两行:
#SELINUX=enforcing
SELINUX=disabled
#SELINUXTYPE=targeted
设置后需要重启才能生效。
4)查看防火墙状态: $ /usr/sbin/sestatus
4.搭建集群和ssh免密登录在之前的课程中已完成,这里省略相关步骤。
5.安装MPICH2
在两台机器上的用户根目录下建立software目录,并把安装包拷到文件夹下,对mpich-3.0.4.tar.gz进行解压:
$ tar zxvf mpich-3.0.4.tar.gz
在Node1根目录下
$ mkdir mpi-install //安装MPICH的文件夹
$ mkdir mpi-work //并行程序的文件夹
进mpi解压包配置安装路径:
$ cd mpich-3.0.4
$ ./configure --prefix=/home/hadoop/mpi-install --with-pm=mpd:hydra
$ make
$ make install
-
在服务器端(slave01)配置方法(在root权限下进行)
/etc/exports文件配置,在文件/etc/exports中增加如下内容(以mpi-install为例)/home/hadoop/mpi-install 192.168.1.0/24(rw,sync,no_root_squash)
启动rpc和nfs服务
$ yum -y install nfs-utils//安装nfs
$ /bin/systemctl start rpcbind.service
$ /bin/systemctl start nfs.service
设置开机自启动
$ systemctl enable rpcbind.service
$ systemctl enable nfs.service
-
客户端(slave02)配置方法(在用户权限下进行)
$sudo yum -y install nfs-utils//安装nfs
建立共享目录
$mkdir /home/hadoop/mpi-install
查看共享目录
$showmount -e slave01(也可以写为slave01的IP地址)
挂载共享目录
$sudo mount -t nfs slave01:/home/hadoop/mpi-install /home/hadoop/mpi-install
$sudo mount -t nfs slave01:/home/hadoop/mpi-work /home/hadoop/mpi-work
$ df -h//查看是否挂载
客户端的开启自动挂载设置(推荐)
$sudo nano /etc/fstab
在该文件中增加如下内容
slave01:/home/hadoop/mpi-install /home/hadoop/mpi-install nfs defaults 0 0
slave01:/home/hadoop/mpi-work /home/hadoop/mpi-work nfs defaults 0 0
安装后分别在Node1和Node2加入环境变量/etc/profile(~/.bashrc)
$sudo nano ~/.bashrc 或者 $ sudo nano /etc/profile
PATH=$PATH:/home/hdusr/mpi-install/bin MANPATH=$MANPATH:/home/hdusr/mpi-install/man
export PATH MANPATH
$source ~/.bashrc 或者 $ source /etc/profile
// 检测运行的mpi命令的版本:
$ which mpicc
$ which mpiexec
slave01切换为用户模式
设置、启动mpd守护进程
a) 在用户主目录下创建文件 ~/mpd.hosts
将所有允许访问本机进行并行计算的机器名填入,一个机器名一行。
在本实例中的~/mpd.hosts文件内容为:
slave01
slave02
设置进程的配置环境
MPI通过mpd管理器来管理运行MPI程序。此外,需要在用户主目录下为其创建进程管理的配置文件(基于安全考虑):.mpd.conf
注意:这个文件只能由用户读写,在每台机器上创建如下文件:
$cd /home/hadoop
$sudo touch .mpd.conf
$sudo nano .mpd.conf
secretword=sll&4175//密码必须一致
$sudo chmod 600 .mpd.conf
$mpd& //启动本地mpd的命令
测试-slave01节点
测试-slave02节点
至此,两节点的MPI环境就搭建成功了。