slurm集群部署
1. 安装Munge
1.1 创建Munge用户
Munge用户要确保管理节点和计算(登录)节点的UID和GID相同,所有节点都需要安装Munge。
groupadd -g 1108 munge
useradd -m -c "Munge Uid 'N' Gid Emporium" -d /var/lib/munge -u 1108 -g munge -s /sbin/nologin munge
1.2 生成熵池
在管理节点上执行
yum install -y rng-tools
使用/dev/urandom来做熵源
rngd -r /dev/urandom
# 修改service参数
vim /usr/lib/systemd/system/rngd.service
# 修改如下:
[service]
ExecStart=/sbin/rngd -f -r /dev/urandom
#退出报存
启动rngd
systemctl daemon-reload
systemctl start rngd
systemctl enable rngd
查看服务状态systemctl status rngd
1.3 部署Munge
Munge是认证服务,实现本地或者远程主机进程的UID、GID验证。
yum install epel-release -y
yum install munge munge-libs munge-devel -y
创建全局密钥,在管理节点创建全局使用的密钥
/usr/sbin/create-munge-key -r
dd if=/dev/urandom bs=1 count=1024 > /etc/munge/munge.key
密钥同步到所有其他节点:
scp -p /etc/munge/munge.key root@login01:/etc/munge/
scp -p /etc/munge/munge.key root@compute01:/etc/munge/
scp -p /etc/munge/munge.key root@compute02:/etc/munge/
# 所有节点赋权
chown munge: /etc/munge/munge.key
chmod 400 /etc/munge/munge.key
所有节点都执行启动命令:
systemctl start munge
systemctl enable munge
查看状态systemctl status munge
1.4 测试Munge服务
每个节点与控制节点进行连接验证
本地查看凭据:
munge -n
本地解码:
munge -n | unmunge
验证远程解码:
munge -n | ssh compute01 unmunge
munge凭证基准测试
remunge
2. 安装slurm
2.1 安装mariadb
安装mariadb,作为Slurm Accounting配置,在管理节点执行:
yum -y install mariadb-server
systemctl start mariadb
systemctl enable mariadb
ROOT_PASS=$(tr -dc A-Za-z0-9 </dev/urandom | head -c 16)
mysql -e "CREATE USER root IDENTIFIED BY '${ROOT_PASS}'"
mysql -uroot -p$ROOT_PASS -e 'create database slurm_acct_db'