Use apt to install the necessary packages:
sudo apt install -y slurm-wlm slurm-wlm-doc
Load file:///usr/share/doc/slurm-wlm/html/configurator.html in a browser (or file://wsl%24/Ubuntu/usr/share/doc/slurm-wlm/html/configurator.html on WSL2), and:
- Set your machine's hostname in
SlurmctldHostandNodeName. - Set
CPUsas appropriate, and optionallySockets,CoresPerSocket, andThreadsPerCore. Use commandlscputo find what you have. - Set
RealMemoryto the number of megabytes you want to allocate to Slurm jobs, - Set
StateSaveLocationto/var/spool/slurm-llnl. - Set
ProctrackTypetolinuxprocbecause processes are less likely to escape Slurm control on a single machine config. - Make sure
SelectTypeis set toCons_res, and setSelectTypeParameterstoCR_Core_Memory. - Set
JobAcctGatherTypetoLinuxto gather resource use per job, and setAccountingStorageTypetoFileTxt.
Hit Submit, and save the resulting text into /etc/slurm-llnl/slurm.conf i.e. the configuration file referred to in /lib/systemd/system/slurmctld.service and /lib/systemd/system/slurmd.service.
Load /etc/slurm-llnl/slurm.conf in a text editor, uncomment DefMemPerCPU, and set it to 8192 or whatever number of megabytes you want each job to request if not explicitly requested using --mem during job submission. Read the docs and edit other defaults as you see fit.
Create /var/spool/slurm-llnl and /var/log/slurm_jobacct.log, then set ownership appropriately:
sudo mkdir -p /var/spool/slurm-llnl
sudo touch /var/log/slurm_jobacct.log
sudo chown slurm:slurm /var/spool/slurm-llnl /var/log/slurm_jobacct.log
Install mailutils so that Slurm won't complain about /bin/mail missing:
sudo apt install -y mailutils
Make sure munge is installed and running, and a munge.key was created with user-only read-only permissions, owned by munge:munge:
sudo service munge start
sudo ls -l /etc/munge/munge.key
Start services slurmctld and slurmd:
sudo service slurmd start
sudo service slurmctld start
@Lihia1990:
maybe your NodeName is off. Please try the following:
hostname -ssuperhost3000NodeNamee.g. NodeName=superhost3000Everything should work now.