美文网首页saltstackDevOps
saltstack中的top.sls路径问题

saltstack中的top.sls路径问题

作者: zczhuohuo | 来源:发表于2016-04-15 08:38 被阅读1532次

    额,我承认,我一开始搞不清楚 saltstack 是如何搜索 top.sls的。
    假设我的 file_roots 设置如下:

    foot_roots
      base:
        - /srv/salt/  
      dev:
          - /srv/salt/dev/
        online:
          - /srv/salt/online/
        testsvr:
          - /srv/salt/testsvr/
    

    我的/srv/salt/top.sls设置如下:

    base:
      '*':
        - mysql
    dev:
      '*':
      - redis
    

    那么执行以下的语句时,很容易理解,saltstack 是否所 base 下的 top.sls,即 /srv/salt/top.sls

    salt '*' state.apply 
    

    但是如果执行就会报找不到 top.sls 的错误。

    salt '*' state.apply saltenv=dev
    

    由于在官方文档的示例中 basedev 放在同一个 top.sls 里面,我就想当然的以为当 state.apply 加上 saltenv=dev 参数时,还是会去搜索 /srv/salt/top.sls 文件,然后对于不同的环境,很智能地去搜索相应路径下的 sls 文件。困惑了半天之后,才发现,如果state.apply加上slatenv=dev参数,saltstack是会去搜索file_roots定义的dev环境路径下的top.sls,而不是我一开始意料的/srv/salt/top.sls。

    相关文章

      网友评论

        本文标题:saltstack中的top.sls路径问题

        本文链接:https://www.haomeiwen.com/subject/mpqnlttx.html