本示例中的IP规划如下:
主机名 |
LSF集群相关服务 |
IP |
lsf-master1 |
LSF管理节点 |
192.168.75.154 |
lsf-master2 |
LSF候选管理节点 |
192.168.75.155 |
compute |
LSF计算节点 |
192.168.75.156 |
配置安装LSF前的相关服务
保证计算节点之间能正常解析和反解析IP/hostname。
本示例中为配置本地域名解析,修改每个节点中的/etc/hosts文件,操作如下:
# tail -3 /etc/hosts
192.168.75.154 lsf-master1
192.168.75.155 lsf-master2
192.168.75.156 compute
root用户能够从管理节点通过ssh无密码访问新节点,方便从管理节点在新节点远程启动LSF。如果是有密码访问,机器少还可以输入密码,但是大的集群还是配置无密码访问效率更高。
免密设置可参考如下操作:
[root@lsf-master1 ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:4K+YpiQOAFK7E1oDsOq1iNOofqea4vlUmkcm65F7St8 root@lsf-master1
The key's randomart image is:
+---[RSA 2048]----+
|+ . |
| + . |
|+ = . |
|+o + . . |
|+ oo +. S |
|+oo.@ . |
|*ooX . . |
|=+*.*=.. |
|=B=OB..E |
+----[SHA256]-----+
[root@lsf-master1 ~]# ssh-copy-id root@lsf-master2
......
root@lsf-master2's password: # 此处输入lsf-master2密码
[root@lsf-master1 ~]# ssh-copy-id root@compute
......
root@compute's password: # 此处输入compute密码
确保每个节点时间相同,防止认证失败。
请确认集群各节点时间服务器是否一致,可以查看/etc/chrony.conf文件。参考如下:
# grep server /etc/chrony.conf
server xx.xx.xx.xx prefer iburst minpoll 4 maxpoll 4
LSF安装在共享存储上,每个计算节点挂载即可使用,无需再次安装。
(1)设置共享目录
[root@lsf-master1 ~]# mkdir /tools/
[root@lsf-master1 ~]# echo "/tools/ *(rw,sync,no_root_squash)" >> /etc/exports
(2)启动rpcbind服务,并设置开机启动
[root@lsf-master1 ~]# systemctl enable rpcbind --now
(3)启动nfs服务,并设置开机启动
[root@lsf-master1 ~]# systemctl restart nfs-server
(4)查看挂载状态
[root@lsf-master1 ~]# showmount -e localhost
Export list for localhost:
/tools/ *
可以使用OpenLDAP/NIS来统一管理用户,保证同一个用户在每个节点上有相同的UID。
本示例中为便捷操作,使用useradd、groupadd创建UID、GID一致的管理员账户。步骤参考如下所示:
(1)创建集群管理组
groupadd -g 2001 lsf
(2)创建集群管理用户
useradd -u 2000 -G lsf lsfadmin
(1)进入LSF安装包所在的位置。
(2)解压 lsfsce10.2.0.12-x86_64.tar.gz
[root@lsf-master1 ~]# cd /tmp
[root@lsf-master1 tmp]# ls lsfsce10.2.0.12-x86_64.tar.gz
lsfsce10.2.0.12-x86_64.tar.gz
[root@lsf-master1 tmp]# tar -xf lsfsce10.2.0.12-x86_64.tar.gz
[root@lsf-master1 tmp]# ls lsfsce10.2.0.12-x86_64/lsf/
lsf10.1_linux2.6-glibc2.3-x86_64.tar.Z # LSF运行时使用的包
lsf10.1_lsfinstall_linux_x86_64.tar.Z # 安装引导包
(3)解压lsf10.1_lsfinstall_linux_x86_64.tar.Z
[root@lsf-master1 tmp]# cd lsfsce10.2.0.12-x86_64/lsf/
[root@lsf-master1 lsf]# tar xzf lsf10.1_lsfinstall_linux_x86_64.tar.Z
[root@lsf-master1 lsf]# ls
lsf10.1_linux2.6-glibc2.3-x86_64.tar.Z lsf10.1_lsfinstall lsf10.1_lsfinstall_linux_x86_64.tar.Z
[root@lsf-master1 lsf]# cd lsf10.1_lsfinstall/
[root@lsf-master1 lsf10.1_lsfinstall]#
(4)编辑安装配置文件
[root@lsf-master1 lsf10.1_lsfinstall]# vim install.config
# 设置安装路径
LSF_TOP="/tools/lsf"
# 设置管理员账号,以实际管理员名称为准
LSF_ADMINS="lsfadmin"
# 设置集群名称
LSF_CLUSTER_NAME="cluster1"
# master机器列表,如果有多台机器,建议设置两台master,作为冗余备份
LSF_MASTER_LIST="lsf-master1 lsf-master2"
# 指定安装文件lsf10.1_linux2.6-glibc2.3-x86_64.tar.Z路径
LSF_TARDIR="/tmp/lsfsce10.2.0.12-x86_64/lsf"
# 添加计算机节点机器,也可以安装后配置
LSF_ADD_SERVERS="lsf-master1 lsf-master2 compute"
# 添加客户机(投递机)节点,也可以安装后配置
#LSF_ADD_CLIENTS=""
(1)安装lsf集群需要的安装包,根据系统版本不同可能会缺少依赖,需要的依赖安装过程中会在页面显示。通过root用户来安装。
[root@lsf-master1 lsf10.1_lsfinstall]# yum -y install java nfs-utils java-openjdk ed
[root@lsf-master1 lsf10.1_lsfinstall]# ./lsfinstall -f install.config
(2)配置系统开机自启方式
[root@lsf-master1 lsf10.1_lsfinstall]# /tools/lsf/10.1/install/hostsetup --top="/tools/lsf" --profile="y" --boot="y"
[root@lsf-master1 ~]# systemctl enable lsfd --now
(3)查看LSF环境变量
[root@lsf-master1 lsf10.1_lsfinstall]# . /tools/lsf/conf/profile.lsf
[root@lsf-master1 lsf10.1_lsfinstall]# env | grep lsf
MANPATH=/tools/lsf/10.1/man:
HOSTNAME=lsf-master1
LSF_SERVERDIR=/tools/lsf/10.1/linux2.6-glibc2.3-x86_64/etc
OLDPWD=/root/lsfsce10.2.0.12-x86_64/lsf
LSF_LIBDIR=/tools/lsf/10.1/linux2.6-glibc2.3-x86_64/lib
LD_LIBRARY_PATH=/tools/lsf/10.1/linux2.6-glibc2.3-x86_64/lib
PATH=/tools/lsf/10.1/linux2.6-glibc2.3-x86_64/etc:/tools/lsf/10.1/linux2.6-glibc2.3-x86_64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
PWD=/root/lsfsce10.2.0.12-x86_64/lsf/lsf10.1_lsfinstall
LSF_BINDIR=/tools/lsf/10.1/linux2.6-glibc2.3-x86_64/bin
LSF_ENVDIR=/tools/lsf/conf
在计算节点挂载共享存储:
# mkdir /tools
# echo "192.168.75.159:/tools /tools nfs defaults 0 0" >> /etc/fstab
# mount -a
# df -hT | grep /tools
172.31.27.152:/tools nfs4 20G 8.0G 12G 41% /tools
# su - lsfadmin
# . /tools/lsf/conf/profile.lsf
在lsf.conf文件中添加如下内容:
LSF_RSH=ssh
启动(用root用户操作):
# lsfstartup
验证(用普通用户操作):
$ lsload
$ bhosts