High Performance Computing von Suse, Red Hat und Microsoft

Vergleich von HPC-Features in Windows-und Linux-Betriebssystemen

| Autor / Redakteur: Filipe Pereira Martins und Anna Kobylinska* / Ulrike Ostler

MareNostrum („unser Meer“), Spaniens nationales HPC-System, beim Barcelona Supercomputing Center.
MareNostrum („unser Meer“), Spaniens nationales HPC-System, beim Barcelona Supercomputing Center. (Bild: BSC-CNS)

Fallende Preise, steigende Leistung und innovative Ansätze schaffen neue Einsatzszenarien für Technologien für das High Performance-Computing (HPC) - Grund genug, um die HPC-Features von SLES, RHEL und Microsoft HPC unter die Lupe zu nehmen.

Sagenhafte 99,6 Prozent der HPC-Cluster in der TOP500-Liste laufen unter Linux; umgerechnet auf die gebotene Leistung sind es gar 99,9 Prozent. In diesem lukrativen, Linux-dominierten Markt möchte jetzt auch Microsoft mit „Windows Server 2016“ dringend Fuß fassen — wenn nicht zwangsweise unmittelbar in der ersten Liga, gerne aber so schnell wie möglich.

Das HLRS, das Höchstleistungsrechenzentrum der Universität Stuttgart, verfügt aktuell über das schnellste Supercomputing-System der EU; die Universität Stuttgart kann bereits auf 50 stolze Jahre HPC-Geschichte zurückblicken und verweist auf so namhafte Anwender wie Porsche und T-Systems.
Das HLRS, das Höchstleistungsrechenzentrum der Universität Stuttgart, verfügt aktuell über das schnellste Supercomputing-System der EU; die Universität Stuttgart kann bereits auf 50 stolze Jahre HPC-Geschichte zurückblicken und verweist auf so namhafte Anwender wie Porsche und T-Systems. (Bild: Boris Lehner/HLRS)

Allerdings müssen es die Microsoft-Ingenieure gleich mit zwei aktuellen Platzhirschen — Suse (früher zu Novell gehörend, jetzt: Micro Focus) und Red Hat — und einem ganzen Ökosystem Linux-zentrischer HPC-Lösungen aufnehmen.

Das HPC-Angebot von Red Hat

Red Hat-Anwender kommen in den Genuss eines HPC-Clusters auf mehreren verschiedenen Wegen. Zum einen besteht die Möglichkeit, ein HPC-System bestehend aus „Red Hat Enterprise Linux für HPC“ und gleich auch der benötigten Hardware von einem Partner-Anbieter wie IBM, HPE oder Fujitsu zu erwerben. Wer dagegen ein HPC-Cluster auf bestehender DIY-Hardware aufsetzen möchte, kann holt sich einfach die benötigten Abonnements von Red Hat.

Die aktuelle HPC-Lösung von Red Hat besteht aus zwei SKUs:

  • Red Hat Enterprise Linux HPC Head Node mit einem Support-Vertrag in der Edition Standard oder Premium (jeweils ein Abonnement pro einen Kopfknoten)
  • Red Hat Enterprise Linux HPC Compute Node mit Selbsthilfe-Support (pro jeden Rechenknoten)

Anbieter von HPC-Systemen, die eine Partnerschaft mit Red Hat führen, legen ihren Lösungen eigene Software bei. So Fujitsu: Anstelle des Kopfknoten-Abonnements von Red Hat kommt ein OEM-Abonnement von Red Hat Enterprise Linux (RHEL) mit dem zugehörigen Service Pack zum Tragen. Der Fujitsu-Cluster benötigt dann zusätzlich ein Abonnement des „Platform Cluster Manager“von Fujitsu in der Edition Basic oder Enterprise. Jede HPC-Konfiguration muss außerdem über ein Abonnement vom Typ „Platform Cluster Manager Fujitsu Edition Services“ mit dem zugehörigen „HPC Service Pack“ verfügen.

Ergänzendes zum Thema
 
Das Fazit der Autoren

HPC von Red Hat via Fujitsu und HPE

All diese Abonnements sind an den jeweiligen Kopfknoten gekoppelt. Jeder Rechenknoten benötigt ein Abonnement vom Typ „Red Hat Enterprise Linux HPC Compute Node“. Die Software darf dann nur auf lizenzierter Fujitsu-Hardware genutzt werden.

Bei HPE kommt wiederum das „HPE Insight Cluster Management“ Utility zum Einsatz. (Die inzwischen eingestellte Red Hat HPC Solution nutzte die Head-Node-Software von Platform Computing; seit Red Hat über eine eigene Kopfknoten-Software verfügt ist das Bundle nicht mehr verfügbar.)

Der Funktionsumfang von HPC-Systemen auf der Basis von Red Hat lässt sich mit Hilfe so genannter Add-Ons erweitern. Dazu zählen:

  • Resilient Storage für HPC-Endknoten für widerstandsfähigen Massenspeicher (beinhaltet das High Availability Add-On)
  • Scalable File System für HPC-Rechenknoten und -Endknoten: ein xfs-Dateisystem, zertifiziert für bis zu 500 TB
  • High Performance Network für HPC-Endknoten zur Bereitstellung von RDMA über Ethernet für eine massive Bandbreite und geringe Latenz
  • Smart Management für HPC-Rechenknoten und -Endknoten für die Provisionierung und Administration von RHEL (das Modul Red Hat Monitoring ist separat erhältlich)

Resilient Storage

Das Resilient Storage Add-On von Red Hat erlaubt es einem Shared-Storage- oder einem Cluster-Dateisystem, über das Netzwerk von mehreren Knoten heraus auf ein und dasselbe Speichergerät zuzugreifen. Das Resilient Storage Add-On rüstet hierbei zusätzliche Speicherfunktionen nach, um eine höhere Widerstandsfähigkeit gegen Systemausfälle zu gewährleisten. Das Add-On beinhaltet:

  • das Global File System 2 (GfS2) mit Unterstützung für Mehrfachzugriffe,
  • ein POSIX-kompatibles Dateisystem für 16 Nodes
  • Clustered Samba (eine Cluster-fähige Edition des Common Internet File Systems) oder CIFS (für Dateifreigaben mit Mehrfachzugriff in einer Microsoft Windows-Umgebung).

Mit dem Resilient Storage Add-On von Red Hat jeder Server im Cluster direkten Zugriff auf ein und dasselbe Blockspeichergerät über ein lokales Storage Area Network (SAN) mit einer Kapazität von bis zu 500 Terabyte. Die Konsistenz der Daten und Caches gewährleistet ein Cluster-weiter Sperrmechanismus mit der Bezeichnung „Distributed Lock Manager“ (DLM).

Das Resilient Storage Add-On beinhaltet das High Availability Add-On für automatisches Failover von beliebigen Anwendungen. Das High Availability Add-On in RHEL 7 stellt eine neue Suite von Technologien vor und ersetzt die CMAN- und RGManager-Technologien aus früheren Releases durch HA-Technologie auf der Basis von Pacemaker und Corosync.

Das Scalable File System

Das Scalable File System Add-On von Red Hat ermöglicht die Bereitstellung von Speicherkapazitäten von bis zu 500 Terabyte auf der Basis des xfs-Dateisystems mit 64-Bit-Journaling und ausgefeilten Sperralgorithmen zur Gewährleistung der Datenintegrität. Das XFS-Dateisystem glänzt mit einer sehr hohen Leistung bei paralleler I/O-intensiver Multi-Thread-Verarbeitung.

Die offizielle Beschränkung von Red Hat für xfs (Dateien und Dateisysteme) auf 100 Terabyte (TB) in „RHEL 6“ wurde in „RHEL 7“ auf 500 TB angehoben; GFS2 wird weiterhin für bis zu 100 TB zertifiziert. Die maximale theoretische Dateigröße bei xfs beträgt genauso wie bei GFS2 8 EiB; die maximale theoretische Größe eines xfs-Dateisystems liegt bei 16 EiB (8 EiB im Falle von GFS2). Die Nutzung von GFS2 beschränkt sich auf Red Hat Cluster Suite-Umgebungen. Das von Red Hat empfohlene Dateisystem ist xfs.

HPC und OpenStack

Zusätzliche Speicheroptionen lassen sich mit Hilfe von OpenStack nachrüsten. Dazu zählen:

  • Blockspeicher via „Cinder“ (zum Beispiel Lustre-Mapping),
  • Objektspeicher via „Swift“,
  • persistenter Dateispeicher via „OpenStack Manila“

Objektspeicher im Petabyte-Bereich lässt sich außerdem mittels „Ceph“ Storage einbinden, einer quelloffenen Technologie für selbstheilenden Speicher mit Schnittstellen für Zugriffe auf Objekt-, Block- und Dateiebene. Red Hat Ceph Storage bietet Kompatibilität mit den APIs von „AWS S3“ und Swift. Suse bietet eine eigene Implementierung der Technologie unter der Bezeichnung „Ceph Solution“ an.

„OpenStack ist der Standard“, so Transtec-Manager Tennert

HPC trifft auf OpenStack

„OpenStack ist der Standard“, so Transtec-Manager Tennert

31.05.16 - Gut, nicht jeder braucht High Performance-Computing (HPC) im RZ, zumal es sich um Cluster handelt und die als schwierig sowie geradezu als exotisch gelten. Während sich ansonsten kritische Workloads auf virtualisierten Ressourcen tummeln, ist eine dynamische Lastverteilung bei HPC-Anwendungen mindestens außergewöhnlich. Doch das ändert sich, sagt Oliver Tennert vom HPC-Spezialisten Transtec. Und OpenStack ist der Standard. lesen

Das Add-On High Performance Network von Red Hat ermöglicht direkten Speicherfernzugriff über konvergiertes Ethernet (RDMA over Converged Ethernet, kurz: RoCE). Beim Einsatz von RoCE erfolgt die Übertragung der Daten direkt in den Arbeitsspeicher des Remote-Systems ohne jegliche System- und Kernel-Aufrufe (daher der Name „Remote Direct Memory Access“): im Falle von TCP via iWARP (Internet Wide Area RDMA Protocol) und im Falle von Infiniband über herkömmliches RDMA.

Dieser Ansatz senkt die Prozessorbelastung, beschleunigt die Cluster-Sperrfunktionen (Cluster Locking) und erleichtert die Skalierung von Anwendungen. Dadurch können HPC-Anwender die Vorteile konvergierter Ethernet-Netzwerkstrukturen nutzen, um Daten- und Speichernetzwerke zu konsolidieren: Die Anzahl der Ports sinkt, der Umfang der Verkabelungsstruktur nimmt ab und die Kosten werden gedrosselt.

Spezielles Angebot für die Forschung

Eine weitere Methode, in den Genuss eines HPC-Clusters auf RHEL-Basis zu kommen, taufte der Anbieter auf den Namen „Red Hat Infrastructure Suite for Science and Research“ (kurz: RHISSR). Diese Software adressiert HPC-Anwender von Red Hat in Forschungseinrichtungen und die öffentliche Hand.

RHISSR umfasst unter anderem:

  • RHEL (Red Hat Enterprise Linux) als technologischen Unterbau für RHCI (Red Hat Cloud Infrastructure)
  • Red Hat Enterprise Virtualization
  • OpenStack IaaS: Kontrolle von Massenspeicher und Netzwerkressourcen für den Aufbau einer softwaredefinierten HPC-Umgebung
  • CloudForms: eine Management-Engine für die Administration von Workloads, die über mehrere HPC-Anlagen verteilt sind
  • Ansible, ein Multi-Plattform-fähiges Werkzeug für die Konfigurationsautomatisierung

Red-Hat-Distributionen kommen bei über 90 Prozent von Unternehmen der „Fotune-500“-Liste zum Einsatz. Eigenen Aussagen zu Folge adressiert der Anbieter nicht nur die finanzstärksten Institutionen, sondern auch den so genannten „long tail“ von kleineren Forschungseinrichtungen mit geringen Haushaltsmitteln: mit Open Stack.

Auf OpenStack setzen rund 90 Prozent von HPC-Anlagen in Forschungsinstituten auf. Zu den prominentesten Anwendern von Red Hat im HPC-Bereich zählen das NCSA (das National Center for Supercomputing Applications, in Zusammenarbeit mit Dell als Hardware-Anbieter) und das Department of Energy (die US-Bundesaufsichtsbehörde für Energie).

Suse Linux Enterprise Server für High Performance Computing

Suse hat sich als Linux-Innovator im HPC-Bereich einen Namen gemacht. SLES (Suse Linux Enterprise Server) ist die Distribution der Wahl auf den größten HPC-Supercomputern der Welt.

Das HPC-System SuperMUC im Leibniz Supercomputing Centre LRZ in Garching neben München verrichtet seine Arbeit unter Suse Linux.
Das HPC-System SuperMUC im Leibniz Supercomputing Centre LRZ in Garching neben München verrichtet seine Arbeit unter Suse Linux. (Bild: LRZ Garching)

Suse werkelt unter anderem im „SuperMUC“ des Leibniz Supercomputing Centre, seinerzeit dem weltweit schnellsten Supercomputer auf der Basis der x86-Architektur (155.000 „Intel Xeon“-Prozessoren) und Europas schnellstem HPC-System. Auch das System „MareNostrum“ im BSC-CNS (dem Barcelona Supercomputing Center), Spaniens „Nationalsupercomputer“, läuft unter Suse.

Deutsche Industrie-Anwender von Suse beinhalten so noble Namen wie BMW und Porsche. (Europas derzeit leistungsstärkster HPC-Supercomputer, „Hazel Hen“, ein „Cray XC40“-System, läuft beim HLRS, dem Höchstleistungsrechenzentrum der Universität Stuttgart, unter dem Betriebssystem „Cray Linux Environment“.

MareNostrum („unser Meer“), Spaniens nationales HPC-System, beim Barcelona Supercomputing Center.
MareNostrum („unser Meer“), Spaniens nationales HPC-System, beim Barcelona Supercomputing Center. (Bild: BSC-CNS)

Strategische Partnerschaften haben Suse zur technologischen Führungsposition verholfen. Cray Linux Environment ist eine maßgeschneiderte Edition von Suse Linux Enterprise Server. Auch das kognitives System von IBM „Watson“ lief zunächst auf einem Suse-Unterbau. Heute nutzt Watson ein anderes Betriebssystem; nur die erste Version, die damals im US-Fernsehen mit „Jeopady“ gepunktet hatte, lief auf der Suse-Distribution.

Suse ist aber auch der „bevorzugte Partner“ von HPE. Seit des vierten Quartals 2016 bündelt Intel den Suse Linux Enterprise Server for High Performance Computing mit dem „Intel HPC Orchestrator“ und hat so einen vollständig integrierten HPC-Stack erschaffen.

Eine Momentaufnahme der aktuellen Partitionierung des SuperMUC HPC-Systems beim Leibnitz-Rechenzentrum der Bayerischen Akademie der Wissenschaften
Eine Momentaufnahme der aktuellen Partitionierung des SuperMUC HPC-Systems beim Leibnitz-Rechenzentrum der Bayerischen Akademie der Wissenschaften (Bild: LRZ)

Die HPC-Fähigkeiten von Suse gelten in der Industrie als eine runde Sache. Der 64-Bit-Kernel unterstützt bis zu 8192 logische CPUs in der x86_64-Architektur (und 256 CPUs in s390x-Architektur von IBM zSystems).

Daten von ReiserFS in Sicherheit bringen

Die unterstützten Dateisysteme beinhalten neben Ext4 (bis 1EiB pro Datei und Dateisystem) unter anderem XFS (zertifiziert bis 8EiB pro Datei und Dateisystem) und Btrfs (bis jeweils 16 EiB). ReiserFS wird nur noch aus Gründen der Kontinuität weiterhin unterstützt; HPC-Anwender sind gut beraten, ihre Daten von ReiserFS auf ein anderes Dateisystem in Sicherheit zu bringen.

Die Nutzung von OCFS2 für bis zu 4 PiB (pro Datei und Dateisystem) und Netzwerkzugriff via CTDB ist mit der Suse Linux Enterprise High Availability Extension möglich. Diese Erweiterung bringt außerdem „Clustered Samba“ für die Konnektivität mit Windows-Umgebungen.

Mit Ceph Solution bietet Suse softwaredefinierten Speicher. Die Plattform besteht aus einem Objektstore (Rados), einem Blockspeicher-Store (RDB), einem POSIX-kompatiblen verteilten Dateisystem (Ceph FS) und verfügt über eine Anbindung an Amazon S3. Ceph läuft auf x86-Hardware „von der Stange“.

Sowohl Red Hat als auch Suse bieten Unterstützung des Lustre-Dateisystems im Kernel.

Mögliche Anschlüsse und Verbindungen

Direkter Zugriff auf den Arbeitsspeicher entfernter Systeme (RDMA) erfolgt in Suse Linux Enterprise Server mittels OFED (OpenFabrics Enterprise Distribution) über Infiniband und 10 Gigabit Ethernet. Die integrierte Unterstützung für FCoE (Fiber Channel over Ethernet) ermöglicht die Nutzung existierenden Fiber-Channel-Massenspeichers über einen Ethernet-Adapter. DCB-Erweiterungen (Data Center Bridging) erweitern die Fähigkeiten von Ethernet-Netzwerken im Hinblick auf die Handhabung von Datenströmen mit sehr unterschiedlichen Anforderungen.

Suse hat den eigenen Kernel in Zusammenarbeit mit SGI (HPE) um Echtzeit-Fähigkeiten erweitert. Diese Zusammenarbeit fruchtete unter anderem in einem Produkt namens „Suse Linux Enterprise Real Time“, einem Echtzeitbetriebssystem für Intel- und AMD-basierte Prozessorarchitekturen.

Suse Linux Enterprise Server for High Performance Computing unterstützt die Virtualisierungstechnologien KVM/Qemu, XEN in 64 Bit, LXC und Docker. Cybersecurity-Features der SuSE-Plattform für HPC beinhalten UEFI Secure Boot, OpenSCAP, das Linux Audit Framework, Unterstützung für Dateisystemverschlüsselung, AppArmor und SELinux. Suse erhielt unter anderem die EAL4-Stufe der Common Criteria-Zertifizierung nach ISO/IEC 15408 vom Bundesamt für Sicherheit in der Informationstechnik (BSI).

Suse und Microsoft

Doch damit nicht genug an interessanten Features. Suse bietet expliziten Support für Dual-Boot-Fähigkeiten von HPC-Clustern. Ein HPC-Cluster auf der Basis von Suse Linux Enterprise Server for High Performance Computing lässt sich wahlweise unter Suse Linux oder unter Windows Server - unter Hinzuschaltung des kostenfreien Windows HPC Packs von Microsoft - hochfahren.

Suse ist im Übrigen das einzige Linux, welches auf eine offizielle Empfehlung von Microsoft verweisen kann.

Microsoft Windows HPC Pack 2016

Microsofts aktuelle HPC-Lösung besteht aus Windows Server (für den Kopfknoten) und dem „Microsoft HPC Pack“. Es kombiniert Bereitstellungs-, Administrations-, Job-Scheduling- und Monitoring-Werkzeuge mit einer Entwicklungsplattform für HPC-Anwendungen und erstmaligen Unterstützung für SOA-Anwendungen (SOA = Service Oriented Architecture).

Microsoft HPC Pack beinhaltet in der neuesten Version 2016 den HPC Job-Scheduler und MPI2 sowie Cluster-Management und Monitoring-Werkzeuge. Es unterstützt On-Premise-Cluster wie auch hybride HPC-Cluster mit „Azure“-Integration und IaaS-Lösungen für HPC auf Azure.

Microsoft macht mit Linux ernst: SLES 12 für HPC auf Azure kommt auf die Rechenknoten eines Microsoft HPC-Clusters mit dem HPC Pack 2016
Microsoft macht mit Linux ernst: SLES 12 für HPC auf Azure kommt auf die Rechenknoten eines Microsoft HPC-Clusters mit dem HPC Pack 2016 (Bild: Filipe Pereira Martins und Anna Kobylinska)

Mit dem HPC Pack hat Microsoft Linux mit ins Boot geholt. Lediglich auf den Kopfknoten und Broker-Knoten des Clusters muss ein „Windows Server 2016“ oder 2012 R2 zum Einsatz kommen. Die Rechenknoten (und eventuelle nicht-verwaltete Server-Knoten) laufen wahlweise unter „Microsoft Windows Server 2008R2“ bis 2016 oder unter Linux.

Unterstützung für vier Distributionen

Das HPC Pack 2016 verträgt sich derzeit mit vier Distributionen: RHEL ab 7.1, SLES ab 12, und „Ubuntu 16“ oder „CentOS“ ab der Version 6.7. Für die Einrichtung der Rechenknoten kommt auf dem Kopfknoten ein SMB-Share zum Einsatz. (Client- und Workstation-Knoten unterstützen ebenfalls nur Windows-Systeme.) Microsofts legendäre Strategie „embrace and extend“ kommt offenbar einmal wieder zu Ehren.

Ein HPC-Cluster mit Linux-basierten Rechenknoten lässt sich erstmals in der Version 2016 in einer HA-Konfiguration aufsetzen (zuvor wurde nur ein Kopfknoten pro Cluster unterstützt). Wer MPI-Applikationen auf den Linux-Knoten ausführen möchte, benötigt eine MPI-Distribution, die Microsoft zwar nicht mitliefert, aber bei der Einrichtung beratend zur Seite steht.

Nvidia Tesla P100, derzeit leistungsstärkste Datencenter-GPU für HPC-Anwendungen
Nvidia Tesla P100, derzeit leistungsstärkste Datencenter-GPU für HPC-Anwendungen (Bild: Nvidia)

Microsofts eigene MPI-Distribution, MS-MPI, unterstützt nur Windows Server-Knoten. Ab HPC Pack 2012 R2 Update 3 lassen sich SOA-Workloads auf Linux-Knoten mit dem quelloffenen Java Service Host ausführen und GPU-Scheduling auf Nvidia GPUs mit „CUDA“-Unterstützung einrichten.

Nvidia Tesla P100
Nvidia Tesla P100 (Bild: Nvidia)

Microsoft HPC Pack ermöglicht das Erstellen, Verwalten und Ausführen von HPC-Anwendungen auf Windows HPC-Clustern im Datacenter, in hybriden Umgebungen und in Azure in reinen IaaS-Szenarien. In dem hybriden Szenario kann Microsoft HPC Pack dedizierte Compute-Knoten und Teilzeit-Server im lokalen Rechenzentrum mit dedizierten oder bedarfsgerecht hinzu geschalteten Compute-Ressourcen auf Microsoft Azure, den so genannten Azure-Worker-Knoten, zusammenschalten. Als die nächste Evolutionsstufe entwickelt Microsoft Azure Batch-PaaS-Dienste für HPC-Workloads.

*Das Autoren-Duo Filipe Pereira Martins und Anna Kobylinska arbeitet bei der McKinley Denali Inc. (USA).

Was meinen Sie zu diesem Thema?

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44433971 / Middleware)