BuildIn-Shell Kommandos sind Befehle, die auf dem Master abgesetzt werden und an die Minions übertragen werden. Dabei werden automatisch die Unterschiede der verschiedenen Betriebsysteme und Distributionnen berücksichtigt. So wird beim Ausführen des Befehls zum Updaten der Distributionen auf einem CentOS ein "yum update" ausgeführt, während auf einem debianbasierten System ein "apt-get upgrade" ausgeführt wird.
Ich stelle hier eine kleine Liste mit BuiltIn-Shell Kommandos zur Verfügung, um anhand dieser Beispiele zu sehen wie das funktionieren soll. Darüber hinaus zeige ich, wie die gleichen Befehle auf einen einzelnen Host bzw. an eine Host-Familie (Debian, RedHat, usw) gesendet werden. Es kann ja sein, dass aus einem bestimmten Grund nur alle RedHat-basierten Server angesprochen werden müssen. Siehe die folgenden Beispiele.
Befehle, die auf allen Minions ausgeführt werden
Alle Minions OS-unabhängig upgraden
salt '*' pkg.upgrade
Einen User auf allen Minions anlegen und seine Standartshell ändern
salt '*' user.add hannes
salt '*' user.chshell hannes /bin/bash
Befehle, die auf einem einzelnen Minion ausgeführt werden
Minions OS-unabhängig upgraden
salt minion1.silvesterlangen.de pkg.upgrade
Einen User auf einem Minion anlegen und seine Standartshell ändern
salt minion1.silvesterlangen.de user.add hannes
salt minion1.silvesterlangen.de user.chshell hannes /bin/bash
Befehle auf einer OS-Familie ausführen
Alle Minions OS-abhängig upgraden
salt -G "os_familiy:Debian" pkg.upgrade
Einen User auf allen Minions anlegen und seine Standartshell ändern, die
auf Debian basieren
salt -G "os_familiy:Debian" user.add hannes
salt -G "os_familiy:Debian" user.chshell hannes /bin/bash
Hier ist die Liste der BuiltIn Commands
https://docs.saltstack.com/en/2015.8/ref/modules/all/index.html