Grains应用场景1——信息查询(用于查询minion端的IP信息、FQDN信息等)
首先看看SaltStack默认支持的Granis有哪些,使用以下命令:
1 | salt '*' grains.ls |
如果需要看到每项的值怎么办呢?执行以下命令即可
1 | salt '*' grains.items |
执行后可以看到每一个item都取到了值
如果需要对单项item取值的话,只需要指定那项item即可。如要取得所有minion端的IP,执行以下命令:
1 | [root@ns-master-c01 salt]# salt '*' grains.item ipv4 |
2 | ns-master-c01.novalocal: |
3 | ---------- |
4 | ipv4: |
5 | - 127.0.0.1 |
6 | - 172.16.0.21 |
Grains应用场景2——匹配minion(如想要在系统为CentOS的minion中执行一条命令)
1 | salt -G os:CentOS cmd.run 'w' #-G是指使用Grains来进行匹配,os是Grains众多item中的一项 |
自定义Grains的Item
Grains除了自带一些item外,还可以自定义需要的item。比如我们可以给部分minion定义一个Nginx的item作为标签,然后对含有这些标签的minion进行Nginx的安装。步骤如下:
1、编辑minion配置文件,找到grains开头的内容,取消注释,增加需要的内容
1 | grains: #取消这些行的注释 |
2 | roles: |
3 | - webserver #系统默认,这里保留用于参考 |
4 | - memcache #同上 |
5 | - nginx #自定义一个nginx标签 |
3、进行一个匹配测试,注意这里salt不需要再用'*'来指定minion
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2018 群英 版权所有 茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号-36 粤公网安备 44090202000006号 粤工商备P091701000595