本来转自http://www.cnblogs.com/MacoLee/p/5753640.html  版权归原作者所有 说明 salt '*' sys.list_modules #列出当前版本支持的模块 API原理是通过调用master client模块,实例化一个LocalClient对象,再调用cmd()方法来实现的.以下API实现test.ping的示例:(其他API调用只需要改变cmd即可) import salt.client client = salt.client.LocalCli…
前几篇文章已经完成了saltstack的安装.认证,从这篇文章开始学习使用saltstack的远程执行. 1.salt远程执行命令详解Usage: salt [options] '<target>' <function> [arguments] [options] :此选项指定以何种方式匹配target. : 通配符匹配 -N: 匹配分组nodegroup -E: 正则匹配 -G:grains匹配 -I: pillar匹配 -L: 列表匹配,使用逗号或者空格匹配. -S: 使用IP…
saltstack有3大功能:远程执行,配置管理,云管理 其中远程执行又可分解为:目标,模块,返回  这3个部分. 比如下面语句 [root@master ~]# salt '*' test.ping minion01: True minion02: True [root@master ~]# salt '*' cmd.run 'df -h' minion02: Filesystem Size Used Avail Use% Mounted on /dev/sda3 35G 4.2G 30G 1…
target 就是目标的意思,你要在那台机器上执行此命令或此状态.或者说将此动作或者状态文件推送给谁来执行,让那个minion执行可以进行一些匹配 对于拥有大量机器的环境,如果单独一台台的执行指定minion去执行,反而违saltstack设计的初衷. 它有如下参数可以使用 1. globbing 默认 [root@master scripts]# salt 'minion01' test.ping minion01: True [root@master scripts]# 2. -L,--li…
点击架构师成长之路 架构师成长之路5.2-Saltstack远程执行 配置管理工具: Pupper:1. 采用ruby编程语言:2. 安装环境相对较复杂:3.不支持远程执行,需要FUNC工具配置才可以 Ansible:1.采用python编程语言:2.被红帽收购:3.轻量级:4.基于模块工作的,本身没有批量部署的能力,真正批量部署的是ansible所运行的模块. Saltstack:采用python编程语言,同时提供Rest API方便二次开发以及和其它平台进行集成(目前企业使用率最高) Sal…
一.远程执行命令模块subprocess Python可以使用subprocess下的Popen类中的封装的方法来执行命令 构造方法 popen() 创建popen类的实例化对象 ··· obj = Subprocess.Popen(data,shell=True,stdout=subprocess.PIPE) data 命令内容 shell 开启shell stdout 重定向结果输出管道 * PIPE 将结果转移到当前主进程 stdout.read() 获取命令执行的结果,指定结果后会将执行…
Saltstack远程执行 语法例:salt '*' cmd.run 'w' -  命令:salt -  目标:'*' -  模块:cmd.run,自带150+模块,也可以自己写模块 -  返回:执行后结果返回,Returnners组件 1.指定目标(targeting) 官网文档:https://docs.saltstack.com/en/latest/topics/targeting/index.html 两种定位方法:一种和minion ID有关,一种和monion ID无关 1)mini…
1. 主机规划 远程执行教程文档 https://docs.saltstack.com/en/latest/topics/tutorials/modules.html 所有模块文档 https://docs.saltstack.com/en/latest/ref/modules/all/index.html#all-salt-modules 模块在机器上存在的位置 [root@salt100 modules]# pwd /usr/lib/python2./site-packages/salt/m…
1.目标 2.执行模块 3.返回 salt ‘*’ cmd.run ‘uptime’ 命令 目标 执行模块 执行模块参数 1.SlatStack远程执行–目标 执行目标:https://docs.saltstack.com/en/latest/topics/targeting/index.html#advanced-targeting-methods (1)和Minion ID相关的目标匹配方式 .MinionID匹配 [root@linux-node1 ~]# salt 'linux-node…
写在前面的话 远程执行可以说是我们使用 Saltstack 最为基础的目的.所以在这里专门作为单独的一篇来详细的聊聊. 远程执行命令 示例命令: salt '*' cmd.run 'w' 命令分析: salt 是命令本身,* 是执行目标,cmd.run 是 Saltstack 自带的模块,目前几百个. 其中一个重要的组成就是执行目标,这是我们执行命令的目的.关于目标,一般有两种选择方式: 1. 基于 Minion ID 的选择方式. 2. 基于 Minion 属性的选择方式. 和 Minion…