Saltstack
  • Willkommen
  • Einführung
  • Testumgebung
    • Salt-Master öffentlicher FQDN
  • Salt installieren
    • Minions und Master "verheiraten"
  • Salt Module
    • Beispiel Benutzer anlegen
    • Dateien hin und her kopieren
  • Salt States
    • Yaml verstehen
    • Editoren anpassen
    • Beispiel Benutzer verwalten
    • Abhängigkeiten
    • Dateien editieren
    • Shell Kommandos
    • Beispiel Caddy Webserver
  • Linter
  • Minions adressieren
    • Grains
    • Hostgruppen - Node Groups
  • Jinja
    • Beispiel Caddy PHP
  • top.sls
  • Output
  • Pillars
    • Hosts Pillars
    • GPG
    • Vault
    • Datenbanken
    • Beispiel Benutzerverwaltung
  • Salt-Mine
  • Eigene Module erstellen
  • Orchestrierung
  • Returner & Job-Cache
  • Salt SSH
  • Salt API
  • Salt Cloud
    • Hinweise und Fallen
    • KVM und Libvirt
    • Scaleway
    • Digitalocean
    • Hetzner Cloud
    • eigene Deploymentscripte
    • Dynamische Portforwarding
    • Keys automatisch aufräumen
    • Start Aktionen
  • GIT
    • Alternative CD
  • Salt Reactor
  • Salt für Windows
    • Software ohne Repository installieren
    • PowerShell
    • Chocolatey Paktemanager
    • Lokales Logon Skript
    • Software Repository
  • Beispiele
    • Restic Backup
    • Apache Web-Proxy
    • Wartungstunnel
    • Unattended Upgrades
  • Salt & Etcd
  • Salt ACS
Powered by GitBook
On this page
  • Wie sieht es unter der Oberfläche aus?
  • Adressieren Sie Minions über Grains
  • Eigene Grains setzen
  1. Minions adressieren

Grains

Was ist unter der Oberfläche eines Systems?

Wie sieht es unter der Oberfläche aus?

Salt comes with an interface to derive information about the underlying system. This is called the grains interface, because it presents salt with grains of information. Grains are collected for the operating system, domain name, IP address, kernel, OS type, memory, and many other system properties.

salt '*' grains.items
salt '*' grains.fetch roles
salt '*' grains.fetch ipv4
salt '*' grains.fetch osfinger

Adressieren Sie Minions über Grains

Windows oder Linux?

salt -G 'kernel:linux' test.ping
salt -G 'Os:Windows' test.ping
salt -G 'osfinger:Ubuntu-18.04' test.ping

Subnetze ansprechen

salt -G 'ip_interfaces:eth0:10.8.178.23' test.ping
salt -G 'ipv4:10.8.178.*' test.ping

Mehrere Grains zum Filtern verwenden

salt -C 'G@ipv4:10.8.178.* or G@ipv4:192.168.*' test.ping
salt -C 'G@ipv4:172.* and ( G@kernel:windows or G@kernel:linux )' test.ping

Achten Sie bei Klammern auf ein Leerzeichen nach der Klammer.

Eigene Grains setzen

/etc/salt/minion.d/grains.conf
grains:
  customer: kramm
  city: berlin
  contact:
    - phone: 030 09876
    - street: bla

Grains kann man auch vom Master den Minions "zuweisen":

salt '<SOME_MINION>' grains.set role web
salt '<SOME_MINION>' grains.set roles [web,database]
salt 'delia' grains.set 'apps:myApp' '{port: 2209}'
salt delia grains.set test \
  "{'location': {'city':'Essen', 'country':'Germany'}, 'newkey':'value'}" \
  force=True

Beachten Sie, dass mit Sie mit grains.set vorhandene Grains ggf. überschreiben. Sie können auch grains.append verwenden.

Grains, welche Sie mit dem zuvor genannten Befehl setzen, werden vom Minion in die Datei /etc/salt/grains gespeichert. Sollte eine weitere Grains-Konfigurationsdatei in /etc/salt/minion.d/ existieren, hat diese Vorrang und die per grains.set oder grains.append gesetzten Grains werden ignoriert.

PreviousMinions adressierenNextHostgruppen - Node Groups

Last updated 1 year ago

📖

📖 Mehr Informationen in der .

https://docs.saltproject.io/en/latest/topics/targeting/compound.html
Projektdokumentation