У меня есть мастер соли и только один миньон с идентификатором saltMinion2. Я установил обороты salt-master-2014.1.10-4.el6.noarch
на хозяине и salt-minion-2014.1.10-4.el6.noarch
на миньоне и на обеих машинах стоит CentOS6.5. Мастер умеет test.ping
миньон, так что настройка, вероятно, работает. Я запускаю на мастере следующую команду:
salt saltMinion2 cp.get_file salt://etc/hosts /minion
Я ожидаю, что файл / etc / hosts на мастере появится в каталоге / minion на minion. Файл существует в мастере, а каталог существует в миньоне. Работая в режиме отладки, я получаю отладочные и информационные сообщения как в мастере, так и в миньоне, но без ошибок, и похоже, что команда успешно выполняется на мастере. Каталог миньонов / миньон остается пустым после завершения команды с регистрацией миньона.
Returning information for job:<some number>
Что я здесь делаю не так?
Как вы указали в комментарии, этот файл должен существовать на главном файловом сервере соли (который указан с помощью salt://
протокол). Вы не можете указать исходный файл как путь к файловой системе:
$ sudo salt minion-id cp.get_file /etc/hosts /tmp
minion-id:
Traceback (most recent call last):
File "/usr/lib/pymodules/python2.7/salt/minion.py", line 722, in _thread_return
return_data = func(*args, **kwargs)
File "/usr/lib/pymodules/python2.7/salt/modules/cp.py", line 150, in get_file
gzip)
File "/usr/lib/pymodules/python2.7/salt/fileclient.py", line 692, in get_file
path = self._check_proto(path)
File "/usr/lib/pymodules/python2.7/salt/fileclient.py", line 58, in _check_proto
raise MinionError('Unsupported path: {0}'.format(path))
MinionError: Unsupported path: /etc/hosts
В твоем случае, /srv/salt/etc/hosts
не существует.