我正在编程,想要用Salt下推代码。我最近在两台CentOS 7.x服务器上安装了Salt minion和Salt master。它们都是Salt版本2015.8.7。我salt '*' test.ping
工作了。对我而言,这证明/etc/salt/minion.yml
和/etc/salt/master.yml
已在各自的服务器上正确设置。它证明了服务正在运行。
以下是top.sls
的内容:
base:
'*':
- core
以下是core.sls
的内容:
{{ salt['runtests_helpers.get_sys_temp_dir_for_path']('testfile') }};
file:
- managed
- source: salt://testfile
当我跑步时
# salt 'fqdnOfSaltMinionServer' state.apply
我收到类似这样的错误" ..没有找到Top文件或外部节点数据匹配...错误:Minions以非零退出代码返回"
如何从我想成为Salt Minion的服务器上卸载Salt master?如何获得基本的.sls文件? Ping工作。我不知道我的top.sls
或core.sls
文件有什么问题。我有一个名为testfile的小型简单文本文件。我想将它从Salt主服务器传输到Salt minion。我不知道我的设置有什么问题。
答案 0 :(得分:0)
答案 1 :(得分:0)
至少使用salt 2016.11.1(Carbon),这是顶级文件必须驻留的默认设置(在/etc/salt/master
中):
##### File Server settings #####
##########################################
# Salt runs a lightweight file server written in zeromq to deliver files to
# minions. This file server is built into the master daemon and does not
# require a dedicated port.
# The file server works on environments passed to the master, each environment
# can have multiple root directories, the subdirectories in the multiple file
# roots cannot match, otherwise the downloaded files will not be able to be
# reliably ensured. A base environment is required to house the top file.
# Example:
# file_roots:
# base:
# - /srv/salt/
# dev:
# - /srv/salt/dev/services
# - /srv/salt/dev/states
# prod:
# - /srv/salt/prod/services
# - /srv/salt/prod/states
#
#file_roots:
# base:
# - /srv/salt
#
作为previous John answer,将顶级文件放在/ srv / salt中是指如果你没有更改/ etc / salt / master中的默认值,该怎么办。