zoukankan      html  css  js  c++  java
  • 自定义模块和grains

    一、自定义模块

    saltstack有很多模块,模块的源码文件是在salt项目的:salt/modules.py;

    salt linux-node2-computer sys.doc   查看有哪些module

    这里file_roots还是/srv/salt/base目录,自定义模块步骤如下:

    #新建自定义模块的目录_modules和模块文件
    [root@linux-node1 _modules]# pwd
    /srv/salt/base/_modules
    [root@linux-node1 _modules]# cat f1.py 
    def charles():
        return 'date'
    
    #将模块同步到指定客户端
    salt '*' saltutil.sync_all
    
    
    #使用
    [root@linux-node1 _modules]# salt '*' f1.charles
    linux-node2-computer:
        date
    linux-node1.oldboyedu.com:
        date
    

    二、自定义grains

    自定义grains也是使用脚本实现的,grains的源码文件是salt项目的salt/grains.py

    自定义grains步骤如下:

    #新建_grains目录,并创建grains文件
    [root@linux-node1 base]# cd _grains/
    [root@linux-node1 _grains]# ls
    file.py
    [root@linux-node1 _grains]# cat file.py 
    import os
    def file():
        grains={}
        file = os.popen('ulimit -n').read()
        grains['file']=file
        return grains
    
    
    #同步grains到客户端
    salt '*' saltutil.sync_all
    
    
    #运行
    root@linux-node1 _grains]# salt '*' grains.item file
    linux-node2-computer:
        ----------
        file:
            1024
    linux-node1.oldboyedu.com:
        ----------
        file:
            8192
    

    一个grains文件中可以定义多个grains item

    [root@linux-node1 _grains]# vim g1.py
    
    def g_func():
        grains = {}
        grains['charles'] = 'charles'
        grains['qq'] = 'QQ'
        return grains
    
    
    [root@linux-node1 _grains]# salt '*' grains.item charles
    linux-node2-computer:
        ----------
        charles:
            5
    linux-node1.oldboyedu.com:
        ----------
        charles:
            charles
    [root@linux-node1 _grains]# salt '*' grains.item qq
    linux-node2-computer:
        ----------
        qq:
            QQ
    linux-node1.oldboyedu.com:
        ----------
        qq:
            QQ
    

      

  • 相关阅读:
    <自动化测试方案_5>第五章、代码单元自动化测试
    <自动化测试方案_4>第四章、选型标准
    <自动化测试方案_3>第三章、怎么样实现自动化测试?(How)
    Jmeter Beanshell 用法
    Jmeter调用自定义jar包
    JMeter中文返回乱码
    项目如何提测?
    JMeter 接口测试基础
    JMeter接口测试_参数化
    mac /linux vi/vim永久显示行号开启高亮模式
  • 原文地址:https://www.cnblogs.com/cqq-20151202/p/6962640.html
Copyright © 2011-2022 走看看