如何列出所有连接的 Salt Stack minions?

如何列出所有连接的 Salt Stack minions?

有时我的 saltmaster 会挂起一段时间,salt '*' test.ping等待宕机的 minions 回复。有没有办法查看连接的 minions 列表,而不管它们是否响应test.ping

答案1

官方答案:

salt-run manage.up

同样有用的有:

salt-run manage.status

salt-run manage.down

答案2

从主类型:

ls -1 /var/cache/salt/master/minions

或者:

ls -1 /etc/salt/pki/master/minions

输入错误的 salt 查询(例如 salt '*' -)也会返回所有 minion 的列表,每个 minion 后面都会跟一条消息,指出该命令不可用。您可以 grep/cut 掉多余的字符。这两个选项都不是特别优雅,后者没有解决超时问题,但它在我寻找类似问题的答案时有效;“如何通过 saltstack python api 列出所有关联的 minion?”。

答案3

一些新命令这使得事情变得更容易,

salt-run manage.alived根据 Salt 的存在检测打印所有启动的 minion 列表(不会向 minion 发送任何命令)

salt-run manage.allowed根据 Salt 的存在检测打印所有启动的 minion 列表(不会向 minion 发送任何命令)

salt-run manage.not_alived根据 Salt 的存在检测,打印所有未启动的 minion 列表(不会发送任何命令)

salt-run manage.not_allowed根据 Salt 的存在检测,打印所有未启动的 minion 列表(不会发送任何命令)

salt-run manage.not_joined根据 Salt 的存在检测,打印所有未启动的 minion 列表(不会发送任何命令)

答案4

我认为可以使用 Grains 模块来实现这一点:

salt '*' grains.get id

相关内容