首页 > 其他分享 >saltstack的二次开发

saltstack的二次开发

时间:2024-03-21 11:14:22浏览次数:23  
标签:grains minion my master 二次开发 saltstack salt 目录

1.Grains的二次开发

在master上添加Grains,且同步给minion。注意:只能从master同步给minion,而不能从master通过syndic同步给minion。

在master的file_roots目录下建_grains,在_grains目录下写grains的py文件,用return返回就可以拉

复制代码
 vim my_grains.py
def my_grains():
  '''
    My Custom Grains
  '''
  grains = { 'hehe1': 'haha1', 'hehe2': 'haha2' }
  return grains
复制代码

然后在master主机执行同步grains命令

salt '*14' saltutil.sync_grains

此时在minion主机的/var/cache/salt/minion/extmods/grains/下可以看到master中同步过来的my_grains.py文件。

在master执行下面命令可以得到对应的grains值。

salt '*14' grains.item

2.模块的二次开发

 在3006版本以后,安装salt会自动给安装一个给salt使用的python不同于全局的python。这个python的目录为/opt/saltstack/salt/bin/python3,已安装的模块目录在/opt/saltstack/salt/lib/python3.10/site-packages/salt/modules/。

Site-Packages是指存放第三方库的目录。当我们使用pip或者其他工具安装Python库时,默认会将这些库安装到Python的site-packages目录下。site-packages目录位于Python安装目录下的lib子目录中。

编写的模块需要放在root_files下的_modules/下,与grains一样,只能在master给minion,不能master通过syndic给minion

vim /data/salt/sls/base/_modules/my_disk.py 
def list():
  cmd = 'df -h'
  ret = __salt__['cmd.run'](cmd)
  return ret

分发模块

salt '*' saltutil.sync_modules

此时在master可以执行这个模块

salt '*14' my_disk.list 

 

标签:grains,minion,my,master,二次开发,saltstack,salt,目录
From: https://www.cnblogs.com/xiaoxiaomuyuyu/p/18086876

相关文章

  • Revit二次开发之 对象的隐藏与显示
    在revit开发中,我们经常要对特定元素进行演示和隐藏,但是由于隐藏的有多种不同的情况,我们来分析分析不同需要下的隐藏如何操作。1、隔离   通过隐藏和显示,能保证构件在任何区域都无法呈现,其API如下:IsolateCategoriesTemporary  隔离多个类别IsolateCategoryTemporary......
  • 高性能、可扩展、支持二次开发的企业电子招标采购系统源码
    在数字化时代,企业需要借助先进的数字化技术来提高工程管理效率和质量。招投标管理系统作为企业内部业务项目管理的重要应用平台,涵盖了门户管理、立项管理、采购项目管理、采购公告管理、考核管理、报表管理、评审管理、企业管理、采购管理和系统管理等多个方面。该系统以项目为......
  • 高性能、可扩展、支持二次开发的企业电子招标采购系统源码
     在数字化时代,采购管理也正经历着前所未有的变革。全过程数字化采购管理成为了企业追求高效、透明和规范的关键。该系统通过SpringCloud、SpringBoot2、Mybatis等先进技术,打造了从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通过待办消息、招标公告、......
  • UG NX二次开发(C#)-CAM-采用内部函数获取drill操作的进给
    CAM二次开发第一章UGNX二次开发(C#)-CAM-采用内部函数获取drill操作的进给文章目录CAM二次开发1、前言2、在高版本中打开drill加工模板3、读取drill加工操作3.1用NXOpen的FindObject实现3.2、通过Collection集合获取3.3通过选择工序导航器实现(Ufun和NXOpen......
  • UG NX二次开发(C++)-创建样条曲线(二)-UF_MODL_create_spline使用
    系列文章目录第一章、UGNX二次开发(C++)-创建样条曲线(一)-UF_CURVE_create_spline使用第二章、UGNX二次开发(C++)-创建样条曲线(二)-UF_MODL_create_spline使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录第一章、[UGN......
  • Saltstack
    1.1、Salt单个命令执行必Salt底层基于ZeroMQPUB-SUBpattern,Master/Minions通信高效传递及扩展Salt部署安装SaltMaster配置Minion配置Key管理HelloWorld安装SaltCentOS下安装master&minionUbuntu下安装master&minionWindows下安装minion其他操作系统安装......
  • c语言 推箱子小游戏二次开发
    内容来源:CSDN(额………………):https://blog.csdn.net/m0_71832999/article/details/128050830?ops_request_misc=&request_id=&biz_id=102&utm_term=c++推箱子小游戏&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-2-128050830.142v99pc_se......
  • 第一周-软件二次开发
    项目来源本次作业的项目来源于本人在GitHub上面找到的一个简单的酒店管理系统。运行环境Python3.10.7运行结果基础页面图功能样例图查询样例图主要问题程序的主要问题有:不做任何交互也会导致程序退出交互时不清屏,造成查看结果困难录入酒店信息的数据验证出现问......
  • 基于蜘蛛纸牌游戏的二次开发
    摘要:蜘蛛纸牌是一款广为人知的单人纸牌游戏,但在实践中发现了一些存在的缺陷。本文将首先介绍蜘蛛纸牌游戏的规则,然后列举其存在的缺陷,最后提出了针对这些缺陷的二次开发解决方案,旨在提升游戏体验。引言蜘蛛纸牌游戏是一种使用两副牌(共104张扑克牌)进行的单人纸牌游戏,其目标是通......
  • 基于c语言的扫雷系统的二次开发
    原代码扫雷基本流程一、基本思路首先创建二维数组,来表示地图每一个格子要表示的信息:未翻开状态(草地)和已翻开状态(数字)该格子是地雷或者不是地雷(1表示是地雷,0表示不是地雷)使用两个二维数组来表示以上两组状态:第一组二维数组:charshowMap[9][9];表示每个格子的翻开和未翻开状......