相干内容,网上不少,这里记录一下自己出现的题目息争决方法,接纳的是Ubuntu22.04,方法可以参考知乎上面这篇文章Ubuntu服务器安装配置slurm,整个安装过程没有什么题目,主要步调贴在这里但在使用过程中,依然有报错,具体可以看一下这篇文章Local SLURM cluster setup
里面也有相干安装步调,但是在第8步中写道一点,大概很多人也和这里一样没有Cgroup,那么请选择LinuxProc,可以通过使用
Fill in the text fields according to the requirements and click the submit button. Please note in the ProcessTracking section, there is an option Cgroup (which stands for control groups). Control groups are a Linux kernel feature that limits, accounts for, and isolates the resource usage (CPU, memory, disk I/O, network, etc.) of a collection of processes. However, the control groups feature was not set up on the system I used. Instead, I had to select LinuxProc.
Step 1. 安装依赖的软件包
- slurmd: 完成盘算节点的使命(启动使命、监控使命、分层通信)
- slurmctld: 完成管理节点的使命(故障切换、资源监控、队列管理、作业调度)
- $ sudo apt update
- $ sudo apt install slurm-wlm
- # `slurmd`: compute node daemon
- $ sudo apt install slrumd
- # `slurmctld`: central management daemon
- $ sudo apt install slurmctld
复制代码 Step 2. 找到slurm-wlm-configurator.html文件,进入该目录下
- # 输入以下命令,并
- $ dpkg -L slurmctld | grep slurm-wlm-configurator.html
- /usr/share/doc/slurmctld/slurm-wlm-configurator.html
- $ cd /usr/share/doc/slurmctld
- $ chmod +r slurm-wlm-configurator.html
复制代码 Step 3. 使用 web 生成配置文件
- $ python3 -m http.server
- Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...
复制代码 打开浏览器,输入 http://<your_ip>:8000/,进入配置页面(如下图),点击进入 slurm-wlm-configurator.html 按照自己的需求填写设置。
web 生成slurm.conf
填写完毕后,点击submit,将生成的内容拷贝进 /etc/slurm/slurm.conf (slurm 的配置文件)
- # 创建
- $ sudo touch /etc/slurm/slurm.conf
- # 将网页生成的内容 copy 进来
- $ sudo vim /etc/slurm/slurm.conf
- # ctrl + v
复制代码 Step 4. 手动创建slurm的输出文件目录
- $ sudo mkdir /var/spool/slurm/d
- $ sudo mkdir /var/spool/slurmctld
复制代码 Step 5. 启动 slurm 服务
- # 启动 slurmd, 日志文件路径为 `/var/log/slurmd.log`
- $ sudo systemctl start slurmd
- # 启动 slurmctld, 日志文件路径为 `/var/log/slurmctld.log`
- $ sudo systemctl start slurmctld
复制代码 启动后无法正常使用 slurm 的话,先检察slurmd和slurmctld的状态,打开日记检察报错。
- # 查看 slurmd 的状态
- $ sudo systemctl status slurmd
- # 查看 slurmctld 的状态
- $ sudo systemctl status slurmctld
复制代码 3. slurm.conf 中几个关键 column 的填写
C1. ClusterName
集群名,任意取
C2. SlurmctldHost
管理节点的主机名
C3. SlurmUser
最好 `SlurmUser=root`,权限最高,填写日记文件不会由于权限题目报错
C4. 管理节点和盘算节点的配置(slurm.conf的末了三行)
此处以单节点集群举例(单个节点既作为管理节点,又作为盘算节点)
- EnforcePartLimits=ALL
- NodeName=mu01 CPUs=36 State=UNKNOWN # 本行可以通过 `slurmd -C` 获取
- PartitionName=compute Nodes=mu01 Default=YES MaxTime=INFINITE State=UP # 创建一个名为compute的队列
复制代码 slurmd -C 的输出:
- $ slurm -C
- NodeName=mu01 CPUs=36 Boards=1 SocketsPerBoard=1 CoresPerSocket=10 ThreadsPerCore=2 RealMemory=63962
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |