saltstack: запускать параллельно/ждать других заданий

У меня есть несколько солевых состояний и команд, которые выполняются, в то время как в настоящее время могут выполняться другие задания.

Затем я получаю сообщение об ошибке для новых заданий, что-то вроде:

Функция «state.apply» работает как PID 3869 и была запущена 23 марта 2017 г. 10:19:32.691177 с jid 20170323101932691177.

Есть ли способ дождаться завершения других заданий или запустить задание параллельно?


person imehl    schedule 23.03.2017    source источник


Ответы (3)


Вы можете поставить в очередь выполнение солевых состояний: salt minion_A state.apply some.state queue=True

Это поставит состояние в очередь, если в данный момент выполняются какие-либо другие состояния, имейте в виду, что этот параметр запускает новый поток для каждого запуска состояния в очереди, поэтому используйте этот параметр с осторожностью (https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.state.html).

person Alex Zel    schedule 24.05.2017

Вы можете использовать функцию saltutil.running, чтобы проверить, выполняется ли соляное задание на миньоне, например.

соль 'MINION' saltutil.running

См. https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.saltutil.html#salt.modules.saltutil.running

person Florian    schedule 24.05.2017

Начиная с версии соли 2017.7.0, вы можете добавить parallel=true вашей команде состояния, которая будет пытаться выполнять задачи параллельно.

person Christopher Hunter    schedule 29.08.2017