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
    

      

  • 相关阅读:
    C语言打印记事本内搜索字符串所在行信息
    原创:C语言打开、下载、删除网页,统计网页字符个数
    JAVA GUI编程学习笔记目录
    13.JAVA之GUI编程将程序打包jar
    12.JAVA之GUI编程打开与保存文件
    11.JAVA之GUI编程菜单
    10.JAVA之GUI编程弹出对话框Dialog
    php中的一些不常见的问题foreach/in_array[开发篇]
    微软职位内部推荐-Senior SDE
    微软职位内部推荐-SDE II
  • 原文地址:https://www.cnblogs.com/cqq-20151202/p/6962640.html
Copyright © 2011-2022 走看看