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
  • 相关阅读:
    PHP Mysql-插入多条数据
    PHP Mysql-插入数据
    PHP Mysql-创建数据表
    PHP Mysql-创建数据库
    PHP Mysql-连接
    PHP Mysql-简介
    PHP-7
    postgresql 创建函数
    在psql客户端中修改函数
    修改PostgreSQL数据库的默认用户postgres的密码
  • 原文地址:https://www.cnblogs.com/hanqian/p/6790101.html
Copyright © 2011-2022 走看看