salt常用模块及API
saltstack提供了非常丰富的功能模块,涉及操作系统的基础功能,常用工具支持等,更多模块信息见官网模块介绍:https://docs.saltstack.com/en/latest/ref/modules/all/index.html 当然,也可以通过sys模块列出当前版本支持的模块。命令如下:
#salt '*' sys.list_modules
API的原理是通过调用master client模块,实例化一个LocalClient对象,再调用cmd()方法来实现的,以下是API实现test.ping的示例:
import salt.client
client = salt.client.LocalClient()
ret = client.cmd('*','test.ping')
print ret
其结果以一个标准的Python字典形式的字符串返回,可以通过eval()函数转换成Python的字典类型,方便后续的业务逻辑处理,程序运行结果如下:
{'hudson': True}
-------------
另一例子:
>>> import salt.client
>>> local = salt.client.LocalClient()
>>> local.cmd('*', 'cmd.run', ['whoami'])
其它模块如:
salt '*' archive.gunzip /tmp/sourcefile.txt.gz #支持gunzip、gzip、rar、tar、unrar、unzip等。
salt '*' archive.gzip /tmp/sourcefile.txt
API调用:client.cmd('*','archive.gunzip',['/tmp/sourcefile.txt.gz'])
salt '*' cmd.script salt://script/test.sh #该命令会做两个动作:首先同步test.sh到minion的cache目录(如同步到/var/cache/salt/minion/files/base/script/test.sh);其次运行该test.sh脚本
#将指定被控主机的/etc/hosts文件复制到被控主机本地的salt cache目录(/var/cache/salt/minion/localfiles/)
salt '*' cp.cache_local_file /etc/hosts
#将主服务器file_roots指定位置下的目录复制到被控主机
salt '*' cp.get_dir salt://path/to/dir/ /minion/dest
#将主服务器file_roots指定位置下的文件复制到被控主机
salt '*' cp.get_file salt://path/to/file /minion/dest
#下载URL内容到被控主机指定位置
salt '*' cp.get_url http://www.slashdot.org /tmp/index.html
API调用:client.cmd('hudson','cp.get_file',['salt://path/to/file' , '/minion/dest'])
salt '*'
salt常用模块及API的更多相关文章
- Func常用模块及API
Func常用模块及API Func提供了非常丰富的功能模块,包括: CommandModule(执行命令) CopyFileModule(拷贝文件) CpuModule(CPU信息) DiskModu ...
- Saltstack常用模块及API
Saltstack提供了非常丰富的功能模块,涉及操作系统的基础功能.常用工具支持等,更多模块信息可以查看官网模块介绍.也可以通过sys模块列出当前版本支持的模块. salt '*' sys.list_ ...
- Saltstack系列3:Saltstack常用模块及API
说明 salt '*' sys.list_modules #列出当前版本支持的模块 API原理是通过调用master client模块,实例化一个LocalClient对象,再调用cmd()方法来实现 ...
- Func系列2:常用模块及API
简介 Func提供了非常丰富的功能模块,包括CommandModule(执行命令).CopyFileModule(拷贝文件).CPUModule(CPU信息).DiskModule(磁盘信息).Fil ...
- Ansible常用模块及API
Ansible安装 安装EPEL作为安装Ansible的yum源(CentOS6.4): rpm -Uvh http://ftp.linux.ncsu.edu/pub/epel/6/i386/epel ...
- salt常用模块
salt 常用命令整理 转载:https://www.cnblogs.com/aslongas/p/6964890.html salt 常用命令整理 ***********模块******** ...
- Saltstack 常用的模块及API
Saltstack提供了非常丰富的功能模块,设计操作系统的基础功能,常用工具支持等, 官网模块介绍 http://docs.saltstack.com/ref/modules/all/index.ht ...
- salt常用命令、模块、执行
一.salt常用命令 salt 该命令执行salt的执行模块,通常在master端运行,也是我们最常用到的命令 salt [options] '<target>' <function ...
- ansible api常用模块与参数
###ansibleAPI 常用模块 用于读取yaml,json格式的文件 from ansible.parsing.dataloader import DataLoader #用于管理变量的类,包括 ...
随机推荐
- Spring MVC学习回顾
Spring MVC是现在新项目中使用最多的MVC框架,超越了Structs2成为MVC框架的首选.今天抽时间看了4.2.x的官网翻译文档及相关代码,博客,将印象比较深的几点记录一下. 一.应用Spr ...
- RAC7——vip的理解
VIP特点: 1 VIP是在clusterware安装最后阶段,通过脚本VIPCA创建的: 2 VIP作为一个Nodeapps类型的CRS Resource注册到OCR中,并由CRS维护状态: 3 V ...
- MySQL中UNSIGNED和ZEROFILL的介绍
UNSIGNED: 将数字类型无符号化,这与C和C++这些程序语言的unsigned含义相同. INT的类型范围-2 147 483 648~2 147 483 647 INT UNSIGNED范围0 ...
- async(await)知识点
async 函数是 Generator 函数的语法糖. async 函数对 Generator 函数的改进体现在: async 内置执行器. Generator 函数的执行必须靠执行器,需要调用 ne ...
- 【appium】根据UIAutomator定位元素
text属性的方法 driver.find_element_by_android_uiautomator('new UiSelector().text("Custom View") ...
- press_keycode API 参数查询
用法 driver.press_ keycode(‘4’) 参数查找url:https://www.cnblogs.com/larack/p/4223465.html
- [html] 回到页首
[转]本文来自:最简单最强大的插件框架(Net 2.0+) http://www.cnblogs.com/baihmpgy/p/3305215.html <!doctype html> & ...
- Mysql 锁技术要点【转载】
MyISAM和InnoDB的区别 MySQL默认采用的是MyISAM. MyISAM不支持事务,而InnoDB支持.InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事 ...
- 基于nginx和tengine的tcp反向代理,负载均衡 安装和配置
先下载nginx_tcp_proxy_module模块. wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master ...
- 第1课 学习 C++ 的意义
1. 回顾历史 (1)UNIX操作系统诞生之初是直接用汇编语言写成的.随着UNIX的发展,汇编语言的开发效率成为一个瓶劲. (2)1971年,Ken Thompson和Denis Ritchie对B ...