VirtualBox 搭建 CentOS 7 虚拟机集群运行 MPI

本文介绍了在 VirtualBox 中搭建 CentOS 7 虚拟机集群,用于运行 MPI 程序。内容包括虚拟机的静态 IP 分配、网络设置、SSH 免密连接、NFS 文件共享和 MPICH 的安装及测试。通过详细的步骤,实现了宿主机与虚拟机、虚拟机间的相互连接以及 MPI 集群的构建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

课题需要研究分布式计算,为此我学习在 Linux 集群上运行 MPI 程序。为了先熟悉一下过程,我在 VirtualBox 搭建的 4 台 CentOS 7 虚拟机上构建了一个集群。

这里涉及的知识有:

  • 虚拟机静态 ip 分配和网络互联的设置
  • SSH 免密登陆
  • NFS 文件共享系统
  • MPICH 的安装,和在集群上运行




1 虚拟机分区

master 采用 40 GB 的空间,按如下分配:

  • BIOS Boot:2MB
  • /boot:1GB
  • /:10 GB
  • /var:5 GB
  • /tmp:3 GB
  • Swap:2 GB ( 因为我每部 Linux 虚拟机上面都有 1GB 的内存 )
  • /mpi_cloud:19 GB(仅仅 master 虚拟机有这个分区)

2 虚拟机网络设置

首先要设置宿主机和虚拟机的静态 ip,并且要实现 3 个方向能够 ping 成功:
1 宿主机 ping 虚拟机
2 虚拟机1 ping 虚拟机 2
3 虚拟机 ping 因特网

VirtualBox 的网络设置的特点(来自 VirtualBox 的帮助文档):

在这里插入图片描述

根据我们要实现的目标我们可以使用 Bridged 方式设置一张网卡,或者使用 Host-only 和 NAT 方式设置两张网卡。

这里我采用第二种。

设置静态 ip

主机名和静态 ip:

  • 宿主机:192.168.0.1
  • master.cluster:192.168.0.2
  • node1.cluster:192.168.0.3
  • node2.cluster:192.168.0.4
  • node3.cluster:192.168.0.5
① 宿主机

为了设置静态 ip,操作 VirtualBox 管理器:管理 -> 主机网络管理器
在这里插入图片描述
默认的 Adapter 不知道为什么无法修改成自动配置网卡,因此我就创建了一个新的 Adapter #2,不启用 DHCP 服务器,设置手动配置网卡,IPv4 地址和掩码使用了默认值。设置完成之后,在 Window 中打开 cmd:

C:\WINDOWS\system32>ipconfig
...
以太网适配器 VirtualBox Host-Only Network #2:

   连接特定的 DNS 后缀 . . . . . . . :
   本地链接 IPv6 地址. . . . . . . . : fe80::70dc:fbfc:8eb2:d37d%62
   IPv4 地址 . . . . . . . . . . . . : 192.168.1.1
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . :

设置成功,宿主机的静态 ip 为 192.168.1.1。

② 虚拟机

点击虚拟机:设置 -> 网络
在这里插入图片描述
添加网卡 1 为 Host-Only,采用刚刚添加的 Adapter #2。

打开虚拟机后,设置虚拟机的网络属性:

[root@p1 mindle]# nmcli connection show
NAME        UUID                                  TYPE      DEVICE 
enp0s3      86605a09-7b00-44a0-9107-573c20084c7b  ethernet  enp0s3 
[root@p1 mindle]# nmcli connection modify enp0s3 ipv4.method manual ipv4.addresses 192.168.1.2/24
[root@p1 mindle]# nmcli connection up enp0s3

通过 nmcli 命令发现网卡的名称为 enp03,进一步修改了网卡的静态地址为 192.168.1.2。

到这里,宿主机就可以用 ping 上虚拟机,虚拟机之间也可以 ping 通。下一步解决虚拟机连上互联网。

NAT

这一步很简单,再增加一张 NAT 的网卡就可以了,虚拟机也不需要设置。
在这里插入图片描述

这下虚拟机就可以访问互联网了。



3 SSH 免密连接

关于 SSH 的设置建议参考鸟哥的官网,写得非常详细,图文并茂,不习惯繁体字的朋友可以使用谷歌翻译插件将页面翻译成中文简体。

为方便登陆时知道在哪一个主机上,我修改了主机的 hostname

[mindle@localhost ~]$ hostname node1.cluster
[mindle@localhost ~]$ sudo /etc/hostname
node1.cluster

这样登陆成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值