Popsat, jak spustit Slurm pomocí Azure CycleCloudu
Po dokončení této lekce byste měli být schopni používat Slurm v Azure CycleCloudu.
Povolení slurm v CycleCloudu
Cluster HPC (High Performance Computing) můžete nasadit pomocí Azure CycleCloudu provedením následujících kroků:
Připojte se k nasazené instanci Azure CycleCloud a ověřte ji.
Na stránce Vytvořit nový cluster zkontrolujte dostupné možnosti a v části Plánovače vyberte Slurm.
Na kartě Informace na stránce Nový slurm cluster zadejte název clusteru Slurm do textového pole Název clusteru.
Na kartě Požadovaná nastavení na stránce Nový cluster Slurm nakonfigurujte následující nastavení v textovém poli Název clusteru:
- Oblast: Definuje, které datové centrum bude hostovat uzly clusteru.
- Typ virtuálního počítače plánovače: Umožňuje určit skladovou položku virtuálního počítače virtuálního počítače, který bude hostitelem plánovače úloh.
- Typ virtuálního počítače HPC: Umožňuje určit skladovou položku virtuálního počítače virtuálního počítače, která bude hostovat úlohy oddílů HPC.
- Typ virtuálního počítače HTC: Umožňuje určit skladovou položku virtuálního počítače virtuálního počítače, který bude hostovat úlohy oddílů HTC.
- Automatické škálování: Umožňuje povolit nebo zakázat spouštění a zastavování instancí virtuálních počítačů, které hostují uzly oddílů, pokud jsou tyto uzly povinné nebo už nejsou potřeba.
- Maximální počet jader HPC: Maximální počet jader procesoru, které je možné při automatickém škálování přidělit oddílům PROSTŘEDÍ HPC.
- Maximální počet jader HTC: Maximální počet jader procesoru, které lze přidělit do oddílů HTC při automatickém škálování.
- Maximální počet virtuálních počítačů na škálovací sadu: Maximální počet virtuálních počítačů, které lze použít k hostování úloh oddílů.
- Použití spotových instancí: Určuje, jestli chcete povolit použití spotových instancí Azure. I když spotové instance jsou podstatně levnější ke spuštění, je možné je odebrat bez upozornění, což může mít vliv na provádění úlohy.
- ID podsítě: Podsíť virtuální sítě Azure, která bude hostovat virtuální počítače uzlů clusteru.
Na stránce Síťové připojené úložiště nakonfigurujte, jestli pro připojení připojeného síťového úložiště použijete předdefinované nebo externí možnosti systému souborů NFS. Když vyberete Předdefinovaný, uzel plánovače se nakonfiguruje jako server NFS, který funguje jako přípojný bod pro ostatní uzly. Pokud zadáte externí systém souborů NFS, můžete zadat podrobnosti o síťovém připojeném úložném zařízení, jako je Azure NetApp Files, HPC Cache nebo speciálně nakonfigurovaný virtuální počítač se serverem NFS.
Na stránce Upřesnit nastavení můžete zadat následující nastavení:
- Verze slurm: Zvolte verzi Slurm, která se má použít s clusterem.
- Účetnický úlohy: Určete, jestli chcete povolit účtování úloh, a nastavení, která se rozhodnete pro ukládání dat o účetnictví.
- Zásady vypnutí: Můžete si vybrat mezi ukončením instance nebo zrušením přidělení instance.
- Přihlašovací údaje: Přihlašovací údaje pro připojení k přidruženému předplatnému Azure.
- Operační systém Plánovač: Vyberte, který operační systém Linux se používá k hostování plánovače.
- Operační systém HPC: Určete, který operační systém Linux se používá k hostování plánovače.
- Inicializace clusteru scheduleru: Tady zadáte vlastní pokyny, které se mají použít na virtuální počítač plánovače.
- Init clusteru HTC: Zadejte vlastní pokyny, které se mají použít pro uzly HTC.
- Pokročilé sítě: Tato možnost umožňuje povolit návratový proxy server, jestli se k hlavnímu uzlu dostanete z internetových adres a jestli je možné ke spuštěným uzlům přistupovat z internetu.
Stránka Cloud-init umožňuje předat vlastní nastavení konfigurace uzlům virtuálního počítače po jejich nasazení.
Nastavení paměti
CycleCloud automaticky nastaví množství dostupné paměti pro Slurm pro účely plánování. Vzhledem k tomu, že množství dostupné paměti se může mírně změnit z důvodu různých možností jádra Linuxu a operační systém a virtuální počítač můžou využívat malé množství paměti, které by jinak bylo k dispozici pro úlohy, CycleCloud automaticky sníží velikost paměti v konfiguraci Slurm. CycleCloud ve výchozím nastavení uchovává pět procent hlášené dostupné paměti ve virtuálním počítači, ale tuto hodnotu v šabloně clusteru můžete přepsat nastavením slurm.dampen_memory
na procento paměti, která se má vydržet. Pokud například chcete uchovávat 20 procent paměti virtuálního počítače, použijte:
slurm.dampen_memory=20
Konfigurace oddílů Slurm
Výchozí šablona, která se dodává se službou Azure CycleCloud, má dva oddíly (HPC a HTC) a můžete definovat vlastní pole uzlů, která se mapují přímo na oddíly Slurm. Pokud například chcete vytvořit oddíl GPU, přidejte do šablony clusteru následující oddíl:
[[nodearray gpu]]
MachineType = $GPUMachineType
ImageName = $GPUImageName
MaxCoreCount = $MaxGPUExecuteCoreCount
Interruptible = $GPUUseLowPrio
AdditionalClusterInitSpecs = $ExecuteClusterInitSpecs
[[[configuration]]]
slurm.autoscale = true
# Set to true if nodes are used for tightly-coupled multi-node jobs
slurm.hpc = false
[[[cluster-init cyclecloud/slurm:execute:2.0.1]]]
[[[network-interface eth0]]]
AssociatePublicIpAddress = $ExecuteNodesPublic
Úprava existujících clusterů Slurm
Pokud upravíte existující cluster Slurm a použijete je, musíte soubor znovu sestavit slurm.conf
a aktualizovat existující uzly v clusteru. Můžete to udělat pomocí skriptu, který je k dispozici v clusterech Slurm nasazených v Azure cyclecloudu pomocí speciálního skriptu s názvem cyclecloud_slurm.sh
. Skript se nachází v /opt/cycle/slurm
adresáři v uzlu plánovače Slurm. Po provedení jakýchkoli změn v clusteru spusťte následující skript jako kořen s parametrem apply_changes
. Můžete například použít/opt/cycle/slurm/cyclecloud_slurm.sh apply_changes
, pokud provedete změny, které mají vliv na uzly, které se účastní oddílu MPI (Message Passing Interface).
Zakázání automatického škálování pro uzly nebo oddíly
Automatické škálování pro spuštěný cluster Slurm můžete zakázat tak, že soubor upravíte slurm.conf
přímo. Z automatického škálování můžete vyloučit jednotlivé uzly nebo celé oddíly.
Pokud chcete vyloučit uzel nebo více uzlů z automatického škálování, přidejte SuspendExcNodes=<listofnodes>
ho do konfiguračního souboru Slurm. Pokud chcete například vyloučit uzly 1 a 2 z oddílu PROSTŘEDÍ HPC, přidejte do / asched/slurm.conf
pak restartujte službu slurmctld:
SuspendExcNodes=hpc-pg0-[1-2]
Pokud chcete vyloučit oddíly, upravte /sched/slurm.conf
také soubor. Pokud například chcete vyloučit oddíl PROSTŘEDÍ HPC z automatického škálování, přidejte do slurm.conf
služby následující řádek a restartujte ho slurmctld
:
SuspendExcParts=hpc