Представьте, что вы хотите применить некоторые состояния к группе миньонов, например ко всем клиентам ubuntu. Возможно, к тому моменту, когда мы подадим заявку, некоторые миньоны отключены.
Как долго состояния остаются в шине сообщений, чтобы передать их миньонам? Какие стратегии вы предлагаете для решения этой проблемы и изменения состояния миньонов, когда они вернутся в сеть? Есть ли лучший способ сделать состояние притяжения миньонов, чем бег? salt-call state.highstate
?
Соль бывает так называемой реакторная система, который должен соответствовать вашим потребностям.
Следующее не проверено и взято из связанных документов.
/etc/salt/master.d/reactor.conf
:
reactor:
- 'salt/minion/*/start': # Match the start event
- /srv/reactor/start.sls # Things to do when a minion starts
/srv/reactor/start.sls
:
highstate_run:
local.state.apply:
- tgt: {{ data['id'] }} # data included event data, id is the minion id.
Это должно гарантировать, что каждый миньон применяется state.highstate
после того, как он открыл соединение с мастером соли.