一、安装虚拟机
这步就不详细说了,参考了一位博主的教程,推荐:安装CentOS7虚拟机(超详细)_linux多台虚拟机-CSDN博客
这步踩了一个坑,报错显示无法使用内核设备,参考博文:无法打开内核设备“\.\VMCIDev\VMX”: 操作成功完成。是否在安装 VMware Workstation 后重新引导? 模块“DevicePowerOn”启动失败。 未能启动虚拟机。_无法打开内核设备“\\.\vmcidev\vmx”: 操作成功完成。是否在安装 vmware wor-CSDN博客
安装必要的软件
sudo yum install nano sudo yum install net-tools sudo yum install gcc sudo yum install gcc-c++ sudo yum install gcc-gfortran
更新yum库
yum update
下载相关依赖包
yum install wget -y yum install gcc gcc-c++ gcc-fortran kernel-devel -y
二、关闭防火墙
关闭防火墙避免MPI不能访问网络造成程序执行出错,禁止防火墙开机启动
sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
永久关闭SELinux命令
sudo nano /etc/selinux/config 注释下面两行: #SELINUX=enforcing SELINUX=disabled #SELINUXTYPE=targeted 重启生效: sudo reboot -f
查看防火墙状态
/usr/sbin/sestatus
三、搭建集群
1、克隆两台上述配置的虚拟机
参考:克隆虚拟机_无法为共享或远程虚拟机创建克隆-CSDN博客
2、为每个节点分配IP地址
参考:关于CentOS7虚拟机配置静态IP地址及ping通百度等官网问题的解答_centos7ping不了百度-CSDN博客
3、修改机器名(在每台机器的终端上操作)
sudo vim /etc/sysconfig/network
如下图所示,改为节点IP与名称对应的形式
4、修改/etc/hosts文件,修改依旧如上图所示(注:原文件的内容要删掉)
sudo vim /etc/hosts
5、修改节点名称
sudo vim /etc/hostname
(Node2、Node3只用写名称就好)
6、SSH免密登录
参考:配置SSH无密码登录_ssh无密码登录没有这个文件-CSDN博客
7、挂载FNS
参考:centos7搭建nfs以及挂载完整步骤_centos7安装配置nfs服务和挂载-CSDN博客
8、MPICH下载(最好下载到共享目录中)
9、测试
在共享目录中建立helloworld.c测试文件
#include "mpi.h" #include <stdio.h> #include <math.h> void main(argc,argv) int argc; char *argv[]; { int myid, numprocs; int namelen; char processor_name[MPI_MAX_PROCESSOR_NAME]; MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD,&myid); MPI_Comm_size(MPI_COMM_WORLD,&numprocs); MPI_Get_processor_name(processor_name,&namelen); fprintf(stderr,"Hello World! Process %d of %d on %s\n", myid, numprocs, processor_name); MPI_Finalize(); }
结果输出
完结撒花!MPI集群搭建教程网上五花八门,很少有完整的教程,我整合了一下各个阶段需要注意的问题,站在诸位牛牛博主的肩膀上,希望能帮助到大家~
标签:虚拟机,sudo,MPI,CSDN,install,yum,集群 From: https://www.cnblogs.com/doris510/p/18156360