使用mpich2配置linux服务器集群

创建SSH信任连接
1、更改/etc/hosts文件
  
  vim /etc/hosts
  编辑为下面内容:
  127.0.0.1 localhost.localdomain localhost
  192.168.110.172 scc-m  #node01的IP
  192.168.110.172 node01  #node01的IP
  192.168.110.173 node02  #node02的IP

2、在node01生成SSH秘钥对
  
  ssh-keygen -t rsa
  产生.ssh目录
  
  ls -a
  查看确认无误
3、生成authorized_keys文件

  cd .ssh
  进入.ssh目录

  cp id_rsa.pub authorized_keys

4、建立本身的信任连接

  cd ..
  退出到/root目录下
  
  ssh node01
  按提示输入yes

5、设置node02
  ssh-keygen -t rsa
  生成.ssh目录

  scp 192.168.110.172:/root/.ssh/* /root/.ssh
  拷贝node01上的.ssh文件夹到本地并覆盖本地的该目录

  scp 192.168.110.172:/etc/hosts /etc/hosts
  拷贝node01上的hosts文件覆盖本地的hosts

  ssh node01
  提示处输入yes

6、确认两台机器的信任连接已建立

  在每个节点试验执行:
  ssh node01
  ssh node02
  如果有提示,在提示处输入yes回车,只要确定无需输入密码就能登陆即可
下面是安装mpich2的过程
二、安装MPICH2

1、到MPICH官方网站下载源代码包,解压缩

  tar -zxvf mpich2-1.0.7.tar.gz
  
2、创建安装目录

  mkdir /usr/MPICH-instsll

3、进入mpich2解压到的目录里

  cd mpich2-1.0.7

4、下面就是编译安装软件的那三个基本步骤――检查配置、编译、安装,这次在./configure后还设置了安装目录

  ./configure --prefix=/usr/MPICH-install

5、修改环境变量(编辑.bashrc文件)

  vim .bashrc
  
  修改环境变量为(新增PATH一行):
  
  # .bashrc
  # User specific aliases and functions
  PATH="$PATH:/usr/MPICH-install/bin"  #这个地方用自己的安装路径,我们是以普通用户的权限来安装的,所以路径不是这样。
  alias rm='rm -i'
  alias cp='cp -i'
  alias mv='mv -i'
  # Source global definitions
  if [ -f /etc/bashrc ]; then
          . /etc/bashrc
  fi

6、测试环境变量设置,下面是我测试成功的屏显:

  [user@node01 ~]$ which mpd
  [user@node01 ~]$ which mpicc
  [user@node01 ~]$ which mpiexec
  [user@node01 ~]$ which mpirun

7、修改/etc/mpd.conf文件,内容为secretword=myword

  vim /etc/mpd.conf                 # 自己创建,并写入secretword=myword保存,由于我们没有root权限,所以我改在主目录下建立.mpd.conf文件并写入内容

  设置文件读取权限和修改时间戳

  chmod 600 /etc/mpd.conf
  touch /etc/mpd.conf               # touch .mpd.conf,写入之后这一步可以省略

8、创建主机名称集合文件/root/mpd.hosts   # 同样我们在主目录下创建该文件并写入内容

  vim mpd.hosts
  文件内容如下:
  node01
  node02
三、测试

1、本地测试

  启动:
  mpd &
  
  观看启动机器:
  mpdtrace

  退出:
  mpdallexit

2、运行集群系统

  mpdboot -n 2 -f mpd.hosts
  参数-n 2指定了要起动的机器个数,-f mpd.hosts指定了通过mpd.hosts运行

  mpdtrace

  mpdallexit

3、测试运行MPICH的程序

  mpdboot -n 2 -f mpd.hosts
  启动这两台机器

  mpiexec -n num /example/hello
  用num指定使用的进程数

  mpdallexit

四、查错

1、通过mpdcheck获得帮助信息

  mpdcheck -pc

2、查错

  mpdcheck -l

3、通过mpd.hosts文件查错

  mpdcheck -f mpd.hosts
  如果无错误

  mpdcheck -f mpd.hosts  -ssh

4、对任意两台机器进行查错

  node01上:

  mpdcheck -s
  返回主机名host和端口port
  
  node02上:

  mpdcheck -c host port

5、mpd查错

  node01上:
  
  mpd -e &
  返回使用的端口

  node02上:

  mpd -h m1 -p echoed_port_m1 &

你可能感兴趣的:(linux,集群,服务器,职场,休闲)