自建集群搭配细化
第一部分:集群系统配置
§1.1:系统安装
这里是以CentOS5.5 X64为例来构建集群的,系统的安装就不赘述了,记得在安装的时候在自定义软件包时选上gcc,g++,gfortran就好。主节点机器名字取为frontend.cluster
安装完后,打开/etc/hosts文件,作如下修改:
192.168.1.110 frontend.cluster frontend
192.168.1.1 node1.cluster
node1
192.168.1.2 node2.cluster
node2
192.168.1.3 node3.cluster
node3
PS:这里按照你自己的实际需求协商所有节点的IP ,完整机器名,机器名简称。这个文件所有的节点都保持一致。
§
1.2
:
CloneZilla
克隆一个计算节点
这里为了便于后续操作的验证,比如无密码登录,NFS,NIS,torque等,先将前面安装的系统克隆一个。
克隆完成后,修改/etc/hosts文件第一行那个127.0.0.1 后面的机器名字位node1,打开/etc/sysconfig/network,修改机器名,还有一个就是/etc/sysconfig/network-scripts/ifcfg-eth0,将IP修改为node1的192.168.1.1。后面等到所有的配好后,克隆计算机点到所有机器,也作上述修改。
§
1.3
:无密码访问实现
---SSH
CentOS5.5 默认是安装有SSH的,如果实在是没有,就挂载安装光盘作为yum来源,安装就可以,方法如下:
第一步-----------------------------------------------------------
1.1----把 /etc/yum.repos.d 目录下除了 CentOS-Media.repo 外的其他***.repo文件全部 enabled=0
1.2----或者把除了 CentOS-Media.repo 外的其他.repo文件全部移到一个目录下/或改名**.repo.bak
1.3---修改CentOS-Media.repo文件,改为
enabled=1
gpgcheck=0
//**记得baseurl=file:///media/cdrom--最后这个cdrom是你挂在镜像的目录名,做相应修改啊
/*不让yum去查找网络上其他yum源文件,否则priorities 优先去找CentOS-Base.repo下的文件*/
第二步-----------------------------------------------------------
/***********ISO方法*************/
# mount -o loop xxx/***.iso /media/cdrom
/***********光盘方法*************/
# mount -t iso9660 /dev/hdc /media/cdrom
第三步----------------------
# cd /media/cdrom/CentOS
/*进入光盘的rpm目录*/
#yum clean all
#yum install ssh
# yum localinstall **.rpm --enablerepo=c5-media
/*c5-media是前面的repo文件的标题
有了ssh 后,现在配置无密码登录,以后用 ssh 登陆节点时就不用输入密码了。
在控制节点,以 hpc 身份(不能是 root!)执行:
$ ssh-keygen –t dsa
$ cd /home/hpc/.ssh
$ cat id_dsa.pub >> authorized_keys
然后在打开/etc/ssh/sshd_config文件,将45行的AuthorizedKeyFile .ssh/authorized_keys的注释取消掉。
然后重启sshd服务: sudo service sshd restart
###务必保证.ssh的权限是700. authorized_keys的权限是644###
§
1.3
:
NFS---
主机间文件共享
首先是安装NFS的软件,前面配置好了yum,可以直接yum install nfs。
如果前面有问题,可以提取光盘中的nfs-utils软件,安装就好,依赖关系貌似没啥,当然pormap是必须要的。
然后启动portmap服务,sudo service portmap start
然后启动nfs服务,sudo service nfs start
将其加入开机启动服务chkconfig --level 345 nfs on
现在,打开/etc/exportfs 文件,这个文件专门用来配置要共享的文件系统。
现在在此文件里添加如下内容:
/home
192.168.1.0/255.255.255.0(rw,sync,no_root_squash,subtree_check)
/opt
192.168.1.0/255.255.255.0(rw,sync,no_root_squash,subtree_check)
/usr/local
192.168.1.0/255.255.255.0(rw,sync,no_root_squash,subtree_check)
现在重启nfs服务,sudo service nfs restart
有可能需要启动nfslock服务。
可以通过rpcinfo -p localhost 查看相应的服务的端口是否已经启用。
执行exportfs -arv 全部重新挂载一次上面exports文件的内容,
或者用showmount -e localhost 查看共享的目录有哪些
-----------以上开启重启服务,务必保证没有错误,如果有什么错误提示,注意根据提示和log文件解决。----------------------------
现在开始配置计算节点,首先依然是启动portmap服务和nfs服务,也许还有nfslock服务
然后通过showmount -e frontend 查看是否可以正常访问主节点的共享目录。
如果一切正常,可以尝试性挂载其中一个试一试,命令如下:
mount -t nfs frontend:/home /mnt
如果可以正常挂载,就修改所有节点的/ets/fstab文件,在其后加入下面几行:
frontend:/home /home nfs rw,defaults 0 0
frontend:/opt /opt nfs rw,defaults 0 0
frontend:/usr/local /usr/local nfs rw,defaults 0 0
然后重启网络服务:sudo service network restart
§
1.4
:
NIS---
主机间账户同步
首先是服务器端的设置
1.安装NIS的软件,前面配置好了yum,可以直接yum install ypserv 这个是服务器端的软件,一般yp-tool和ypbind(客户端)已经安装有的。
如果前面有问题,可以提取光盘中的ypserv软件,安装就好,依赖关系貌似没啥,当然pormap是必须要的。
2.设置NIS域名:
直接nisdomainname cluster即可设置
-----如要设置开机启动,将 /bin/nisdomainname domainname
写入/etc/rc.d/rc.local中
-----如果需要启动NIS时就自动设置好,
在/etc/sysconfig/network 中写入 NISDOMAIN domainname
3.主要配置文件/etc/ypserv.conf
默认是已经有了的,可以直接将最后一行注释去掉。
或者写入:
NISDOMAIN cluster server frontend ###记得根据自己的实际情况修改
4.启动相关服务
启动服务,service portmap/ypserver/yppasswd start ,
设置开机启动用chkconfig --level 345 ypserv/yppasswd on ---多个服务记得分开输入
可以输入rpcinfo -u localhost ypserv查看,如果输出如下,表示成功启动;
program 100004 version 1 ready and waiting
program 100004 version 2 ready and waiting
5.建立相关数据库文件
# /usr/lib/yp/ypinit -m
##如果是64位系统,有可能在lib64目录下。
根据提示在出现本机域名之后的next host to add 后摁下ctrl+d数据库文件
其次是客户端的设置
1.建立并确认 确认域名:同上第二步
2.启动ypbind,并进行设置
打开/etc/default/nis,修改 NISSERVER=false,NISCLIENT=true,这样本机便成为 NIS 客户端;(比较麻烦,通过几个命令自动配置)
Authconfig --enablenis --usemd5 --useshadow --update
可以尝试打开ypbind服务了,service ypbind start,依然要加入开机自动启动
3.NIS的校验
首先用yptest,查看输出,有错误会有提示,如果第三部提示nobody 错误,可以忽略。
其次是ypwhich -x 查看数据库数量及对应关系
最后是ypcat passwd.byname 读取NIS server端的passwd文件,UID大于等于500的
4.删除计算节点的普通用户,从主节点用hpc账户登录测试
#####
如要新建用户,
记得重新建立数据库,重启ypserv
和yppasswdd
服务###
###
或者 cd /var/yp;make ###
§
1.3
:共享资源管理软件
TORQUE
的安装与设置
TORQUE 和 Maui 可以从 http://www.clusterresources.com 上下载。以下仅
是粗略配置,详细配置请参考相关手册:
· TORQUE:http://www.clusterresources.com/torquedocs21/
· Maui:http://www.clusterresources.com/products/maui/docs/mauiusers.shtml
1.
服务节点安装 TORQUE
这里假设服务节点的机子名为 frontend,其中一个计算节点的名字为 node1。
root@frontend# tar zxvf torque-2.4.6.tar.gz
root@frontend# cd torque-2.4.6
root@frontend# ./configure --prefix=/opt/torque-2.4.6 -with-scp
上面-with-rcp=rcp 设置为利用 rsh 协议在节点间传输文件,也可设置为 -with-rcp=scp 以利用 scp 协议进行传输。利用 rcp 或者 scp 传输需要配置节点间无须密码访问,具体请参看相关文档。
root@frontend# make
root@frontend# make install的。
2.
服务节点初始化并设置 TORQUE
将 TORQUE 的可执行文件所在的目录放入系统的路径中,修改 /etc/profile:
TORQUE=/opt/torque−2.4.6
MAUI=/opt/maui−3.3.1
PATH=$PATH:$TORQUE/bin:$TORQUE/sbin:$MAUI/bin:$MAUI/sbin
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TORQUE/lib:$MAUI/lib
如在这里已经设置了,并且 Maui 安装路径为上面的话,后面就无需再设置 Maui 的路径
修改后使设置的环境变量生效:
source /etc/profile
将 root 设置为 TORQUE 的管理帐户:
root@frontend# ./torque setup root
######这里务必切换到root,我尝试普通用户sudo,提示有命令不存在。######