zoukankan      html  css  js  c++  java
  • 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)自己写的
    

      

    本文为博主原创文章,转载请标注来源。
  • 相关阅读:
    C#开发规范
    Win32API使用技巧 -- 置顶应用
    Windows开发常用快捷键
    MarkDown简单语法回顾
    样本分布
    复变函数
    set theory
    Oscar的数理统计笔记本
    Oscar的拓扑笔记本
    c语言总结
  • 原文地址:https://www.cnblogs.com/liangyuntao-ts/p/11050744.html
Copyright © 2011-2022 走看看