grains #收集设备的所有信息
grains是在minion启动时收集到的一些信息,比如操作系统类型、网卡ip、内核版本、CPU架构等。
使用命令
salt ‘client.wyp.com‘ grains.ls 列出所有的grains项目名字
salt ‘client.wyp.com‘ grains.items 列出所有grains项目以及值
grains的信息并不是动态的,并不会时时变更,它只是在minion启动时收集到的。
我们可以根据grains收集到的一些信息,做配置管理工作。
grains支持自定义信息。
自定义grains
client上:
vim /etc/salt/minion
添加或更改:
grains:
role:
- nginx
env:
- test
或者
vim /etc/salt/grains
添加:
role: nginx #注意空格,前面自定义的名字,后面为值。
env: test
重启minion服务
在server上获取grains:
salt ‘*‘ grains.item role env
salt ‘client.wyp.com‘ grains.get role
grains其实在远程执行命令时,很方便。我们可以按照grains的一些指标来操作。比如把所有的web服务器的grains的role设置为nginx,那这样我们就可以批量对nginx的服务器进行操作了:
salt -G role:nginx cmd.run ‘hostname‘
salt -G os:CentOS cmd.run ‘hostname‘
原文地址:http://llzdwyp.blog.51cto.com/6140981/1759956