前几篇文章已经完成了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. ARC指南2 - ARC的开启和禁止

    要想将非ARC的代码转换为ARC的代码,大概有2种方式: 1.使用Xcode的自动转换工具 2.手动设置某些文件支持ARC 一.Xcode的自动转换工具 Xcode带了一个自动转换工具,可以将旧的源代 ...

  2. virsh命令

    查看虚拟机: [root@super67 ~]# virsh list Id    Name                           State --------------------- ...

  3. 什么情况下include_path不起作用?

    include_path是怎么起作用的? 如果有多个include_path顺序是怎么样的? 什么情况下include_path不起作用? 今天, 我就全面的介绍下这个问题, 先从一个例子开始吧. 如 ...

  4. HttpRequestDeviceUtils

    import javax.servlet.http.HttpServletRequest;public class HttpRequestDeviceUtils { /**Wap网关Via头信息中特有 ...

  5. 【原】Windows下Nexus搭建Maven私服

    一.Maven安装 详见Java开发环境搭建 二.Nexus安装 2.1.下载 地址:http://www.sonatype.org/nexus/go/ 选择OSS(ZIP)版本 2.2.安装 将安装 ...

  6. emacs notepad notepad++ 撤销比较

    以前使用编辑器都是直接上手,未读过什么的文档了解.所谓撤销只是使用,也不了解究竟撤销到何处,阅读了emacs的文档才知道有许多区别呢. 输入this is a pen,然后一个个字符地删除到this ...

  7. RDBMS vs. NoSQL 合作还是竞争

    欢迎转载,转载请注明出处,徽沪一郎. 由于近期手头的工作和数据库的选型相关,纠结于是否使用一款NoSQL数据库来替换已有的MySQL数据库.在这个过程中随着学习研究的深入,对于二者的异同有了一些初步的 ...

  8. mysql没有delete操作,那是delete from操作,

    1.mysql没有delete操作,那是delete from操作, 2.DELETE FROM table_name [WHERE Clause]

  9. 如何开启mysql计划事件

    如何开启mysql计划事件 (2012-07-26 12:21:23) 转载▼ 标签: mysql 事件计划 it 分类: MySQL 首先在sql中查询计划事件的状态:SHOW VARIABLES ...

  10. 怎么样打印加密PDF文件

    自然是解密后再打印.解密的方法,在linux下执行: pdf2ps xxx.pdf ps2pdf xxx.ps 参考资料 http://www.cyberciti.biz/faq/removing-p ...