saltstack 数据系统有两种,Grains pillar
Grains:静态数据 当minion启动收集本地信息(操作系统,内核版本,CPU,内存,硬盘,设备型号等) 只要不重启,这些数据只会收集一次
能干什么呢?
1 资产管理,信息查询
(salt ‘web01‘ grains.items。 salt ‘*‘ grains.item fqdn_ip4 )
2 用于目标选择
(salt -G ‘web01:apache‘ cmd.run ‘/etc/init.d/httpd restart‘)
3 配置管理中使用
举例 :资产管理
停止某一个机器的apache(也可以是指定roles的服务)
1,方法一 从minion配置文件配置(不太推荐,不好管理)
grains:
roles: apache
重启服务
/etc/init.d/salt-minion restar master端: salt ‘*‘ grains.item roles web01: ---------- roles: web02: ---------- roles: apache salt -G ‘roles:apache‘ cmd.run ‘/etc/init.d/httpd stop‘ web02: Stopping httpd: ?[60G[?[0;32m OK ?[0;39m]
2 方法2 创建grains(minion端)(推荐)
vim /etc/salt/grains server: httpd salt ‘*‘ saltutil.sync_grains 刷新(不用重启强制刷新) salt ‘*‘ grains.item server web01: ---------- server: web02: ---------- server:httpd
举例:目标选择