pillar

pillar和grains不一样,是在server上定义的,并且是针对minion定义的一些信息。像一些比较重要的数据(密码)可以存在pillar里,还可以定义变量等。


查看指定minion的pillar值(我测试的版本为空):

salt 'client.wyp.com' pillar.items


server上配置自定义pillar

vim  /etc/salt/mster

找到如下配置:

pillar_roots:

  base:   #空两个空格

    - /srv/pillar  #继续空两个空格,yaml格式。固定写法

去掉前面的#号

mkdir /srv/pillar

vi /srv/pillar/test.sls  //内容如下,自定义一些pillar信息,模块名不能为数字开头。

conf: /etc/123.conf


vi /srv/pillar/top.sls  //内容如下,总入口配置文件,否则上面的配置不生效。

base:

  'client.wyp.com':     #客户端列表

    - test              #加载test


重启master

/etc/init.d/salt-master restart


当更改完pillar配置文件后,我们可以通过刷新pillar配置来获取新的pillar状态:不需要重启

salt ‘*’ saltutil.refresh_pillar


验证:

salt  '*' pillar.items

salt  '*' pillar.item test


pillar同样可以用来作为salt的匹配对象。比如

salt  -I 'conf:/etc/123.conf'  test.ping