Saltstack
Was ist SaltStack?
SaltStack ist eine Open-Source-Plattform für Konfigurationsmanagement, Fernsteuerung und Automatisierung von IT-Infrastrukturen. Administratoren definieren gewünschte Serverzustände zentral und wenden sie auf einzelne Systeme oder große Servergruppen an. SaltStack kann Software installieren, Dienste konfigurieren, Befehle parallel ausführen und auf Infrastrukturereignisse automatisiert reagieren.
SaltStack einfach erklärt
SaltStack, auch als Salt Project bezeichnet, verbindet zentrale Konfigurationsverwaltung mit schneller Remote-Ausführung. Statt Webserver, Datenbanken oder Caching-Systeme einzeln einzurichten, beschreibst du den gewünschten Zustand in Konfigurationsdateien. SaltStack prüft anschließend die Zielsysteme und führt die erforderlichen Änderungen aus.
Ein typischer Anwendungsfall ist eine Gruppe aus zehn Webservern, auf denen dieselbe Version eines Webservers laufen soll. Eine Salt-State-Datei kann festlegen, dass das Paket installiert, eine bestimmte Konfiguration vorhanden und der zugehörige Dienst aktiv sein muss. Weicht ein Server davon ab, stellt SaltStack den definierten Zustand wieder her.
Wie funktioniert SaltStack?
Die klassische SaltStack-Architektur besteht aus einem Master und mehreren Minions. Der Master verteilt Befehle und Konfigurationen. Auf jedem verwalteten Server läuft ein Minion, der Befehle empfängt, lokale Informationen bereitstellt und Ergebnisse an den Master zurücksendet. Vor der ersten Steuerung muss der Master den kryptografischen Schlüssel des Minions akzeptieren.
Master und Minion kommunizieren
In der Standardarchitektur nutzt SaltStack zwei Netzwerkports: Port 4505 verteilt Befehle vom Master an die Minions, Port 4506 nimmt Rückmeldungen und Ausführungsergebnisse entgegen. Firewalls müssen diese Verbindungen gezielt erlauben. Öffentlich erreichbare Master-Schnittstellen erhöhen dagegen die Angriffsfläche und gehören in ein abgesichertes Verwaltungsnetz.
States definieren den Zielzustand
SaltStack-States werden in SLS-Dateien gespeichert und häufig mit YAML sowie Jinja-Logik aufgebaut. Ein State kann beispielsweise festlegen, dass das Paket nginx installiert sein muss, eine geprüfte Konfigurationsdatei unter /etc/nginx/nginx.conf liegt und der Dienst läuft. Mehrere States lassen sich über eine Top-Datei bestimmten Servergruppen zuordnen.
test=True als Vorschau ausführen. SaltStack-Bausteine im Überblick
Die Begriffe Grains und Pillar werden häufig verwechselt. Grains beschreiben Eigenschaften eines Minions und werden überwiegend auf dem Zielsystem ermittelt. Pillar-Daten kommen vom Master und lassen sich gezielt an bestimmte Minions ausliefern. Zugangsdaten oder umgebungsspezifische Werte gehören deshalb eher in Pillar-Strukturen als in allgemein verteilte State-Dateien.
| Baustein | Aufgabe | Beispiel |
|---|---|---|
| Execution Module | Führt eine unmittelbare Aktion aus | Dienststatus abfragen |
| State Module | Stellt einen definierten Zustand her | Webserver installieren und starten |
| Grain | Liefert Eigenschaften des Zielsystems | Betriebssystem oder Hostname |
| Pillar | Verteilt zielgerichtete Konfigurationswerte | Datenbankhost einer Umgebung |
| Reactor | Reagiert auf Ereignisse | Dienst nach einem Ausfall neu starten |
SaltStack und Idempotenz
SaltStack wird häufig pauschal als idempotent bezeichnet. Die Aussage gilt jedoch nur für sauber entwickelte States und State-Module. Idempotenz bedeutet, dass eine wiederholte Ausführung bei bereits erreichtem Zielzustand keine weitere Änderung verursacht. Ein beliebig eingebauter Shell-Befehl kann bei jedem Durchlauf erneut Dateien verändern oder Prozesse starten.
Prüfe deshalb nicht nur, ob ein State erfolgreich beendet wurde. Ein guter Test führt denselben State zweimal aus: Der erste Lauf darf notwendige Änderungen melden, der zweite sollte bei unveränderter Infrastruktur keine weiteren Anpassungen vornehmen. Zusätzlich zeigt test=True vorab, welche Ressourcen SaltStack voraussichtlich verändern würde.
Unterschied zu Ansible und Puppet
Der Unterschied zwischen SaltStack und Ansible liegt vor allem im Standardmodell. SaltStack arbeitet klassisch mit dauerhaft laufenden Minions und eignet sich dadurch für schnelle Befehlsverteilung sowie ereignisgesteuerte Abläufe. Ansible nutzt typischerweise SSH-Verbindungen ohne dauerhaft installierten Agenten. SaltStack bietet mit Salt SSH ebenfalls eine agentenlose Betriebsart.
Der Unterschied zwischen SaltStack und Puppet liegt im Schwerpunkt der Ausführung. Puppet konzentriert sich stark auf deklaratives Konfigurationsmanagement und regelmäßige Zustandsabgleiche. SaltStack verbindet deklarative States mit unmittelbaren Remote-Befehlen, Ereignissen und Orchestrierung. Die Auswahl sollte deshalb anhand von Sicherheitsmodell, Betriebssystemen, Teamkenntnissen und vorhandener Infrastruktur erfolgen.
Nutzen für SEO, SEA und GEO
SaltStack verbessert Rankings nicht direkt. Die Plattform kann jedoch technische Bedingungen reproduzierbar verwalten, die SEO, SEA und GEO beeinflussen. Dazu gehören Webserver-Konfigurationen, HTTPS-Einstellungen, Weiterleitungen, Komprimierung, Cache-Regeln, strukturierte Log-Ausgaben sowie die Verteilung identischer Konfigurationen auf mehrere Systeme.
Messbar ist die Wirkung einer Änderung durch den Vergleich von Deployment-Protokollen, Serverantwortzeiten, Verfügbarkeit und Crawl-Ergebnissen vor und nach dem Rollout. Ein Technik-Crawler für technische SEO-Checks kann anschließend Statuscodes, Canonicals, Ladezeiten und weitere Seitensignale kontrollieren. Der kostenlose Ladezeiten-Check hilft bei einer ersten Prüfung einzelner URLs.
SaltStack im Betrieb 2026
Eine belastbare SaltStack-Konfiguration beginnt mit Versionsverwaltung und getrennten Umgebungen. State-Dateien gehören in ein Repository, Änderungen durchlaufen eine Testumgebung und produktive Rollouts erfolgen schrittweise. Bei umfangreichen Servergruppen reduziert ein Test auf wenigen Minions das Risiko, dass ein fehlerhafter State gleichzeitig alle Webserver verändert.
Typische Kontrollpunkte für einen Rollout sind:
Bei Websites sollte die technische Kontrolle zusätzlich prüfen, ob Deployments Weiterleitungen, Canonicals, robots.txt, Sitemaps oder strukturierte Daten verändert haben. Eine umfassendere SEO-Audit-Analyse verbindet solche Infrastrukturänderungen mit ihren Auswirkungen auf Crawling, Indexierung und SEO-Sichtbarkeit.
Häufige Fehler bei SaltStack
Ein häufiger Fehler ist die Vermischung von Zielzuständen und unkontrollierten Shell-Befehlen. SaltStack meldet einen erfolgreich ausgeführten Befehl nicht automatisch als fachlich korrekte Konfiguration. Verwende vorhandene State-Module, hinterlege Abhängigkeiten und prüfe den tatsächlichen Dienstzustand nach jeder Änderung.
Häufige Fragen zu SaltStack
Ist SaltStack kostenlos?
Der Kern von SaltStack ist als Open-Source-Software verfügbar. Für kommerzielle Verwaltungsfunktionen, Support und Unternehmenslösungen können je nach Anbieter und Betriebsmodell zusätzliche Kosten entstehen.
Braucht SaltStack immer einen Agenten?
Die klassische Architektur verwendet einen Minion auf jedem verwalteten System. Mit Salt SSH kann SaltStack bestimmte Aufgaben auch ohne dauerhaft installierten Minion über SSH ausführen.
Welche Betriebssysteme kann SaltStack verwalten?
SaltStack unterstützt verschiedene Linux- und Unix-Systeme sowie Windows. Ob ein bestimmtes State- oder Execution-Modul verfügbar ist, muss für das jeweilige Betriebssystem und die eingesetzte Version geprüft werden.
Was ist ein Highstate in SaltStack?
Ein Highstate ermittelt anhand der Top-Datei und weiterer Zuordnungen, welche States für einen Minion gelten. SaltStack wendet diese States anschließend an, um den definierten Zielzustand herzustellen.
Was ist der Unterschied zwischen Grains und Pillar?
Grains liefern Eigenschaften eines Minions, beispielsweise Betriebssystem oder Hostname. Pillar stellt vom Master verwaltete und zielgerichtet verteilte Konfigurationswerte bereit.
Kann SaltStack Docker und Cloud-Systeme verwalten?
SaltStack kann Cloud-Ressourcen, virtuelle Systeme und Container in Automatisierungsabläufe einbinden. Der konkrete Funktionsumfang hängt von den verwendeten Modulen, Schnittstellen und Versionen ab.
Wenn Serverkonfigurationen Ladezeit, Crawling oder Indexierung beeinflussen, lohnt sich eine gemeinsame technische Prüfung von Infrastruktur und Website.
Kostenlosen Potenzialcheck anfragen
Sie haben noch Fragen?







