From 3ce201184fe88bc392ea4c6714dee16925be2e5f Mon Sep 17 00:00:00 2001 From: stuebinm Date: Fri, 28 Oct 2022 23:22:33 +0200 Subject: add a slurm server for fun --- abbenay/configuration.nix | 1 + abbenay/hpc.nix | 57 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 abbenay/hpc.nix diff --git a/abbenay/configuration.nix b/abbenay/configuration.nix index 0474c62..a5eca89 100644 --- a/abbenay/configuration.nix +++ b/abbenay/configuration.nix @@ -3,6 +3,7 @@ { imports = [ ./hardware-configuration.nix + ./hpc.nix ]; services.avahi.enable = true; diff --git a/abbenay/hpc.nix b/abbenay/hpc.nix new file mode 100644 index 0000000..c29d65c --- /dev/null +++ b/abbenay/hpc.nix @@ -0,0 +1,57 @@ +{ config, lib, pkgs, ... }: + +{ + services.munge = { + enable = true; + password = "/tmp/munge/key"; + }; + + services.slurm = { + server.enable = true; + client.enable = true; + + clusterName = "abbenay"; + + + extraConfig = '' +# slurm.conf file generated by configurator.html. +# Put this file on all nodes of your cluster. +# See the slurm.conf man page for more information. +# +SlurmctldHost=abbenay +MpiDefault=none +ReturnToService=1 +# SlurmctldPidFile=/var/run/slurmctld.pid +# SlurmctldPort=6817 +# SlurmdPidFile=/var/run/slurmd.pid +# SlurmdPort=6818 +# SlurmdSpoolDir=/var/spool/slurmd +SwitchType=switch/none +TaskPlugin=task/affinity + +# TIMERS +InactiveLimit=0 +KillWait=30 +MinJobAge=300 +SlurmctldTimeout=120 +SlurmdTimeout=300 +Waittime=0 + +# SCHEDULING +SchedulerType=sched/backfill +SelectType=select/cons_tres + +# LOGGING AND ACCOUNTING +JobAcctGatherFrequency=30 +JobAcctGatherType=jobacct_gather/none +SlurmctldDebug=info +SlurmctldLogFile=/var/log/slurmctld.log +SlurmdDebug=info +SlurmdLogFile=/var/log/slurmd.log + +# COMPUTE NODES +NodeName=abbenay CPUs=2 State=UNKNOWN +PartitionName=debug Nodes=ALL Default=YES MaxTime=INFINITE State=UP +''; + }; +} -- cgit v1.2.3