saltstack數據系統 數據系統Grains 1、Grains是SaltStack收集的有關底層管理系統的靜態信息。包括操作系統版本、功能變數名稱、IP地址、記憶體、內核、CPU、操作系統類型以及許多其他系統屬性。Minion 收集的信息,可以作為Master端匹配目標。2、如果需要自定義grains,需 ...
saltstack數據系統
數據系統Grains
1、Grains
是SaltStack
收集的有關底層管理系統的靜態信息。包括操作系統版本、功能變數名稱、IP地址、記憶體、內核、CPU、操作系統類型以及許多其他系統屬性。Minion
收集的信息,可以作為Master
端匹配目標。
2、如果需要自定義grains
,需要添加到Salt Minion
的/etc/salt/grains
文件中(配置文件中定義的預設路徑),也可以直接寫在配置文件/etc/salt/minion
中
1)資產管理,信息查詢
#列出所有可用的grains狀態模塊 [root@salt-master ~]# salt '*' grains.ls #列印所有狀態信息 [root@salt-master ~]# salt '*' grains.items #列出每台minion的本地IP地址 [root@salt-master ~]# salt '*' grains.item fqdn_ip4 #列出每台minion的操作系統 [root@salt-master ~]# salt '*' grains.item os
2)用於匹配
[root@salt-master ~]# salt -G 'os:CentOS' test.ping [root@salt-master ~]# salt -G 'localhost:salt-minion01' test.ping
3)minion
自定義grains
#1.修改配置文件,自定義grains [root@salt-minion01 ~]# vim /etc/salt/minion grains: roles: - webserver - memcache ipaddr: - 192.168.1.32 #2.重啟minion [root@salt-minion01 ~]# systemctl restart salt-minion #3.master上測試 [root@salt-master ~]# salt -G 'ipaddr:192.168.1.32' test.ping salt-minion01: True
4)Grains
優先順序問題
1、Grains預設核心信息 2、自定義寫在/etc/salt/grains文件中的 3、自定義寫在/etc/salt/minion文件中的
數據系統Pillar
Pillar
是動態的,Pillar
存儲在master
上,提供給minion
。Pillar
主要記錄一些加密信息,可以確保這些敏感數據不被其他minion
看到。比如:軟體版本號、用戶名密碼等。存儲格式都是YAML
格式
1)在Master
端定義Pillar
[root@salt-master ~]# vim /etc/salt/master pillar_roots: base: - /srv/pillar [root@salt-master ~]# mkdir /srv/pillar [root@salt-master ~]# cat /srv/pillar/zabbix.sls Zabbix_Server: 192.168.1.11 Zabbix_Name: zabbix.examp.com
2)編寫TopFile
指定Minion
端可以使用
[root@salt-master ~]# cat /srv/pillar/top.sls base: 'salt-minion01': - zabbix
3)刷新Pillar
[root@salt-master ~]# salt '*' saltutil.refresh_pillar
4)獲取對應pillar
值
[root@salt-master ~]# salt '*' pillar.items salt-minion01: ---------- Zabbix_Name: zabbix.examp.com Zabbix_Server: 192.168.1.11 salt-minion03: ---------- salt-minion02: ---------- #獲取指定的key [root@salt-master ~]# salt 'salt-minion01' pillar.item Zabbix_Server salt-minion01: ---------- Zabbix_Server: 192.168.1.11
說明:如果Master
更新了新的數值,需要刷新Pillar
到Minion
才可以獲取
Pirrar
與Grains
對比
類型 數據採集方式 應用場景 定義位置
Grains 靜態 minion啟動時收集 數據查詢 目標選擇 配置管理 minion
Pillar 動態 master進行自定義 目標選擇 配置管理 敏感數據 master