saltstack3 pillar模塊


pillar模塊:


特點:給minion指定它想要的數據,給哪個minion指定,哪個minion能看到,,其他minion看不到,安全性得到了保障,在master端設置的


pillar應用場景:

1、敏感數據

比如給某一個配置文件設置個密碼,這個密碼只希望某個minion能看到

2、使用pillar處理變量的差異性

3、做配置管理時用pillar定義一些變量參數

4、定位主機




[root@linux-node1 ~]# salt '*' pillar.items

linux-node2:

----------

linux-node1:

----------

pillar模塊默認是關閉的,需要在master配置文件打開:


[root@linux-node1 ~]# vim /etc/salt/master

pillar_opts: True

##保存退出,重啓salt-master


[root@linux-node1 ~]# salt 'linux-node1' pillar.items

linux-node1:

----------

master:

----------

__role:

master

auth_mode:

1

auto_accept:

False

cache_sreqs:

True

cachedir:

/var/cache/salt/master

.........skip......................



下面我們學習怎麼定義pillar的數據:

[root@linux-node1 ~]# vim /etc/salt/master

pillar_roots:

base:

- /srv/pillar

pillar_opts: False

##保存退出,創建目錄,重啓salt-master

mkdir /srv/pillar

/etc/init.d/salt-master restart


[root@linux-node1 ~]# vim /srv/pillar/apache.sls    ##jinjia模板

{% if grains['os'] == 'CentOS' %}

apache: httpd

{% elif grains['os'] == 'Debian' %}

apache: apache2

{% endif %}

單獨運行上面語句沒有任何作用,,下面指定哪個minion能看到apache.sls,進行調用

[root@linux-node1 ~]# vim /srv/pillar/top.sls     ##這是pillar的top.sls,和上面的top.sls沒有任何關係

base:

'*':

- apache

##讓所有的機器都能看到apache的pillar

[root@linux-node1 ~]# salt '*' pillar.items

linux-node2:

----------

apache:

httpd

linux-node1:

----------

apache:

httpd

使用pillar時,在修改完配置文件後,要刷新下使之生效纔可以使用,不刷新可以獲取到,但不可以用

[root@linux-node1 ~]# salt -I 'apache:httpd' test.ping    ##-I是pillar的縮寫

linux-node2:

Minion did not return. [No response]

linux-node1:

Minion did not return. [No response]

[root@linux-node1 ~]# salt '*' saltutil.refresh_pillar

linux-node2:

True

linux-node1:

True

[root@linux-node1 ~]# salt -I 'apache:httpd' test.ping

linux-node1:

True

linux-node2:

True



grains和pillar的區別:

名稱存儲位置數據類型數據採集更新方式應用
Grainsminion端靜態數據minion啓動時收集,也可以使用
saltutil.sync_grains進行刷新
存儲minion基本數據。比如用於
匹配minion,自身數據可以用來
做資產管理等。
Pillarmaster端動態數據在master端定義,指定給對應的
minion。
可以使用saltutil.sync_pillar刷新。
存儲master指定的數據,只有指
定的minion可以看到,用於敏感
數據保存。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章