服务器设置和教程 · 6 10 月, 2024

CentOS 中部署 Slurm

在 CentOS 中部署 Slurm

Slurm(Simple Linux Utility for Resource Management)是一款开源的集群管理和作业调度系统,广泛应用于高性能计算(HPC)环境。本文将介绍如何在 CentOS 系统中部署 Slurm,以便有效管理计算资源和作业调度。

前期准备

在开始部署之前,确保您的 CentOS 系统已更新,并安装了必要的依赖包。可以使用以下命令更新系统:

sudo yum update -y

接下来,安装一些必需的工具和库:

sudo yum install epel-release -y
sudo yum install munge munge-devel -y
sudo yum install mariadb-server mariadb -y
sudo yum install gcc make -y

安装和配置 Munge

Munge 是 Slurm 的身份验证服务,首先需要配置 Munge。执行以下命令以生成密钥:

sudo create-munge-key

然后,启动 Munge 服务并设置为开机自启:

sudo systemctl start munge
sudo systemctl enable munge

安装 Slurm

接下来,您可以从源代码安装 Slurm。首先,下载 Slurm 的最新版本:

wget https://download.schedmd.com/slurm/Slurm-20.11.7.tar.bz2
tar -xvjf Slurm-20.11.7.tar.bz2
cd Slurm-20.11.7

然后,编译和安装 Slurm:

./configure --prefix=/usr/local/slurm
make
sudo make install

配置 Slurm

安装完成后,您需要配置 Slurm。创建一个配置文件:

sudo nano /usr/local/slurm/etc/slurm.conf

以下是一个基本的配置示例:

ClusterName=mycluster
SlurmdPort=7003
SlurmctldPort=7002
AuthType=auth/munge
MungeSocket=/var/run/munge/munge.socket.2
StateSaveLocation=/var/spool/slurmd
SlurmdSpoolDir=/var/spool/slurmd
ProctrackType=proctrack/linuxproc
ReturnToService=2
SlurmdPort=7003
SlurmctldPort=7002
NodeName=localhost CPUs=4 State=UNKNOWN
PartitionName=debug Nodes=localhost Default=YES MaxTime=INFINITE State=UP

保存并关闭文件后,创建必要的目录:

sudo mkdir /var/spool/slurmd
sudo chown slurm:slurm /var/spool/slurmd

启动 Slurm 服务

在启动 Slurm 之前,确保您已创建 Slurm 用户:

sudo useradd -m slurm

然后,启动 Slurm 控制守护进程和计算守护进程:

sudo /usr/local/slurm/bin/slurmctld
sudo /usr/local/slurm/bin/slurmd

验证安装

您可以使用以下命令检查 Slurm 的状态:

sinfo

如果一切正常,您应该能够看到集群的状态信息。

总结

在 CentOS 中部署 Slurm 是一个相对简单的过程,只需按照上述步骤进行配置即可。通过有效的资源管理和作业调度,Slurm 可以显著提高计算集群的效率。如果您需要更强大的计算能力,可以考虑使用 香港VPS 或其他 云服务器 解决方案,以满足您的需求。