AA_ropes_wklzzz_123rf_8147897.jpg

© wklzzz, 123RF

Mit Saltstack mehrere Systeme parallel verwalten

Strippenzieher

Profis greifen häufig zu Saltstack, um Server-Farmen parallel zu administrieren. Richtig angewandt spart dieselbe Technik auch in kleinen Netzwerken viel Arbeit.

Selbst in kleineren IT-Umgebungen lohnt es sich, die Systeme möglichst einheitlich zu verwalten. Der Aufwand für das Einarbeiten und den Einsatz von umfangreichen Tools für das Konfigurationsmanagement – etwa Ansible, Chef oder Puppet – lohnt sich dort aber selten. Häufig fallen nur einmalig zu erledigende Aufgaben an; dafür dauert das Schreiben von Rezepten (Chef) oder Manifesten (Puppet) als Overkill.

Alternativ nutzen viele Admins selbst geschriebene Skripte, die sie nacheinander auf einer mühevoll gepflegten Liste an Hosts ausführen. Solche Methoden funktionieren zwar, müssen aber die Besonderheiten der jeweiligen Plattformen berücksichtigen und mit eventuellen Zeitüberschreitungen beim Aufbau der Verbindung zurechtkommen.

Der Aufwand lässt sich senken, indem man auf eine bereits erprobte Lösung zurückgreift. Das entsprechende Werkzeug sollte nicht nur die Unterschiede von Distributionen und Betriebssystemen abstrahieren, sondern darüber hinaus einen eigenen Kommunikationsweg bereitstellen sowie Module mit vorgefertigten Befehlen und Makros mitbringen. So etwas bieten in der Regel Projekte aus dem sogenannten Orchestration- und Remote-Execution-Umfeld. Hier sticht Saltstack [1] dank seiner einfachen Bedienung, Geschwindigkeit und Skalierbarkeit unter der Konkurrenz hervor.

Saltstack

Der System- und Software-Architekt Thomas S. Hatch stand vor der beschriebenen Herausforderung, eine teils uneinheitliche Infrastruktur zentral pflegen zu müssen. Aus seiner in Python selbst geschriebenen Lösung ging schließlich das im März 2011 als Open-Source-Projekt veröffentlichte Saltstack (kurz "Salt") hervor.

Es basiert auf einem zentralen Master, der seine Befehle durch Salt-"Minions" (engl.: Lakai, Knecht) auf den Zielsystemen ausführen lässt. Die Kommunikation zwischen dem Master und den Minions erfolgt nicht via SSH, sondern über die bekannte Message-Bus-Bibliothek ZeroMQ [2] und damit asynchron. Verschiedene Module bieten von Haus aus eine ganze Palette an Kommandos und Abfolgen von Befehlen an, mit denen Sie jeweils spezifische Aufgaben ausführen. Zudem ermöglicht ein weiteres Modul das Absetzen von beliebigen Linux-Kommandos. Sobald Sie über den Master Aktionen auslösen, wartet das Werkzeug auf die Ausführung auf den Minions und stellt anschließend das Resultat dar.

Ob Sie Salt nur unter Linux verwenden, auf dem Master-Host und den Zielsystemen unterschiedliche Distributionen laufen, oder Sie gar FreeBSD einsetzen, ist egal: Salt unterstützt eine ganze Reihe von Betriebssystemen, einige davon allerdings nur als Minions, wie etwa Windows [3]. Eine Liste aller fraglichen Plattformen finden Sie online [4]. Durch die mitgelieferten Module kippen Sie die Befehle in einheitlicher Form ein. Erst die Module auf den Minions übersetzen diese in plattformspezifische Kommandos.

Installation

Als Master verwenden Sie eine physikalische oder auch eine virtuelle Maschine – die Anforderungen fallen selbst bei großen Installationen so gering aus, dass der Master keine besonderen Ansprüche stellt. In der Regel können Sie sowohl den Master, als auch die Minions aus den jeweiligen offiziellen Paketquellen einrichten. Allerdings kann es bei zu großen Unterschieden der angebotenen Salt-Versionen zu Kompatibilitätsproblemen aufgrund unterschiedlicher Modulumfänge kommen. Statten Sie besser alle Minions auf eine einheitliche Weise mit der gleichen Version von Salt aus.

Für unsere Tests haben wir der Einfachheit halber eine Reihe virtueller Maschinen erstellt, die sich untereinander sehen können. Ein Ubuntu-System beherbergt den Master, Suse-, Debian- und Fedora-VMs dienen als Minions. Eine genaue Übersicht samt OS-Versionen und IPs finden Sie in der Tabelle "Übersicht Labor-VMs".

Übersicht Labor-VMs

Hostname OS IP Rolle
ub1404 Ubuntu 14.04 192.168.178.39 Master
deb7 Debian 7 192.168.178.40 Minion
linux-x3b4 OpenSuse 13.2 192.168.178.41 Minion
fedora23 Fedora 23 192.168.178.44 Minion

Den Master richten Sie unter Ubuntu 14.04 mit dem Kommando sudo apt-get install salt-master ein. Damit der passende Minion unter Debian 7 bereitsteht, passen Sie die Paketquellen an, indem Sie folgende Zeile an die Datei /etc/apt/sources.list anhängen:

deb http://debian.saltstack.com/debian wheezy-saltstack main

Nach einem sudo apt-get update war der Minion dann mittels sudo apt-get install salt-minion installiert. Unter OpenSuse 13.2 hingegen genügt der Aufruf von Zypper (sudo zypper install salt-minion), während unter Fedora*23 DNF die Arbeit verrichtet (sudo dnf install salt-minion).

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Salt steuert entfernte Rechner

    Salt, eine neue Software zum Ausführen von Befehlen auf entfernten Rechnern, tritt in Version 0.6.0 erstmals ans Licht der Öffentlichkeit.
  • Qubes R3.1 veröffentlicht
    Die Distribution Qubes erhöht die Sicherheit, indem sie Anwendungen in einzelne virtuelle Maschinen sperrt. Jetzt haben die Entwickler die Version R3.1 freigegeben, die zusätzliche Hardwarekomponenten unterstützt und für Anwender ein paar interessante Neuerungen bereithält.
Kommentare

Infos zur Publikation

LU 07/2017: VIDEOSCHNITT

Digitale Ausgabe: Preis € 0,00
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

Irgend ein Notebook mit Linux Mint - vllt der Dell Latitude 3480???
Universit Freiburg, 26.06.2017 13:51, 0 Antworten
Hey Leute, bin am Verzweifeln weil ich super gerne auf Linux umsteigen würde aber kein Noteboo...
scannen mit LINUXMINT 18.0 - Brother DCP - 195 C
Christoph-J. Walter, 21.06.2017 08:47, 4 Antworten
Seit LM 18.0 kann ich nicht mehr direkt scannen. Obwohl ich die notwendigen Tools von der Brothe...
Anfänger Frage
Klaus Müller, 24.05.2017 14:25, 2 Antworten
Hallo erstmal. Habe von linux nicht so viel erfahrung müsste aber mal ne doofe frage stellen. A...
Knoppix-Live-CD (8.0 LU-Edition) im Uefiboot?
Thomas Weiss, 26.04.2017 20:38, 4 Antworten
Hallo, Da mein Rechner unter Windows 8.1/64Bit ein Soundproblem hat und ich abklären wollte, o...
Grub2 reparieren
Brain Stuff, 26.04.2017 02:04, 7 Antworten
Ein Windows Update hat mir Grub zerschossen ... der Computer startet nicht mehr mit Grub, sondern...