我有一个盐大师,只有一个salt salt minion和Id saltMinion2。 我在master和salt-minion-2014.1.10-4.el6.noarch salt-master-2014.1.10-4.el6.noarch上安装了rpm salt-master-2014.1.10-4.el6.noarch ,这两台机器都是CentOS6.5。 师父能够test.ping所以设置可能的作品。 我正在master上运行以下命令:
salt saltMinion2 cp.get_file salt://etc/hosts /minion
我期望master上的文件/ etc / hosts出现在minion的目录/ minion中。 该文件存在于主文件夹中,目录文件存在于备忘录文件中。 在debugging模式下运行我在master和minion中都得到了debug和info消息,但是没有错误,好像命令在master上成功执行。 在命令完成后,小爪子目录/小爪子保持空白
Returning information for job:<some number>
我在这里做错了什么?
正如您在注释中指出的那样,该文件必须存在于盐主文件服务器(用salt://协议指定)中。 您不能将源文件指定为文件系统path:
$ 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不存在。