Как мне перечислить всех связанных миньонов Salt Stack?

76

Иногда мой солистка некоторое время зависает, salt '*' test.pingожидая ответа от побежденных миньонов. Есть ли способ, чтобы увидеть список подключенных миньонов, независимо от того, отвечают ли они test.ping?

Петрус Терон
источник

Ответы:

89

Официальный ответ:

salt-run manage.up

Также полезны:

salt-run manage.status

salt-run manage.down
Дэн Гартвейт
источник
2
"salt-run -d" Предоставляет полный список всех модулей, которые вы можете запускать с помощью salt-run, которые стоит прочитать
Крис Хуанг-Ливер,
5
salt-run manage.versionsтакже весьма полезно (сообщает о запущенных версиях миньонов и сравнивает их с версиями мастера)
sxc731
Обратите внимание, что солончак manage.upи, manage.statusкажется, сделать test.pingпод капотом. По крайней мере, когда я запустился manage.up, он показал в логах миньонов как test.ping..... Если вы хотите убедиться, что ему не нужно ничего отправлять, используйте alivedили одну из других функций управления
sdfgeoff
12

Из основного типа:

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

или же:

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

Ввод ошибочного запроса соли (например, соль '*' -) также возвращает список всех миньонов, за которыми следует сообщение о том, что команда недоступна. Вы можете grep / вырезать посторонние символы. Ни один из этих вариантов не является особенно элегантным, и последний не учитывает время ожидания, но работает, пока я ищу ответ на аналогичный вопрос; Msgstr "Как вывести список всех связанных миньонов через api salttack python?"

Будет
источник
Я думаю, что-то должно было измениться / var / cache / salt / master / minions, похоже, уже не существует, / etc / salt / pki / master / minions все еще хорош.
Оливер Данджи
8

"salt-key -L" выведет список всех миньонов, чьи открытые ключи вы приняли на своем мастере.

Utah_Dave
источник
1
Спасибо, но в этих списках принимаются ключи миньонов, а не связанные миньоны.
Петрус Терон
2

Я думаю, что можно использовать модуль зерна для достижения этого:

salt '*' grains.get id
Курт Чжун
источник
2

Есть несколько новых команд, которые делают это намного проще,

salt-run manage.alived Распечатать список всех миньонов, которые работают в соответствии с обнаружением присутствия Соли (никакие команды не будут отправлены миньонам)

salt-run manage.allowed Распечатать список всех миньонов, которые работают в соответствии с обнаружением присутствия Соли (никакие команды не будут отправлены миньонам)

salt-run manage.not_alived Распечатать список всех миньонов, которые НЕ в соответствии с обнаружением присутствия Солт (никакие команды не будут отправлены)

salt-run manage.not_allowed Распечатать список всех миньонов, которые НЕ в соответствии с обнаружением присутствия Солт (никакие команды не будут отправлены)

salt-run manage.not_joined Распечатать список всех миньонов, которые НЕ в соответствии с обнаружением присутствия Солт (никакие команды не будут отправлены)

Суфиян Гори
источник
-6

Чтобы сделать ping всем миньонам, попробуйте на главном узле соли:

salt '*' test.ping 
Михаил Ветчинов
источник
4
Вы читали вопрос? В частности, речь идет об альтернативах вашему методу, потому что в некоторых случаях это не работает.
Свен