多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
pillar数据通grains相似,不同之处是pillar数据可以定义为动态的。给特定的minion指定特定的数据,只有指定minion自己能看到自己的数据。 特定场景: 1)可以在敏感数据中使用(因为只有每个minion自己看到自己的pillar) 2) 任何的变量,都可以通过pillar来指定(当多台机器,配置文件不一样,可以用pillar指定) 一) 1、修改master的配置文件 pillar_roots: base: - /srv/pillar [admin@master /srv/salt/_grains ]$ sudo mkdir /srv/pillar [admin@master /srv/salt/_grains ]$ sudo systemctl restart salt-master 2、编写一个pillar的sls文件 [admin@master /srv/pillar/web ]$ cat apache.sls {% if grains['os'] == 'CentOS' %} apache: httpd {% elif grains['os'] == 'Debian' %} apache: apache2 {% endif %} 3、编写一个top.sls文件 [admin@master /srv/pillar ]$ sudo vim top.sls base: 'node2.51yuki.cn': - web.apache ~ 4、刷新 [admin@master /srv ]$ sudo salt '*' saltutil.refresh_pillar node2.51yuki.cn: True node3.51yuki.cn: True 查看 [admin@master /srv ]$ sudo salt '*' pillar.items apache node2.51yuki.cn: ---------- apache: httpd node3.51yuki.cn: ---------- apache: 使用场景 1) 匹配目录 [admin@master /srv ]$ sudo salt -I 'apache:httpd' cmd.run 'w' node2.51yuki.cn: 18:46:05 up 1 day, 6:37, 1 user, load average: 0.00, 0.01, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT admin pts/0 10.2.11.176 09:48 44:13 0.09s 0.09s -bash