salt-stack的数据系统Grains

Grains: 静态数据 当Minion启动的时候收集的Minion本地的相关信息(操作系统版本,内核版本,cpu,内存,硬盘)

作用:资产管理、信息查询、目标选择、配置管理中使用

[root@salt-master ~]# salt 'salt-master' grains.ls     //列出所有的grains的key

[root@salt-master ~]# salt 'salt-master' grains.items     //显示所有的item信息,也是资产信息

[root@salt-master ~]# salt -G 'os:CentOS' cmd.run 'echo test'    //使用grains进行匹配

salt-master:
    test
salt-minion:
    test


例1、自定义grains

[root@salt-minion ~]# vim /etc/salt/grains      //每次minion会读取该文件,格式为键值对

cloud: openstack

[root@salt-minion ~]# salt '*' saltutil.sync_grains     //刷新Grains ,新添加自定义的后需要刷新才能读取

[root@salt-master ~]#  salt '*' grains.item cloud
salt-minion:
    ----------
    cloud:
        openstack
salt-master:
    ----------
    cloud:

  例2、开写一个python脚本,返回一个字典

[root@salt-master /srv/salt]# mkdir _grains   //自定开发的grains存放路径

[root@salt-master /srv/salt]#cd _grains  

[root@salt-master /srv/salt]# cat my_grains.py 
#!/usr/bin/env python
#coding=utf-8

def my_grains():
    #初始化一个字典
    grains = {}
    #设置字典中的key-value
    grains['iaas'] = 'openstack'
    grains['pass'] = 'aliyun'
    return grains

[root@salt-master ~]# salt '*' saltutil.sync_grains     //刷新,将文件推送到minion上
salt-master:
    - grains.my_grains
salt-minion:
    - grains.my_grains

[root@salt-minion salt]# pwd        //存放master推送过来的grains
/var/cache/salt

Grains优先级:
1)系统自带
2)grains文件写的
3)minion配置文件写的
4)自己写的

  

转载于:https://www.cnblogs.com/liangyuntao-ts/p/11050744.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值