Salt SSH

Es geht auch ohne Minion.

Salt im Push Modus mit SSH

Salt-SSH benutzte nur SSH zum Verteilen und »ausführen« der Sates. Eine Installation der Minion-Software auf den Zielsystemen ist nicht notwendig.

Salt-SSH installieren

Salt-SSH gehört nicht zum Standard-Umfang vom Salt-Master und muss mit apt install salt-ssh nachinstalliert werden.

Inventar anlegen

/etc/salt/roster

/etc/salt/roster
web1:
  host: 192.168.42.1 # The IP addr or DNS hostname
  user: fred # Remote executions will be executed as user fred
  passwd: foobarbaz # The password to use for login, if omitted, keys are used
  sudo: True # Whether to sudo to root, not enabled by default
  priv: ~/.ssh/id_ed25519
web2:
  host: 192.168.42.2

Sollte der Root-User des Salt-Masters noch kein SSH-Key-Paar haben, generieren Sie eines mit dem Kommando ssh-keygen -N "" -t ed25519 -C "root@salt-master.local" .

Problem: Python fehlt

Auf einem minimal installieren System kann es passieren, dass Salt SSH auf der Gegenseite keine oder ein nicht ausreichend aktuelle Python Version installiert ist.

Python fehlt :-(

Lösung

Über den sogenannten Raw-Modus, können Kommandos auch ohne Python ausgeführt werden, etwa die Installation von Python.

Key automatisch akzeptieren

Wenn Sie viele Hosts per Salt SSH verwalten, möchten Sie nicht zu jedem Host eine manuelle SSH-Verbindung aufbauen, um den Fingerprint in der Know-Hosts-Datei zu speichern. Abhilfe schafft eine SSH-Client-Einstellung:

Defaults setzen

Anstatt für jeden Host in der Roster-Datei den Usernamen und den Port für die SSH-Verbindung zu setzen, können Sie auch den globalen Default ändern.

Für alle weiteren SSH-Default-Werte siehe grep ssh /etc/salt/master.

Last updated