基于mpich搭建MPI集群

临毕业前,想把NMF算法基于MPI实现,申请了16台4核心的机器作为实验环境,利用mpich进行集群的搭建,步骤记录如下:

安装mpich

 1. 下载之后,mv mpich.tgz /home/
 2. tar zxvf mpich.tgz 
 3. ./configure -rsh=ssh -prefix=/usr/local/mpich
 4. make&&make install

配置mpich 的工作目录
 1.  每一个slave 节点都进行如上安装 /home/mpich 目录为以后任务分发的默认目录
 2. chown -R username:username mpich
       chown -R username:username /usr/local/mpich
 3. 在~/.bashrc 里面添加
       export PATH=$PATH:/usr/local/mpich

配置修改

 1. 修改/usr/local/mpich/share/machines.LINUX,前面是机器的别名,后面是机器的cpu核心数
     ict-master:4
     ict-49:4
     ict-47:4
     ict-46:4
     ict-45:4
     ict-44:4
     ict-43:4

  修改/etc/hosts 配置如下
 127.0.0.1 localhost.localdomain localhost
  xx.xxx.xx.xx ict-master
  xx.xx.xx.xx ict-49
  xx.xx.xx.xx ict-34
  ::1             localhost6.localdomain6 localhost6

    修改主机名称
    vim /etc/sysconfig/network
    HOSTNAME=ict-master


配置无密码访问
在同一个用户下,配置无密码ssh 访问,首先在master节点
chmod g-w ~/.ssh/authorized_keys
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
除了对Slave节点进行如下操作外,对自己的也需要进行如下操作
cat  id_dsa.pub >> ~/.ssh/authorized_keys
若你的机器上没有.ssh目录或者也没有authorized_keys文件直接创建就好了,但是.ssh目录的权限应该修改为700

考虑到集群数量很多,不太可能一个一个节点的逐个部署,主要理由scp 和expect工具完成自动化的安装和部署。

你可能感兴趣的:(集群,mpi)