首页 文章

如何让Salt Master应用基本SLS文件来对抗Salt Minion?

提问于
浏览
1

我正在编程,并希望用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.slscore.sls 文件有什么问题 . 我有一个名为testfile的小而简单的文本文件 . 我想将它从Salt主服务器传输到Salt minion . 我没有看到我的设置有什么问题 .

2 回答

  • 0

    你在centos上使用yum / rpm提供的salt master吗?我遇到了类似的问题,不得不在salt主服务器上创建一个/ srv / salt目录来保存我的文件(在你的例子中是core.sls和testfile),然后才能到达任何地方 .

  • 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中的默认值,该怎么办 .

相关问题