前几篇文章已经完成了saltstack的安装、认证,从这篇文章开始学习使用saltstack的远程执行。

1.salt远程执行命令详解
Usage: salt [options] '<target>' <function> [arguments]

[options] :此选项指定以何种方式匹配target。
 : 通配符匹配
 -N: 匹配分组nodegroup
 -E: 正则匹配
 -G:grains匹配
 -I: pillar匹配
 -L: 列表匹配,使用逗号或者空格匹配。
 -S: 使用IP地址匹配

'<target>':匹配minion客户端

①.与minion id有关
id:
 salt '192.168.3.1' test.ping
通配符:
 salt '*1' test.ping
 salt 'node?.xkops.com' test.ping
 salt 'node[1-2].xkops.com' test.ping
 salt 'node[!1].xkops.com' test.ping

*注释:为了实验,此处可以更改minion id为node1.xkops.com和node2.xkops.com,根据自己需要修改。

正则匹配:
 salt -E '(node1|node2).xkops.com' test.ping

②.与minion id无关
 salt -G 'os:CentOs' test.ping
 salt -S '192.168.3.0/24' test.ping

<function>:
查看系统支持的模块
[root@node1 ~]# salt '192.168.3.1' sys.list_modules
查看某一模块所支持的方法
[root@node1 ~]# salt '192.168.3.1' sys.list_functions test
查看某一模块的用法
[root@node1 ~]# salt '192.168.3.1' sys.doc test

2.常用的模块及方法
test模块(test.ping)
用法:
salt '*' test.ping

cmd模块(cmd.run)
用法:
salt '*' cmd.run "ls -l | awk '/foo/{print \$2}'"

file模块(file.copy)
用法:
salt '*' file.copy /path/to/src /path/to/dst --文件
salt '*' file.copy /path/to/src_dir /path/to/dst_dir recurse=True --目录
salt '*' file.copy /path/to/src_dir /path/to/dst_dir recurse=True remove_existing=True --目录,若存在则覆盖

cp模块(cp.get_file)
用法:
salt '*' cp.get_file salt://path/to/file /minion/dest

salt '*' cp.get_dir salt://path/to/dir /minion/dest

user模块(user.add)
用法:
salt '*' user.add name <uid> <gid> <groups> <home> <shell>

saltstack之(四)远程执行及常用模块的更多相关文章

  1. python全栈开发中级班全程笔记(第二模块、第四章)(常用模块导入)

    python全栈开发笔记第二模块 第四章 :常用模块(第二部分)     一.os 模块的 详解 1.os.getcwd()    :得到当前工作目录,即当前python解释器所在目录路径 impor ...

  2. SaltStack系列(二)之常用模块

    一.saltstack的内置模块汇总 acl,    aliases,    alternatives,    apache,    archive,    artifactory,    block ...

  3. 第四篇: Ansible 常用模块使用

    一. command | shell 模块 该模块为:执行命令模块 (由于命令模块较为强大,可根据自身对操作系统的熟练程度而增加.所以这里不再介绍类似可以实现同功能模块,比如service模块,需要重 ...

  4. SaltStack入门篇(四)之深入理解SaltStack远程执行

    1.目标 2.执行模块 3.返回 salt ‘*’ cmd.run ‘uptime’ 命令 目标 执行模块 执行模块参数 1.SlatStack远程执行–目标 执行目标:https://docs.sa ...

  5. saltstack常用模块

    介绍一些常用的saltstack模块,更多模块参考官方网站 1.跟安装包相关的模块:salt.states.pkg salt.states.pkg.downloaded(name, version=N ...

  6. 006-saltstack之远程执行

    1.目标 2.执行模块 3.返回 salt ‘*’ cmd.run ‘uptime’ 命令 目标 执行模块 执行模块参数 1.SlatStack远程执行–目标 执行目标:https://docs.sa ...

  7. Python之路 - Socket实现远程执行命令

    Python之路 - Socket实现远程执行命令 os模块实现

  8. Saltstack远程执行(四)

    Saltstack远程执行 语法例:salt '*' cmd.run 'w' -  命令:salt -  目标:'*' -  模块:cmd.run,自带150+模块,也可以自己写模块 -  返回:执行 ...

  9. Saltstack 安装与常用模块

    一.介绍 saltstack是基于C/S服务模式,在该架构中,服务器端叫做Master,客户端叫做Minion.传统的C/S模式我们这样理解,客户端发送请求给服务器端,服务器端接受到来自客户端的请求并 ...

随机推荐

  1. 基于HTML5实现的超酷摄像头(HTML5 webcam)拍照功能 - photobooth.js

    在线演示 WebRTC可能是明年最受关注的HTML5标准了,Mozilla为此开发了一套帮助你控制硬件的API,例如,摄像头,麦克风,或者是加速表.你可以不依赖其它的插件来调用你需要的本机硬件设备. ...

  2. NSCharacterSet 简单用法

    NSCharacterSet 简单用法 NSCharacterSet其实是许多字符或者数字或者符号的组合,在网络处理的时候会用到 NSMutableCharacterSet *base = [NSMu ...

  3. hdu Knight Moves

    这道题实到bfs的题目,很简单,不过搜索的方向变成8个而已,对于不会下象棋的会有点晕. #include <iostream> #include <stdio.h> #incl ...

  4. javascript获取随机数的几种方式

    //获取0-num的随机数 function randomNum(num){ return Math.floor(Math.random()*num); } //获取start-end的随机数 fun ...

  5. opengl画圆

    通过这个例子可以更加深刻的了解割圆术的原理,明白如何的化曲为直,且看代码: #include <windows.h> //#include <GLUT/glut.h> #inc ...

  6. 如何搭建redis扩展-Yii中文网

    原文链接: 如何搭建redis扩展http://www.yii-china.com/post/detail/43.html 安装redis扩展: 1.通过composer进行安装,到项目根目录cmd运 ...

  7. 《你不知道的JavaScript》读书笔记(二)词法作用域

    JavaScript 采用的是 词法作用域 的工作模型. 定义 词法化:大部分标准语言编译器的第一个工作阶段叫词法化(单词化),这个过程会对源代码中的字符进行检查,如果是有状态的解析过程,还会赋予单词 ...

  8. 数据库连接jdbc理解

    1.突然在想,既然数据库中有很多数据库,不同的database,在使用数据库时候,要指定使用的哪个数据库,用use database命令,指定特定数据库. 2.那java代码中,直接jdbc,直接st ...

  9. mysql 关于日期时间的字段类型

    mysql日期和时间类型 mysql有5种表示时间值的日期和时间类型,分别为.DATE,TIME,YEAR,DATETIME,TIMESTAMP. TIMESTAMP类型有专有的自动更新特性, TIM ...

  10. cookie 操作

    //创建并赋值 重新赋值也是这样操作 document.cookie="userId=828"; document.cookie="userName=hulk" ...