Ich habe es nodejs
auf meinem Salt-Minion (Centos 6.6) installiert init.sls
als:
manager-requirements:
pkg.latest:
- pkgs:
- nodejs
Auf Minion nodejs
ist es installiert und ich kann es verwenden.
Wenn ich „on“ ausführe config.get
, salt-master
um den Installationsstatus abzurufen, werden leere Einträge zurückgegeben.
salt '*' config.get pkg:nodejs
kehrt zurück,
Minion-host-name:
Ich habe den Node.JS-Installationsstatus wie True
im Rückgabewert erwartet, aber er ist nicht da.
Ist dies config.get
die richtige Schnittstelle, um die installierten Pakete in Minions abzufragen?
Antwort1
salt.modules.configist über den Zustand des Salzes Minion / Master, Sie wollensalt.modules.pkg
salt '*' pkg.version nodejs python ruby
salt '*' pkg.install nodejs
salt '*' pkg.install pkgs='["nodejs","python", "ruby"]'
Die vollständigen Dokumente finden Sie unter dem paketspezifischen Modul:geeignet,lecker,brauen,Pacman,Verpackung,pkgin,ips,usw
Anstatt Salt aufzufordern, den Zustand des Systems zu beschreiben („Ist das Paket nodejs installiert?“) oder etwas zu tun („Installieren Sie das Paket nodejs.“), besteht die bevorzugte Salt-Sprache wahrscheinlich darin, die Statusdatei oder den einzelnen fraglichen Zustand (whatever/init.sls) mitStaat.sls
salt '*' state.sls whatever test=true # does a dry run
salt '*' state.sls whatever # actually applies the state
salt '*' state.sls_id state_name whatever # single state from whatever/init.sls
Aber um ehrlich zu sein, die schnelle und schmutzige Plausibilitätsprüfung mitcmd.rungewinnt oft:
salt '*' cmd.run "node --version"
salt '*' cmd.run "dpkg -l |grep salt-minion""