兩台機器,IP地址分別為192.168.207.192和192.168.207.102。其中192為master節點,102為node節點.
1. 第三方源進行OpenMPI安裝
sudo apt-get install openmpi-bin openmpi-doc libopenmpi-dev
查詢版本信息
mpirun --version
2. 環境准備
清空兩台機器 “~/ .ssh” 下的所有文件
3.配置host文件
兩台機器相同操作:
sudo vi /etc/hosts
4. 檢查網絡連接
確保worker和master能ping通
ping -c 3 master
ping -c 3 node
5. 免密操作
ssh node 即可
6. NFS共享目錄
master和node節點都在相同的路徑下創建一個共享文件夾
mkdir /home/omnisky/mpi_volumn
安裝NFS(兩個節點)
sudo apt install nfs-kernel-server
master節點設置共享文件夾為讀寫權限。通過 “sudo vi /etc/exports” 命令進入配置文件:
重啟NFS服務
sudo /etc/init.d/nfs-kernel-server restart
7. 從節點加載共享目錄
sudo mount -t nfs 192.168.207.192:/home/omnisky/mpi_volumn /home/omnisky/mpi_volumn
8. 測試NFS共享目錄
master節點在共享目錄mpi_volumn中添加一個 “hello”文件
node節點打開共享目錄mpi_volumn,發現一個名為 “hello”的文件,共享成功。
9. 測試OpenMPI集群
在master共享目錄mpi_volumn下面創建一個名為"test.c"的OpenMPI程序。
編譯:mpicc test.c -o main
集群下運行OpenMPI:
mpirun -np 1 -host master ./main
mpirun -np 1 -host 192.168.207.102 ./main
mpirun -np 2 -host master, -host 192.168.207.102 ./main
報錯:[....] Restarting nfs-kernel-server (via systemctl): nfs-kernel-server.serviceJob for nfs-server.service canceled.
failed!
將一開始的 /etc/exports
改成:
/home/omnisky/mpi_volumn *(rw,sync,no_root_squash,no_subtree_check)
測試
sudo /etc/init.d/nfs-kernel-server status
參考文檔:
https://blog.csdn.net/Canhui_WANG/article/details/90552496
https://blog.csdn.net/mjf110107110/article/details/88651251