Я начинаю проект, который использует Salt Stack для координации подготовки. Но сейчас это не работает - файл журнала (на миньоне, в /var/log/salt/minion) не показывает никаких ошибок, но миньон не делает то, что я прошу.
По сути, я создаю SaltStack с парой основных файлов и как минимум двумя конфигурациями миньонов. В частности, я отлаживаю миньона, который я вызываю bootstrap (потому что он должен запускать мастер соли на миньоне):
master: localhost
file_client: local
file_roots:
base:
- /srv/salt/base
- /srv/salt/states
master:
- /srv/salt/master
- /srv/salt/master/states
Насколько я могу судить, Salt отлично загружает верхние файлы и анализирует их в действительные объекты, но Salt не выполняет никаких команд в ответ на объекты. Действительно, файл журнала миньона говорит:
2014-03-01 23:00:09,644 [salt.utils.jinja ][DEBUG ] Jinja search path: '['/srv/salt/base', '/srv/salt/state
2014-03-01 23:00:09,651 [salt.template ][DEBUG ] Rendered data from file: /srv/salt/base/top.sls:
base:
'*':
- edit.vim
- essential
- users.root
2014-03-01 23:00:09,656 [salt.loaded.int.render.yaml][DEBUG ] Results of YAML rendering:
OrderedDict([('base', OrderedDict([('*', ['edit.vim', 'essential', 'users.root'])]))])
Все выглядит хорошо, за исключением того, что он сразу переходит к:
2014-03-01 23:00:09,661 [salt.utils.jinja ][DEBUG ] Jinja search path: '['/srv/salt/master', '/srv/salt/mas
2014-03-01 23:00:09,662 [salt.template ][DEBUG ] Rendered data from file: /srv/salt/master/top.sls:
master:
'10.47.94.0/24':
- match: ipcidr
- master
- srv.dns.unbound
2014-03-01 23:00:09,665 [salt.loaded.int.render.yaml][DEBUG ] Results of YAML rendering:
OrderedDict([('master', OrderedDict([('10.47.94.0/24', [OrderedDict([('match', 'ipcidr')]), 'master', 'srv.dns.unbound'])]))])
Во всем остальном файле журнала база больше никогда не упоминается. И команды/состояния, связанные с базой, не запускаются. Я вижу записи журнала для edit.vim, srv.dns.unbound и т. д. Но все они следуют одному и тому же шаблону: анализировать и ничего не делать.
Что я делаю не так? У меня смутное впечатление, что это связано с наличием нескольких файловых_корней в моей конфигурации миньона, но я бы не хотел вносить архитектурные изменения, пока не узнаю, какой должна быть архитектура. (Я уже однажды пытался использовать Salt, столкнулся с «этой» молчаливой ошибкой, начал заново и теперь снова столкнулся с ней)
salt-call --local test.ping
, чтобы узнать, звонит ли он в колокольчик. - person leonardinius   schedule 11.08.2014