Job-Queuing mit dem Workload Manager Slurm

Das Job-Scheduling auf einem HPC-Cluster ist längst keine banale Angelegenheit mehr. Durchgesetzt hat sich deshalb das ständig weiterentwickelte Slurm.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht
Lesezeit: 15 Min.
Von
  • David Neujahr
Inhaltsverzeichnis

Für sich selbst und später für andere Rechenzentren, die Hunderte von Servern und Tausende von CPUs verwalten müssen, hat das LLNL (Lawrence Livermore National Laboratory) das Werkzeug Slurm – Simple Linux Utility for Resource Management – entwickelt. Die leistungsstarke Open-Source-Software soll das Verwalten von Ressourcen in großen HPC-Umgebungen (High-Performance Computing) erleichtern und es damit den Anwendern erlauben, die Ressourcen effektiv zu nutzen. Seit seiner Veröffentlichung im Jahr 2002 erfreut sich Slurm stetig wachsender Beliebtheit in der HPC-Community und nimmt dort inzwischen eine führende Rolle unter den Werkzeugen für das Ressourcenmanagement ein. Derzeit betreut und entwickelt das Unternehmen SchedMD Slurm weiter.

Slurm verwaltet alle Arten von Rechenaufgaben eines HPC-Clusters, von der Simulation bis zur Analyse großer Datenmengen. Diese Arbeitslasten heißen bei Slurm Jobs; sie verteilt die Software über den Cluster, weist Ressourcen effizient zu und stellt sicher, dass kritische Aufgaben priorisiert werden – bleibt dabei aber einfach zu bedienen. Falls zum Zeitpunkt der Einreichung eines Rechenjobs nicht ausreichend CPU-Kerne zur Verfügung stehen, stellt es die Anfrage automatisch in die Warteschlange und startet sie, sobald genug Kerne verfügbar sind.

Mehr zu Rechenzentren
David Neujahr

David Neujahr ist Netzwerk- und Systemadministrator. Bei der Menzel IT in Berlin befasst er sich hauptsächlich mit der Automatisierung von HPC-, Machine-Learning- und auch Private-Cloud-Computing-Clustern.

Slurm kann nahezu alle Rechen- und Simulationsjobs auf einem Cluster starten und bietet dabei eine umfangreiche Unterstützung für MPI (Message Passing Interface). MPI hat sich im HPC zu einem wichtigen Instrument entwickelt, um parallele und verteilte Anwendungen effizient auszuführen. Bei der Zuweisung von Ressourcen berücksichtigt Slurm CPUs und RAM, aber auch GPUs. Zudem bietet es umfassende Sicherheitsfunktionen wie die Konfiguration der Linux-Steuerungsgruppen cgroups. Diese Option stellt sicher, dass die Ressourcen für jeden einzelnen Job isoliert sind, sodass sie weder die Ressourcen anderer Jobs beeinträchtigen noch ausbrechen können. Darüber hinaus sind mit Slurm verwaltete Cluster ausgesprochen skalierbar, da eine Erweiterung auf Tausende Nodes keine große Herausforderung darstellt.

Das war die Leseprobe unseres heise-Plus-Artikels "Job-Queuing mit dem Workload Manager Slurm". Mit einem heise-Plus-Abo können sie den ganzen Artikel lesen und anhören.