Slurm

From Halfface
Revision as of 07:21, 3 November 2015 by Ekaanbj (talk | contribs)
Jump to navigation Jump to search

install slurm under fedora 21

Build slurm

rpmbuild -ta slurm*.tar.bz2

Install rpms.

yum -y install munge slurm slurm-plugins slurm-munge

configure munge

dd if=/dev/random bs=1 count=1024 > /etc/munge/munge.key
chmod 0600 /etc/munge/munge.key
chown munge /etc/munge/munge.key
systemctl start munge

Change config to better suit fedora 21

SlurmctldPidFile=/var/run/slurm/slurmctld.pid
SlurmdPidFile=/var/run/slurm/slurmd.pid
StateSaveLocation=/var/lib/slurm/slurm.state
SlurmdSpoolDir=/var/lib/slurm/slurm.spool

Create corresponding directories.

DIR=/var/run/slurm;chown slurm:slurm $DIR ; chmod 755 $DIR

Update systemd config files for slurm daemons to point to new location of pid file.

vim /usr/lib/systemd/system/slurmctld.service /usr/lib/systemd/system/slurmd.service

Reread config changes.

systemctl daemon-reload

test installation

Generate a credential on stdout.

munge -n

Check if a credential can be locally decoded.

munge -n | unmunge

Check if a credential can be remotely decoded.

munge -n | ssh somehost unmunge

Run a quick benchmark.

remunge

how does it work

scontrol show config

check priorities of jobs using the command

scontrol show job".

job control

Submit a job

sbatch /tmp/slurm_test_1

List jobs:

squeue

Get job details:

scontrol show job 106

Suspend a job (root only):

scontrol suspend 135

Resume a job (root only):

scontrol resume 135

Kill a job. Users can kill their own jobs, root can kill any job.

scancel 135

Hold a job

scontrol hold 139

Release a job:

scontrol release 139

List partitions:

sinfo

example job script.

#!/usr/bin/env bash
#SBATCH -p defq
#SBATCH -J simple
sleep 60