zoukankan      html  css  js  c++  java
  • Grains

     grains在每次的minion启动(重启)的时候都会刷新数据,可以用在salt的模块和其他组件中。

    Grains相关命令

    salt '*' sys.list_functions grains   查看grains的操作方法
    salt '*' grains.ls                   查看所有grains key
    salt '*' grains.items                查看所有grains
    salt '*' grains.item os ipv4         查看指定grains
    salt '*' grains.get ipv4:0           获取第一个IP地址
    salt '*' saltutil.sync_grains        刷新grains
    salt '*' sys.reload_modules          重载模块
    salt "*" grains.append aa bb         动态设置grains
    salt "*" grains.setvals "{'a':'b','d':'f'}"
    
    saltutil.sync_grains                    同步Grains
    salt ‘*’ saltutil.sync_all

    salt
    -call --local grains.items minion端使用Grains

    Grains三种定义方式

    /etc/salt/minion     优先级最高(minion端)
    grains:
      OS:
        - Xen
        - 1.1.1.1
      http: nginx
    
    
    /etc/salt/grains     优先级次之(minion端)
      OS:
        - Xen
        - 1.1.1.1
      http: nginx
    
    
    /srv/salt/_grains/    优先级最低(自定义的)
    xxx.py

    自定义Grains

    #!/usr/bin/env python
    import salt.modules.cmdmod
    __salt__ = {
        'cmd.run': salt.modules.cmdmod._run_quiet,
        'cmd.retcode': salt.modules.cmdmod._retcode_quiet,
        'cmd.run_all': salt.modules.cmdmod._run_all_quiet,
    }
    
    def _my_custom_grain():
        my_grain = {'foo': 'bar', 'hello': 'world'}
        return my_grain
    
    def main():
        grains = {}
        grains['my_grains'] = _my_custom_grain()
        grains['npus'] = __pillar__['apache']
        grains['file'] = __salt__['cmd.run']('ls /root')
        return grains
  • 相关阅读:
    JS 数组及函数的应用
    JavaScript 基础知识点
    利用css布局效果图
    css 区块与盒子模型
    JS数组及函数的应用
    JavaScript基础
    近期总结12.30
    层叠样式与盒子模型
    PHP课后小结 2017.12.22
    PHP课后小结 12.20
  • 原文地址:https://www.cnblogs.com/hanqian/p/6790101.html
Copyright © 2011-2022 走看看