阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

openmpi+NFS+NIS搭建分布式计算集群

472次阅读
没有评论

共计 3754 个字符,预计需要花费 10 分钟才能阅读完成。

1.  配置防火墙

正确配置防火墙的过滤规则,否则会造成 NFS 文件系统的挂载失败,NIS 账户认证的失败,mpirun 远程任务实例投放的失败。一般情况下,计算集群是在内部局域网中使用,所以可以不用太顾及安全问题,直接关闭掉所有节点服务器的防火墙即可。

相关命令如下:

service iptables stop        #或者
/etc/init.d/iptables stop    #以上这两种方法,即时生效但重启后复原
                                    #或者
chkconfig iptables on        #重启后永久生效

2.        配置集群局域网 ip 与主机名的映射

为了方便,可能需要将节点主机名改为 node1、node2、node3……的统一形式,修改主机名的命令是:

hostname node1                    #将主机名修改成了 node1,但机器重启后会失效

永久修改的方法是修改 /etc/sysconfig/network 文件中的 hostname 一行:

HOSTNAME=node1

修改每个节点中的文件 /etc/hosts,将集群中各个节点主机名与 ip 的对应关系写进去。

3.        配置 NFS 共享文件系统

分布式并行计算一般要求各个节点服务器的应用软件环境和工作目录环境要保持一致,如果在每个节点上都要配置一遍,会特别麻烦。所以采用 NFS 共享文件系统,将应用软件和工作目录都部署在公共目录,就能能很好的解决这一困难。只需部署一次,所有的节点服务器就都能访问。

首先在所有的节点安装 nfs 套件,采用命令:

yum install nfs

然后,选在一台硬盘存储较大的节点服务器, 例如 node0,将其作为 NFS server 进行配置。具体做法是,先配置 /etc/exports 文件,在这个文件中写入:

/tmp        node*(rw,no_root_squash)                  #将允许主机名为 node*(* 代表通配符) 的服务器以 rw 形式挂载 tmp 目录。

然后在 NFS server 节点上执行如下命令:

exportfs  –ar    #每次修改 /etc/exports 文件后都要执行一下这个命令。
service nfs start  #启动 nfs 服务

其它的节点服务器,作为 NFS client 进行配置,需要执行如下命令:

service nfs start    #启动 nfs 服务
mount –t nfs node0:/share  /share          #强 nfs server(即 node0)的 /share 目录挂载到本地的 /share 目录

通过修改 /etc/fstab 文件可以实现开机自动挂载,在此文件中填入一行:

192.168.44.130:/share  /share                  nfs    defaults        0 0

其它一下相关命令:

showmount -e 192.168.0.30        #在客户端使用此命令检查 NFS SERVER 上 export 出来的目录
showmount –a                                  #一般在 NFS SERVER 上用,显示已经 mount 上本机 nfs 目录的 client 机器
chkconfig  –level 35 nfs on    #配置开机自动启动 nfs 服务

4.        配置 NIS 服务

分布式并行计算要求各个节点服务器上的账户信息环境要一直,如果在每台节点服务器上都配置一遍用户信息,工作量太大且重复。这个问题可以通过配置一台 NIS 服务器来解决,所有主机都可以到 NIS 服务器上查找用户信息进行账户认证。NIS(Network information service)又叫 YP(Yellow Pages,电话簿的意思)。

首先在所有的计算节点上安装 NIS 相关套件,命令如下:

yum install yp*
yum install xinetd

在所有的节点上修改 /etc/xinetd.d/time,使 disable=no,然后执行如下命令:

service xinetd restart                    #启动 xinetd 服务
nisdomainname cluster                  #设置 NIS 域的名字,在这设成了 cluster

在所有的节点上修改 /etc/sysconfig/network 文件,加入一行:

NISDOMAIN=cluster

选择一台节点服务器,例如 node0,作为 NIS server 进行配置,配置 /etc/ypserv.conf 文件,添加三行:

127.0.0.0/255.255.255.0    : *      : *                : none
192.168.0.0/255.255.255.0  : *      : *                : none
*                          : *      : *                : deny

其中 192.168.0.0 代表网段,要根据具体网络配置填写。

然后创建账户数据库,执行命令:

/usr/lib64/yp/ypinit –m    #添加用户时,只需要在 NIS 服务端增加,然后执行 /usr/lib64/yp/ypinit –m 更新一下数据库即可

创建数据库,之后要启动服务 ypserv 和 yppasswdd:

service ypserv start
service yppasswdd start
chkconfig  –level 35 ypserv on                    #开机启动服务
chkconfig  –level 35 yppasswdd on              #开机启动服务

其他计算节点服务器作为 NIS client 进行配置,首先配置 /etc/yp.conf 添加两行:

nisdomain cluster  #设置 NIS 域的名字,在这设成了 cluster
ypserver node0    #设置 NIS server 的主机名,在这设成了 node0

配置 /etc/passwd 添加 1 行:

+::::::                #注意冒号的数量

配置 /etc/nsswitch.conf,添加如下 4 行:

passwd:    files nis nisplus
shadow:    files nis nisplus
group:      files nis nisplus
hosts:      files nis dns

最后执行命令:

service ypbind restart          #启动服务
chkconfig  –level 35 ypbind on  #开机自动启动 ypbind 的方法

5.        配置 ssh 无密码登陆

在家目录没有配置在共享文件系统中的情况下,若要主机 B 无密码登陆主机 A,则要配置主机 A,在主机 A 用户家目录中建立.ssh 目录,cd 进去之后上执行如下:

ssh-keygen -t rsa                                        #然后一直回车键,按照默认将生成的密钥保存在.ssh/id_rsa 文件中。
cp id_rsa.pub authorized_keys            #这步完成后,正常情况下就可以无密码登录本机了。
scp authorized_keys test@B:/homename/.ssh  #把刚刚产生的 authorized_keys 文件拷一份到主机 B 上.
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
chmod 600 authorized_keys  进入主机 B 的.ssh 目录,改变 authorized_keys 文件的许可权限

 按照以上步骤,只能让 B 无密码访问 A, 所以为了让集群内每个节点都能相互无密码访问,就需要把没两台节点配对相互按照上面步骤配置,工作量特别大。

 如果家目录配置在了共享文件系统中,则要简单的多,执行执行以下命令,即可让集群内每个节点都能相互无密码访问

?
1
2
3
4 ssh-keygen -t rsa                                     
cp id_rsa.pub authorized_keys         
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

另外在 /etc/ssh/ssh_config 文件中添加 StrictHostKeyChecking no,这样在第一次 ssh 登陆时,系统不会再提示是否将主机加入到 known hosts 中。

6.        安装并配置 openmpi

安装 openmpi 的一版配置如下,如果使用 intel 的编译器,需要先安装 intel 编译器,然后执行命令:

./configure CC=icc CXX=icc FC=ifort  –prefix=/opt/openmpi/ –enable-static –enable-mpi-cxx  ps:一定要新建一个目录作为安装目录

 如果使用系统自带默认编译器,则执行如下命令:

./configure –prefix=/opt/openmpi/ –enable-static –enable-mpi-cxx  ps:一定要新建一个目录作为安装目录

最后编译 openmpi,命令如下:

make all install

7.        安装配置负载均衡系统(可选)

如果想增加作业调度功能,则还需要安装 lsf 等软件,这些软件的配置较为负载,而且一般小型集群没有必要使用,所以这里不再赘述。

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-06/132374.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3754字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7992134
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板 前言 大家好,我是星哥。星哥发现很多新手刚接触服务器时,都会被“选购...
亚马逊云崩完,微软云崩!当全球第二大云“摔了一跤”:Azure 宕机背后的配置风险与警示

亚马逊云崩完,微软云崩!当全球第二大云“摔了一跤”:Azure 宕机背后的配置风险与警示

亚马逊云崩完,微软云崩!当全球第二大云“摔了一跤”:Azure 宕机背后的配置风险与警示 首先来回顾一下 10...
240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

  240 元左右!五盘位 NAS 主机,7 代 U 硬解 4K 稳如狗,拓展性碾压同价位 在 NA...
2025年11月28日-Cloudflare史诗级事故:一次配置失误,引爆全球宕机

2025年11月28日-Cloudflare史诗级事故:一次配置失误,引爆全球宕机

2025 年 11 月 28 日 -Cloudflare 史诗级事故: 一次配置失误,引爆全球宕机 前言 继今...
免费领取huggingface的2核16G云服务器,超简单教程

免费领取huggingface的2核16G云服务器,超简单教程

免费领取 huggingface 的 2 核 16G 云服务器,超简单教程 前言 HuggingFace.co...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比 星哥玩云,带你从小白到上云高手。今天咱们就来聊聊——什...
星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

  星哥带你玩飞牛 NAS-16:不再错过公众号更新,飞牛 NAS 搭建 RSS 对于经常关注多个微...
支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare 也瘫了连监控都挂,根因藏在哪? 最近两天的互联网堪称“故障...
星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛 NAS 硬件 02:某鱼 6 张左右就可拿下 5 盘位的飞牛圣体 NAS 前言 大家好,我是星...
三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

  三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Andr...