是否可以运行SaltStack命令,例如,查看进程是否在计算机上运行,并聚合在多个minions上运行该命令的结果?
基本上,我希望看到从小爪子返回的所有结果都显示在ASCII表格中。是否有可能有一个等待所有结果返回的超级结果格式化程序,然后应用格式?也许有另一种方法?
答案 0 :(得分:3)
如果您想在Salt中完全执行此操作,我建议您创建一个“输出器”,以显示您想要的数据。
最近创建了一个“highstate”输出器,可能会给你一个很好的起点。高状态输出器创建返回数据的小型摘要表。它可以在这里找到:
https://github.com/saltstack/salt/blob/develop/salt/output/highstate.py
我建议仔细阅读其他输出器的代码。
如果您想使用其他工具来创建此报告,我建议您在cli的命令中添加“--out json”。这将导致Salt以json格式返回数据,然后您可以将其传送到另一个应用程序进行处理。
答案 1 :(得分:1)
这是很久以前的问题,但我不止一次地偶然发现它,我认为另一种方法可能有用 - 使用调查盐跑步者:
$ salt-run survey.hash '*' cmd.run 'dpkg -l python-django'
|_
----------
pool:
- machine2
- machine4
- machine5
result:
dpkg-query: no packages found matching python-django
|_
----------
pool:
- machine1
- machine3
result:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-=================================
ii python-django 1.4.22-1+deb all High-level Python web development