2.创建NFS服务
sudo apt-get install nfs-common nfs-kernel-server
在服务器节点/home目录下建立mpi目录,并将其设置成NFS服务器,在/etc/exports
文件中加入一行:
/home/mpi node1(rw) node2(rw)
在客户端节点的/etc/fstab文件中增加一行:
node1:/home/mpi /home/mpi nfs rw,bg,soft 0 0
将/home/mpi这个目录从服务器节点输出,并装载在各客户端的/home/mpi目录下,从而便于在各节点间分
发任务.
3.修改/etc/hosts文件,将所有节点名称极其ip地址填入。例如:
127.0.0.1 localhost.localdomain localhost
219.242.255.161 node1
219.242.255.162 node2
......................
每个节点都进行类似的设置。这样做的目的是使节点之间能够通过node1 ... noden的名
称相互访问。你能通过ping noden 或 ssh noden进行测试。
4.安装设置ssh
sudo apt-get install openssh-client openssh-server
以设定的用于启动mpi计算的用户登录,运行
ssh-keygen -t rsa #对于所有提示直接回车即可
这将生成一个密钥对,分别存放在~/.ssh/id_rsa和~/.ssh/id_rsa.pub文件内。
然后进行访问授权,运行:
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
chmod go-rwx ~/.ssh/authorized_keys
ssh-agent $SHELL
ssh-add
在每个节点重复一遍。收集所有节点下的authorized_keys文件,合并为一个authorized_keys,然后再分发到每个节点的$HOME/.ssh目录下去。
试着在某一节点上登录所有节点(包含自身),ssh noden,则在$HOME/.ssh/下生成一个名为known_hosts的文件,里面放着访问该主机的身份指纹,也在各个节点上将known_hosts文件作同样的拷贝。
以上的目的是使各节点相互之间访问无需输入密码。
5.开启各项必需的服务
ssh
nfsd
networking
6.在各节点编译、安装mpich2.(详情参考安装文件)
./configure --prefix=/usr/local
make
make install
7.设置
在$HOME目录下执行
touch ~/.mpd.conf
在里面输入
secretword= #为任意你所想填写的字符串,如"mysecret"
再执行
chmod 600 ~/.mpd.conf
编写一个mpd.hosts文件,内容如下:
node1 #集群中各节点名,一行一个
node2
......
8.测试安装是否正确
mpdboot -n number -f mpd.hosts #number为要启动的节点数,mpd.hosts为包含机器名的文件
mpdtrace #查看已启动的节点
mpdallexit #所有节点退出
拷贝/usr/local/share/examples_graphics下的用例到其他目录,编译cpi.c:
mpicc -o cpi cpi.c
再执行:
mpdboot -n 2 -f mpd.hosts
mpiexec -n 2 cpi
将会获得如下信息
Process 0 on node1
Process 1 on node2
..................
单机上模拟多节点能用如下方式:
mpd& #启动mpi任务管理服务,只启动本节点的mpd
mpiexec -n 2 cpi
如果都能正常运行即证实集群环境安装成功。
tar zxvf mpich.tar.gz
tar xvf mpich.tar
3. 进入解开的mpich子目录
cd mpich
4. 创建Makefile和编译
./configure [-prefix=/usr/local/mpich-1.2.1]
make
5. 测试安装是否正确
cd examples/basic
make cpi
../../bin/mpirun -np 4 cpi
$(HOME)/mpich/ make testing
6. 将mpich安装到指定的目录
make install
sudo apt-get install nfs-common nfs-kernel-server
在服务器节点/home目录下建立mpi目录,并将其设置成NFS服务器,在/etc/exports
文件中加入一行:
/home/mpi node1(rw) node2(rw)
在客户端节点的/etc/fstab文件中增加一行:
node1:/home/mpi /home/mpi nfs rw,bg,soft 0 0
将/home/mpi这个目录从服务器节点输出,并装载在各客户端的/home/mpi目录下,从而便于在各节点间分
发任务.
3.修改/etc/hosts文件,将所有节点名称极其ip地址填入。例如:
127.0.0.1 localhost.localdomain localhost
219.242.255.161 node1
219.242.255.162 node2
......................
每个节点都进行类似的设置。这样做的目的是使节点之间能够通过node1 ... noden的名
称相互访问。你能通过ping noden 或 ssh noden进行测试。
4.安装设置ssh
sudo apt-get install openssh-client openssh-server
以设定的用于启动mpi计算的用户登录,运行
ssh-keygen -t rsa #对于所有提示直接回车即可
这将生成一个密钥对,分别存放在~/.ssh/id_rsa和~/.ssh/id_rsa.pub文件内。
然后进行访问授权,运行:
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
chmod go-rwx ~/.ssh/authorized_keys
ssh-agent $SHELL
ssh-add
在每个节点重复一遍。收集所有节点下的authorized_keys文件,合并为一个authorized_keys,然后再分发到每个节点的$HOME/.ssh目录下去。
试着在某一节点上登录所有节点(包含自身),ssh noden,则在$HOME/.ssh/下生成一个名为known_hosts的文件,里面放着访问该主机的身份指纹,也在各个节点上将known_hosts文件作同样的拷贝。
以上的目的是使各节点相互之间访问无需输入密码。
5.开启各项必需的服务
ssh
nfsd
networking
6.在各节点编译、安装mpich2.(详情参考安装文件)
./configure --prefix=/usr/local
make
make install
7.设置
在$HOME目录下执行
touch ~/.mpd.conf
在里面输入
secretword= #为任意你所想填写的字符串,如"mysecret"
再执行
chmod 600 ~/.mpd.conf
编写一个mpd.hosts文件,内容如下:
node1 #集群中各节点名,一行一个
node2
......
8.测试安装是否正确
mpdboot -n number -f mpd.hosts #number为要启动的节点数,mpd.hosts为包含机器名的文件
mpdtrace #查看已启动的节点
mpdallexit #所有节点退出
拷贝/usr/local/share/examples_graphics下的用例到其他目录,编译cpi.c:
mpicc -o cpi cpi.c
再执行:
mpdboot -n 2 -f mpd.hosts
mpiexec -n 2 cpi
将会获得如下信息
Process 0 on node1
Process 1 on node2
..................
单机上模拟多节点能用如下方式:
mpd& #启动mpi任务管理服务,只启动本节点的mpd
mpiexec -n 2 cpi
如果都能正常运行即证实集群环境安装成功。
1. 下载,网址:http://www.mcs.anl.org/mpi/mpich
2. 将软件包解压tar zxvf mpich.tar.gz
tar xvf mpich.tar
3. 进入解开的mpich子目录
cd mpich
4. 创建Makefile和编译
./configure [-prefix=/usr/local/mpich-1.2.1]
make
5. 测试安装是否正确
cd examples/basic
make cpi
../../bin/mpirun -np 4 cpi
$(HOME)/mpich/ make testing
6. 将mpich安装到指定的目录
make install