init.sls
を使用して、salt-minion(Centos 6.6)にnodejs
をインストールしました。
manager-requirements:
pkg.latest:
- pkgs:
- nodejs
ミニオンにはnodejs
がインストールされており、使用できます。
config.get
でsalt-master
を実行してインストールステータスを取得すると、空白のエントリが返されます。
salt '*' config.get pkg:nodejs
戻り値、
Minion-Host-name:
Nodejsのインストールステータスを戻り値でTrue
と期待していましたが、そこにはありません。
config.get
は、ミニオンにインストールされているパッケージについて問い合わせるのに適切なインターフェースですか?
salt.modules.config は、ソルトミニオン/マスターの状態に関するものです。必要なのは salt.modules.pkg
salt '*' pkg.version nodejs python Ruby
salt '*' pkg.install nodejs
salt '*' pkg.install pkgs='["nodejs","python", "Ruby"]'
完全なドキュメントはパッケージャー固有のモジュールの下にあります: apt 、 yum 、 brew 、 pacman 、 pkgng 、 pkgin 、 ips 、 etc
システムの状態を説明するようにsaltに要求する(「パッケージnodejsがインストールされていますか」)か、何かをする(「パッケージnodejsをインストールする」)代わりに、推奨されるソルトイディオムは、おそらく状態ファイルまたは問題の単一状態をチェックまたは強制することです( what/init.sls)with state.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
しかし、正直に言うと、 cmd.run を使用した迅速で汚いサニティチェックが成功することがよくあります。
salt '*' cmd.run "node --version"
salt '*' cmd.run "dpkg -l |grep salt-minion""