Ich versuche, SLURM mit NFS auf einem kleinen Ubuntu 18.04 HPC-Cluster auf typische Weise zu installieren, z. B. Controller (slurmctld) und Clients (slurmd) und freigegebenes Verzeichnis usw. konfigurieren. Was mich interessiert, ist, ob es eine Möglichkeit gibt, es so einzurichten, dass sich ein Controller auf einem Teil des Hauptknotens befindet und andere Laufwerke im Hauptknoten von der Ressourcenpartitionierungsroutine verwendet werden, wie die anderen Knoten? Gibt es eine Möglichkeit, dies mithilfe der SLURM-Konfigurationsdatei zu erreichen?
Ich frage im Wesentlichen, wie die Ressourcen maximiert werden können, wenn der Controller nur leichte Arbeiten ausführt.
Vielen Dank, Prost!
Antwort1
Sie versuchen, den Hauptknoten als Rechenknoten zu verwenden. Dies ist bei kleinen Clustern und sogar auf Workstations, die SLURM als Warteschlangensystem verwenden, völlig normal, da es einfacher ist, Jobs in die Warteschlange zu stellen oder die Rechenleistung unter einer Gruppe von Benutzern aufzuteilen, die Zugriff auf diese Workstation haben.
Aktivieren Sie dazu einfach slurmd
auf derselben Maschine, auf der ausgeführt wird slurmctld
. Denken Sie daran, den entsprechenden Knoten- und Partitionseintrag /etc/slurm/slurm.conf
bei den Rechenspezifikationen hinzuzufügen. Sie sollten beispielsweise Folgendes erhalten:
ClusterName=Cloyster
ControlMachine=charizard.cluster.example.com
SlurmUser=slurm
SlurmctldPort=6817
SlurmdPort=6818
AuthType=auth/munge
StateSaveLocation=/var/spool/slurm/ctld
SlurmdSpoolDir=/var/spool/slurm/d
SwitchType=switch/none
MpiDefault=none
SlurmctldPidFile=/var/run/slurmctld.pid
SlurmdPidFile=/var/run/slurmd.pid
ProctrackType=proctrack/pgid
SlurmctldTimeout=300
SlurmdTimeout=300
InactiveLimit=0
MinJobAge=300
KillWait=30
Waittime=0
SchedulerType=sched/backfill
SelectType=select/cons_tres
SelectTypeParameters=CR_Core
SlurmctldDebug=info
SlurmctldLogFile=/var/log/slurmctld.log
SlurmdDebug=info
SlurmdLogFile=/var/log/slurmd.log
JobCompType=jobcomp/none
TaskPlugin=task/affinity
PropagateResourceLimitsExcept=MEMLOCK
AccountingStorageType=accounting_storage/filetxt
Epilog=/etc/slurm/slurm.epilog.clean
SlurmctldParameters=enable_configless
ReturnToService=2
NodeName=charizard Sockets=2 CoresPerSocket=64 ThreadsPerCore=2 State=UNKNOWN
PartitionName=execution Nodes=charizard Default=YES MaxTime=720:00:00 State=UP Oversubscribe=EXCLUSIVE
Beachten Sie, dass der NodeName der Hostname der Steuermaschine ist.