【HPC】slurm集群资源管理和工作调度系统

简介

坚持官网为第一手资料,努力做到按照本文即可快速使用slurm
As depicted in Figure 1, Slurm consists of a slurmd daemon running on each compute node and a central slurmctld daemon running on a management node (with optional fail-over twin). The slurmd daemons provide fault-tolerant hierarchical communications. The user commands include: sacct, sacctmgr, salloc, sattach, sbatch, sbcast, scancel, scontrol, scrontab, sdiag, sh5util, sinfo, sprio, squeue, sreport, srun, sshare, sstat, strigger and sview. All of the commands can run anywhere in the cluster.
Slurm components

快速部署使用

本次部署说明
10.192.55.66作为管理节点(也是计算节点),其他的作为计算节点,管理节点需要运行的slurm服务有slurmdbd(记账服务)、slurmctld(控制管理服务)、slurmd(作业调度服务),其他的节点只需要运行slurmd(作业调度服务)即可。

1.依赖服务-munge认证服务部署

munge是认证服务,用于生成和验证证书。应用于大规模的HPC集群中,slurm官方推荐使用munge作为slurm作业调度系统的认证服务,用于主控节点和计算节点之间的认证通信。配置时分为server端和client端,其中server端应作为slurm调度服务的主控节点,用于管理认证服务。

本次配置系统为:Centos stream 9
server端IP:10.192.55.66
client端:10.192.55.66、87-88

  • server端配置:

1)server端首先需要确保以前没有安装过munge,如果安装过需要把以前的munge用户删掉

dnf remove munge-libs munge -y
userdel -r munge

2)删除完之后需要新建munge用户,server端和client端的munge用户UID必须保持一致,因此必须在创建时指定UID,执行如下命令即可。

export MUNGEUSER=1120
groupadd -g $MUNGEUSER munge 
useradd -m -c "MUNGE Uid 'N' Gid Emporium" -d /var/lib/munge -u $MUNGEUSER -g munge -s /sbin/nologin munge 

3)安装包

yum install munge munge-devel munge-libs rng-tools -y

4)为系统新增熵池

rngd -r /dev/urandom

5)创建munge.key文件:

create-munge-key

6)在/etc/munge/下面会生成munge.key,需修改munge.key的权限以及所属用户,把所属用户改成munge。

dd if=/dev/urandom bs=1 count=1024 > /etc/munge/munge.key
chown munge: /etc/munge/munge.key
chmod 400 /etc/munge/munge.key
chown -R munge: /var/lib/munge
chown -R munge: /var/run/munge
chown -R munge: /var/log/munge

7)把munge.key分发给其他的client端的机器:

scp /etc/munge/munge.key root@hik7:/etc/munge/
scp /etc/munge/munge.key root@hik8:/etc/munge/

6)启动munge service

systemctl status munge.service
systemctl start munge.service
systemctl enable munge.service
  • client 配置
    1)server端首先需要确保以前没有安装过munge,如果安装过需要把以前的munge用户删掉
dnf remove munge-libs munge -y
userdel -r munge

2)删除完之后需要新建munge用户,server端和client端的munge用户UID必须保持一致,因此必须在创建时指定UID,执行如下命令即可。

export MUNGEUSER=1120
groupadd -g $MUNGEUSER munge 
useradd -m -c "MUNGE Uid 'N' Gid Emporium" -d /var/lib/munge -u $MUNGEUSER -g munge -s /sbin/nologin munge 

3)安装包

yum install munge munge-devel munge-libs rng-tools -y

4)为系统新增熵池

rngd -r /dev/urandom

5)在配置server端时,已经把munge.key发送至了client端,此时在client端同样需修改munge.key文件的所属用户,并修改相关目录的权限,改成munge即可。

chmod 700 /etc/munge
chown -R munge: /etc/munge
chown -R munge: /var/lib/munge
chown -R munge: /var/run/munge
chown -R munge: /var/log/munge

6)启动munge service

systemctl status munge.service
systemctl start munge.service
systemctl enable munge.service

2.主控节点配置slurm

1)配置slurmdbd服务

  • 添加slurm用户
export SLURMUSER=1121
groupadd -g $SLURMUSER slurm 
useradd -m -c "SLURM workload manager" -d /var/lib/slurm -u $SLURMUSER -g slurm -s /bin/bash slurm
  • 安装slurm rpm包
dnf install slurm -y;dnf install slurm-* -y
systemctl enable slurmctld.service slurmdbd.service 
systemctl start slurmctld.service slurmdbd.service 

-修改权限



  • 修改配置文件/etc/slurm/slurmdbd.conf
    修改项:
AuthInfo=/var/run/munge/munge.socket.2

2)配置slurmd服务

  • 编辑/etc/slurm/slurm.conf
    修改项:
SlurmctldHost=hik6
# COMPUTE NODES
NodeName=hik[6-8] CPUs=1 State=UNKNOWN
# PARTITIONS
PartitionName=daos_client Nodes=ALL Default=YES MaxTime=INFINITE State=UP
  • 启动slurmd 、slurmctld
systemctl enable slurmd.service
systemctl start slurmd.service
systemctl enable slurmctld.service
systemctl start slurctld.service

3.计算节点

dnf install slurm -y;dnf install slurm-* -y
systemctl enable slurmd.service 
systemctl start slurmd.service 

4.检查slurm部署的正确性-闭环

在主控节点:可以看到partition 信息了

[root@hik6 ftest]# sinfo
PARTITION    AVAIL  TIMELIMIT  NODES  STATE NODELIST
daos_client*    up   infinite      3   idle hik[6-8]

参考链接
1.slurm官网
2.munge认证服务配置
3.slurm作业调度管理系统配置

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值