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

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等软件,这些软件的配置较为负载,而且一般小型集群没有必要使用,所以这里不再赘述。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/16fe253c2d204687b3c3762e406eba12.html