saltstack的pillar

主要内容:

存储位置:

        存储在master端,存放需要提供给minion的信息

应用场景:

       敏感信息:每个minion只能访问master分配给自己的.

一句话总结:在master上指定给miniond的key ,value

1.配置pillar

使用pillar之前,需要设置pillar

1)vim /etc/salt/master

找pillar_roots

 

修改成上面这样的.

然后创建目录:

mkdir -p /srv/pillar

修改完成master的配置文件后,需要重启master

2.具体使用

如果有这样的需求,unbuntu上装apache,centos装apache因为两个系统上命令不一样.这样如何设置sls呢

可以通过pillar来解决.

根据上面的配置cd /srv/pillar下面.

vim apache.sls 内容如下:

{% if grains["os"] == "CentOS" %}
apache: httpd
{% elif grains["os"] == "Debian" %}
apache: apache2
{% endif %}

配置好内容后,然后需要再写top.sls文件的.

base:
  "linux-node2.example.com":
    - apache

这样就可以再状态文件sls文件里具体引用了.

回到我们一开始的vim /srv/salt/web/apache.sls 

文件,然后重新编辑内容:

apache-install:
  pkg.installed:
    - name: {{ pillar["apache"]}}

apache-service:
  service.running:
    - name: {{ pillar["apache"]}}
    - enable: True

然后执行状态文件的.

 salt "*" state.highstate
原文地址:https://www.cnblogs.com/ahliucong/p/10138718.html