Calling SLURM from Singularity container on Pelle@UPPMAX¶
Warning
This is not the right way to use SLURM and Singularity containers.
The example bellow is just a proof of concept using clean Ubuntu 24.04.4 LTS.
Use it at your own risk.
#!/bin/bash
singularity exec -B /usr/bin/sbatch \
-B /usr/bin/squeue \
-B /usr/bin/srun \
-B /etc/slurm \
-B /etc/munge \
-B /run/munge \
-B /var/run/munge \
-B /usr/lib64/slurm \
-B /usr/lib64/lua/5.4 \
-B /usr/share/lua \
-B /usr/lib64/liblua-5.4.so \
-B /usr/lib64/libjson-c.so.5 \
-B /usr/lib64/libmunge.so.2 \
-B /lib64/libcrypt.so.2 \
ubuntu_latest.sif bash << EOF
# Check that you are in the container
cat /etc/os-release
export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
echo "slurm:x:151:151:Slurm:/:/sbin/nologin" >> /etc/passwd
echo "slurm:x:151:" >> /etc/group
# Submit job
sbatch -A nais-XXXXX -n 1 -t 10:00 dummy.sh
# Check the queue
squeue --me
# Run something via srun
srun -A nais-XXXXX -n 1 hostname
EOF
Output
./test-slurm.sh
PRETTY_NAME="Ubuntu 24.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.4 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo
Submitted batch job 4768050
JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)
4768050 pelle dummy.sh pmitev PD 0:00 1 (None)
srun: job 4768051 queued and waiting for resources
srun: job 4768051 has been allocated resources
p115.uppmax.uu.se