saltstack Pillar

Pillar數據是與特定minion關聯的,也就是說每一個minion都只能看到自己的數據,所以Pillar可以用來傳遞敏感數據

定義Pillar數據

master配置文件中定義

Pillar使用與State相似的SLS文件。Pillar文件放在master配置文件中pillar_roots定義的目錄下

vim /etc/salt/master
......
pillar_roots:
  base:
    - /srv/pillar
  ......

Pillar也有top file,也使用相同的匹配方式將數據應用到minion上

vim /srv/pillar/top.sls

base:
  '*':
    - test
    - os_test
vim /srv/pillar/test.sls
info: test_data

vim /srv/pillar/os_test.sls #利用Pillar處理平臺差異
{% if grains['os_family'] == 'RedHat' %}
www_root: /var/www
{% elif grains['os_family'] == 'Debian' %}
www_root: /var/data
{% endif %}

salt '*' pillar.items www_root
salt '*' pillar.items info

定義定時任務


vim /srv/pillar/top.sls
base:
  "*":
      - schedule
      - 
-------------------------------------------   
vim /srv/pillar/schedule.sls
#每秒吧日誌輸出到 /tmp/date.log
schedule:

  test-job:

    function: cmd.run #方法

    seconds: 1 #時間/秒

    args:

      - 'date >> /tmp/date.log' 

在master上修改Pilla文件後,需要用以下命令刷新minion上的數據

 "*" saltutil.refresh_pillar
發佈了54 篇原創文章 · 獲贊 13 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章