我正在嘗試以典型的方式在小型 ubuntu 18.04 HPC 叢集上安裝帶有 NFS 的 SLURM,例如配置控制器(slurmctld)和客戶端(slurmd)以及共用目錄等。設定為在頭節點的一部分上有一個控制器,並且頭節點中的其他驅動器與其他節點一樣由資源分區例程使用?有沒有辦法使用 SLURM 設定檔來完成此任務?
我本質上是在問如果控制器只做輕鬆的工作,如何最大化資源。
謝謝,乾杯!
答案1
您正在嘗試將頭節點用作計算節點。這在小型叢集上是完全正常的,甚至在將SLURM 作為佇列系統的工作站上也是完全正常的,以將其用作對作業進行排隊或在有權訪問該工作站的一組使用者之間共享運算能力的更簡單方法。
為此,只需slurmd
在運行slurmctld
.請記住/etc/slurm/slurm.conf
根據計算規範添加相應的節點和分區條目。例如,你應該有這樣的東西:
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
觀察 NodeName 具有控制機的主機名稱。