SaltStack grains

GrainsPillar的用途

 

    Grains : 用于存储minion的基本数据信息

 

    Pillar : 用于存储master分配给minion的数据信息。

 

GrainsPillar的存储区域

 

    Grains : 元数据存储在minion

 

    Pillar : 元数据存储在master端。

 

GrainsPillar的更新方式

 

    Grains : minion启动时进行更新

 

    Pillar : 元数据存储在master使用 saltutil.refresh_pillar进行刷新效率更高更为灵活。


当minion启动的时候,将主机所有的信息记录并保存下来

可以用来做匹配,区分不同的机器

如果minion没有重启,grains收集的内容将不会变化

 

应用场景:

对主机进行匹配,区分不同的机器

配置管理使用,通过ip地址来区分

对主机修改主机名

收集主机的所有基本信息

查看minion端grains的帮助信息

[root@node229 ~]# salt '192.168.2.220' sys.doc grains

 

 显示minion端grains的所有方法:

[root@node229 ~]# salt 192.168.2.220 sys.list_functions grains

192.168.2.220:
    - grains.append
    - grains.delval
    - grains.fetch
    - grains.filter_by
    - grains.get
    - grains.get_or_set_hash
    - grains.has_value
    - grains.item
    - grains.items
    - grains.ls
    - grains.remove
    - grains.set
    - grains.setval
    - grains.setvals

显示minion端所有grains的内容:

[root@node110 salt]# salt 'minion.saltstack.com'grains.items

minion.saltstack.com:

    ----------

    SSDs:

   biosreleasedate:

        05/20/2014

    biosversion:

        6.00

    cpu_flags:

        - fpu

 

过滤显示的内容

[root@node110 salt]# salt 'minion.saltstack.com'grains.item os

minion.saltstack.com:

    ----------

    os:

        CentOS

[root@node110 salt]# salt 'minion.saltstack.com'grains.get os

minion.saltstack.com:

    CentOS

 

显示grains的键值对

[root@node110 salt]# salt 'minion.saltstack.com'grains.ls    

minion.saltstack.com:

    - SSDs

    -biosreleasedate

 

通过-G来使用以Grains的值来匹配相主机并在主机上执行命令

    -G,--grain         Instead of using shellglobs to evaluate the target

                       use a grain value to identify targets, the syntax for

                       the target is the grain key followed by a

                       globexpression: "os:Arch*"

 

[root@node110 salt]# salt -G 'os:CentOS' test.ping         #匹配所有的主机系统是CentOS的主机并执行命令 test.ping

minion.node2.saltstack.com:

    True

minion.saltstack.com:

    True

定位对应的机器

[root@node110 salt]# salt -G 'fqdn:node120' test.ping

minion.saltstack.com:

    True

 

 

 

 

 

 

 

 

分割线
感谢打赏
江西数库信息技术有限公司
YWSOS.COM 平台代运维解决方案
 评论
 发表评论
姓   名:

Powered by AKCMS