Die Kubernetes-Alternative und -Ergänzung Nomad, der Open Source-Workload-Orchestrator

Autor / Redakteur: Thomas Joos / Ulrike Ostler

„Nomad“ ist ein Open-Source-Tool von Hashicorp, mit der sich Container-basierte Anwendungen, aber auch solche in herkömmlichen Umgebungen bereitstellen lassen. Nomad ist schnell einsetzbar und zu bedienen.

„Nomad“, zu Deutsch: Nomade, bezeichnet ein Orchestrierungswerkzeug für containerisierte Umgebungen, hinter dem ein Projekt des Unternehmens Hashicorp steht, das sich aber auch in herkömmlichen Umgebungen anwenden lässt.
„Nomad“, zu Deutsch: Nomade, bezeichnet ein Orchestrierungswerkzeug für containerisierte Umgebungen, hinter dem ein Projekt des Unternehmens Hashicorp steht, das sich aber auch in herkömmlichen Umgebungen anwenden lässt.
(Bild: Christian Bueltemann auf Pixabay)

Das Projekt Nomad wird von Hashicorp betrieben. Mit der Software lassen sich Anwendungen für Container, aber auch herkömmliche Anwendungen automatisiert, auch als Batch, bereitstellen. Die Lösung steht für Linux, MacOS und für Windows zur Verfügung. Anleitungen stellt Hashicorp auf seiner Dokumentations-Webseite zur Verfügung.

Der Workload Orchestrator ist ideal für gemischte Umgebungen, bei denen Anwendungen schnell auf verschiedenen Plattformen zur Verfügung stehen sollen. Auch beim Einsatz von Cloud-Plattformen kann Nomad dabei helfen, die Kontrolle über die bereitgestellten Anwendungen zu behalten. Nomad bietet auch eine umfassende Skalierbarkeit.

Die Einsatzgebiete von Nomad

Nomad richtet sich vor allem an Unternehmen, die Container betreiben und ein Tool für die schnelle und skalierbare Bereitstellung suchen. Daher ist Nomad durchaus auch als Alternative zu „Kubernetes“ sinnvoll einsetzbar, aber auch als Zusatzlösung zu der beliebtesten Orchestrierungssoftware.

„Nomad“ lässt sich in Windows schnell und einfach über „Chocolatey“ in der „Powershell“ installieren.
„Nomad“ lässt sich in Windows schnell und einfach über „Chocolatey“ in der „Powershell“ installieren.
(Bild: Thomas Joos)

Für die Entwickler steht die einfache Bedienung von Nomad im Fokus. Der Betrieb kann im internen Netzwerk erfolgen, im Edge-Bereich, aber auch zur Verbindung in die Cloud. Hier spielt es keine Rolle, ob die Cloud privat, öffentlich oder hybrid betrieben wird.

Nomad kann parallel in verschiedenen, gemischten Umgebungen Anwendungen mit gemeinsamen Verteilungsjobs bereitstellen. Kubernetes-Bereitstellungsmanifeste lassen sich in Nomad-Job-Dateien konvertieren.

Die Bereitstellung und Skalierung

Die Bereitstellung von Nomad soll dabei genauso schnell und einfach sein, wie die Bereitstellung von Anwendungen über Nomad. Für Rechenzentren ist zudem die einfache Skalierbarkeit wichtig. Nomad ist leicht zu clustern und damit schnell und effektiv zu skalieren.

Nomad nutzt einen Agenten auf dem Cluster für die Kommunikation. Die Entwickler empfehlen die Verwendung von Nomad auf einem Cluster mit mindestens drei Knoten.

Autodesk, Q2 und Roblox arbeiten in großen Umgebungen mit Nomad

Die Entwickler müssen dazu keine Erfahrung für Cluster oder mit der Verwaltung der Cloud-Umgebung haben. Die notwendigen Aufgaben übernimmt nach der Einrichtung Nomad automatisiert. Nomad wird zum Beispiel von Autodesk eingesetzt, um Multicloud-Orchestrierungs-Workflows aufzubauen.

„Roblox“ nutzt Nomad für Bereitstellung von herkömmlichen Anwendungen und von Container-Apps für seine Gaming-Plattform, mit der über 150 Millionen Spieler Verbindungen aufbauen. Die Anwendungen basieren dabei auf Windows und Linux.

Der Betrieb erfolgt auf physischen Computern, VMs, als Container und als herkömmliche Anwendung. Die Bereitstellung in dieser gemischten Umgebung übernimmt Nomad.bAuch die in den USA sehr bekannte E-Banking-Plattform „Q2“ arbeitet bei der Bereitstellung von Anwendungen mit Nomad.

In Ergänzung zu Kubernetes

Nomad soll in den meisten Fällen Kubernetes nicht komplett ersetzen. In vielen Umgebungen ist der Einsatz von Kubernetes kaum mehr wegzudenken. Hier kann Nomad die Umgebung ergänzen, vor allem wenn gemischte Anwendungen zum Einsatz kommen sollen.

Auch „Mesos“ ist ein Produkt, das häufig parallel zu Nomad zum Einsatz kommt. In größeren Umgebungen ist der parallele Betrieb von Kubernetes, Nomad und Mesos nicht nur möglich, sondern die Open-Source-Anwendungen können auch effektiv zusammenarbeiten. Neben Autodesk, Roblox und Q2, setzen auch Intel und Github auf Nomad, parallel zu Kubernetes.

Bei gemischten Umgebungen, in denen Anwendungen auf verschiedenen Betriebssystemen und auf Basis verschiedener Progammiersprachen oder ch als Container und Nicht-Container-Anwendungen zum Einsatz kommen, ist Nomad sogar eine ideale Ergänzung zu Kubernetes.

Nomad testen und in Betrieb nehmen

Neben der Installation in Linux und MacOS, stellt die Installation von Nomad in Windows der einfachste Weg dar, um das Produkt zu testen. Die Installation erfolgt schnell und einfach mit „Chocolatey“ in der Powershell. Damit das funktioniert, muss Chocolatey natürlich in Windows zur Verfügung stehen. Das erfolgt mit dem Befehl:

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString ('https://community.chocolatey.org/install.ps1'))

Die Installation von Nomad erfolgt anschließend mit:

choco install nomad

Wer Nomad auf Linux testen will, findet in der Dokumentations-Webseite von Nomad die entsprechenden Hinweise dazu.

Nach der Installation von Nomad steht auch die CLI zur Verfügung, mit der sich viele Aufgaben automatisieren und skripten lassen. Mit dem Befehl „nomad“ zeigt die PowerShell einen Überblick an und ermöglicht die Erstellung von ersten Skripten.

Mithilfe des Befehls „nomad ui“ können Anwender*innen das Tool nutzen.
Mithilfe des Befehls „nomad ui“ können Anwender*innen das Tool nutzen.
(Bild: Thomas Joos)

Die Installation von Nomad ist zu Testzwecken auch problemlos in der Windows Sandbox möglich. Dadurch können sich Administratoren in wenigen Minuten einen Überblick zu den Möglichkeiten von Nomad verschaffen. Mit dem Befehl „nomad ui“ öffnet sich die Weboberfläche der Umgebung.

* Der Autor Thomas Joos schreibt Fachbücher und -artikel. Auf DataCenter-Insider füllt er seinen eigenen Blog mit Tipps und Tricks für Admins: „Toms Admin-Blog“.

(ID:47620875)

Über den Autor

 Thomas Joos

Thomas Joos

Freiberuflicher Autor und Journalist