SaltStack wurde auf GitHub ent­wi­ckelt – dem Online-Spiel­platz für Developer. Im März 2011 wurde die Open-Source-Software der Öf­fent­lich­keit zu­gäng­lich gemacht. „Salt“, wie das Tool für das Kon­fi­gu­ra­ti­ons­ma­nage­ment verkürzt genannt wird, dient der au­to­ma­ti­sier­ten Steuerung und Über­wa­chung von Ser­ver­sys­te­men. Mit SaltStack ist es möglich, von einem zentralen Rechner aus Software zu in­stal­lie­ren, zu kon­fi­gu­rie­ren und Kon­fi­gu­ra­ti­ons­be­feh­le in be­lie­bi­ger Anzahl aus­zu­füh­ren. Was das Besondere an Salt ist, wie es von Admins ein­ge­setzt wird und welche Vorteile das Ma­nage­ment-Tool für Sie hat, erfahren Sie hier.

Private Cloud powered by VMware
Cloud? Aber sicher!
  • Jederzeit voll­stän­di­ge Da­ten­ho­heit sowie Da­ten­kon­trol­le
  • Im Einklang mit allen ge­setz­li­chen Re­ge­lun­gen in Deutsch­land
  • Ohne Vendor Lock-in für höchste Fle­xi­bi­li­tät

Was macht SaltStack so besonders?

SaltStack ist eine li­zenz­freie Software von der Apache Software Fondation, die platt­form­über­grei­fend ein­setz­bar ist. Sie er­mög­licht es, Fern­war­tun­gen durch­zu­füh­ren, zuvor de­fi­nier­te Ziel­zu­stän­de her­bei­zu­füh­ren und Über­prü­fun­gen zu starten – und das sowohl im eigenen Re­chen­zen­trum als auch in einer externen Cloud (un­ab­hän­gig vom Anbieter). Der Her­stel­ler nennt als Haupt­vor­zü­ge von SaltStack die einfache In­stal­la­ti­on, die schnelle Steuerung der Kom­mu­ni­ka­ti­on in Mil­li­se­kun­den sowie die Mög­lich­keit, eine Vielzahl von Servern parallel verwalten zu können.

Im direkten Vergleich mit ähnlich ar­bei­ten­den Systemen wie Terraform oder Puppet punktet SaltStack mit viel­sei­ti­gen An­wen­dungs­mög­lich­kei­ten und Schnel­lig­keit. Das Prinzip ist dennoch gleich: Der Ad­mi­nis­tra­tor legt auf einem Server zentral die Kon­fi­gu­ra­ti­on anderer Rechner fest. Die Software zum Kon­fi­gu­ra­ti­ons­ma­nage­ment setzt diese dann auf den einzelnen Clients um. SaltStack nutzt für die Kom­mu­ni­ka­ti­on zwischen Server und Clients die Nach­rich­ten­aus­tausch­bi­blio­thek ZeroMQ. Damit können sowohl kleine als auch große Da­ten­men­gen schnell verteilt werden. Gesichert wird die Kom­mu­ni­ka­ti­on über die Ver­schlüs­se­lung der Daten mit dem sym­me­tri­schen Ver­schlüs­se­lungs­ver­fah­ren AES. Das 2014 im­ple­men­tier­te Feature Reliable Asyn­chro­no­us Event Transport (RAET) sorgt für zu­sätz­li­che Si­cher­heit beim Transport der Daten.

Die ei­gent­li­chen Kon­fi­gu­rie­run­gen laufen bei SaltStack über eine Textdatei im YAML-Format. Die einfache Aus­zeich­nungs­spra­che er­mög­licht die Abbildung von struk­tu­rier­ten Daten in einer se­quen­zi­el­len Dar­stel­lungs­form. Mithilfe der Pro­gram­mier­spra­che Python haben Sie die Mög­lich­keit, mit SaltStack viele Kon­fi­gu­ra­ti­ons­be­feh­le gleich aus­führ­be­reit zu­sam­men­zu­fas­sen.

Ver­wal­tungs­viel­falt mit SaltStack

Neben der Ver­wal­tung von Systemen wie Linux lassen sich mit SaltStack auch MacOS- und Windows-Clients or­ga­ni­sie­ren. Eine uni­ver­sel­le Schnitt­stell­te bietet SaltStack hierfür mit der Salt Cloud. So können Sie zahl­rei­che Systeme kon­fi­gu­rie­ren und steuern. Selbst private Clouds und virtuelle Ser­ver­um­ge­bun­gen sind so au­to­ma­ti­siert steuerbar.

Hinweis

In dem eng­lisch­spra­chi­gen DevOp-Tutorial lernen Sie alles, was Sie für die Nutzung von Terraform und SaltStack wissen müssen.

Vorteile für Ad­mi­nis­tra­to­ren

  1. Ganz gleich welches Ziel­sys­tem Ad­mi­nis­tra­to­ren be­ar­bei­ten möchten: Die Befehle in SaltStack bleiben immer die gleichen. Das macht die Bedienung einfach und leicht zu erlernen.
  2. Das Tool sorgt nicht nur für die au­to­ma­ti­sier­te Ver­tei­lung von Kon­fi­gu­ra­tio­nen, sondern kann auf Er­eig­nis­se reagieren, da es re­gis­triert, welche Art der Kom­mu­ni­ka­ti­on in der In­fra­struk­tur aus­ge­tauscht wird.
  3. SaltStack ist komplett in Salt Open enthalten und in der Apache Lizenz 2.0 für jeden verfügbar. Darüber hinaus können Sie aktiv an der Ge­stal­tung der Software mitwirken. Sollten Sie auf den Support des Her­stel­lers Wert legen, steht Ihnen die En­ter­pri­se-Version zur Verfügung.

Die wich­tigs­ten Begriffe erklärt

Wenn Sie SaltStack nutzen, werden Sie immer wieder auf bestimmte Begriffe stoßen, die im Zu­sam­men­hang mit dem Kon­fi­gu­ra­ti­ons­ma­nage­ment-Tool stehen. Nach­fol­gend haben wir die wich­tigs­ten für Sie zu­sam­men­ge­fasst.

Salt-Master

Der Salt-Master wurde in der Pro­gram­mier­spra­che Python erstellt und ist der Server für den Messenger ZeroMQ, der wiederum die Daten zum Client bringt. Man spricht bei Servern und Clients auch von Master (dt. Meister) und Minions (dt. Lakaien). Daher wird der Server von SaltStack als Salt-Master be­zeich­net. Über ihn findet die zentrale Regelung aller ein­ge­bun­de­nen Ziel­sys­te­me statt. Befehle und Dateien werden über ihn über­tra­gen.

Salt-Minion

Salt-Minions empfangen die Befehle des Salt-Masters. Zeit­gleich in­for­mie­ren sie diesen über alle re­le­van­ten Er­eig­nis­se und Er­geb­nis­se.

Salt-Syndic

Der Salt-Syndic ist ein zwi­schen­ge­schal­te­ter Salt-Master. Er agiert zwischen dem Salt-Master und den Salt-Minions.

Salt-SSH

Hin und wieder kann es vorkommen, dass ein Salt-Minion auf einem Ziel­sys­tem nicht lauffähig ist. Via SSH kann der Salt-Master direkt mit diesem System in Kontakt treten. Dabei fällt jedoch der Austausch mittels ZeroMQ weg, was den Prozess deutlich ver­lang­sa­men kann. Zudem können dadurch auch einige Funk­tio­nen und Module wegfallen.

Salt-Proxy-Minion

Mit dem Salt-Proxy-Minion ist es möglich, Dritt­ge­rä­te an­zu­steu­ern. Darunter fallen zum Beispiel Netz­werk­ge­rä­te wie Router oder Switches.

Wie arbeitet SaltStack?

Vom Salt-Master aus werden die Salt-Minions mittels „Bussen“ wie ZeroMQ, SSH oder Proxy-Minion mit Befehlen versorgt. Die Salt-Minions melden sich mit einem in­di­vi­du­el­len Schlüssel zurück. Der Salt-Master muss diesen bei erster Kon­takt­auf­nah­me be­stä­ti­gen, sodass der Befehl aus­ge­führt werden kann. Es findet also eine ver­schlüs­sel­te Kom­mu­ni­ka­ti­on mit Schlüs­sel­paa­ren statt.

Nehmen wir an, dass Sie eine Software kon­fi­gu­rie­ren möchten: Ent­spre­chend geben Sie den Befehl an den Salt-Master, welcher ihn nun an alle Minions wei­ter­gibt. Die Software wird dann über­grei­fend auf allen Geräten der In­fra­struk­tur au­to­ma­tisch kon­fi­gu­riert. Der Master kann dabei optional als Salt-Syndic du­pli­ziert werden.

Zum Hauptmenü