前几篇文章已经完成了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. Apache Spark源码走读之8 -- Spark on Yarn

    欢迎转载,转载请注明出处,徽沪一郎. 概要 Hadoop2中的Yarn是一个分布式计算资源的管理平台,由于其有极好的模型抽象,非常有可能成为分布式计算资源管理的事实标准.其主要职责将是分布式计算集群的 ...

  2. php中json_decode()和json_encode()的使用方法

    php中json_decode()和json_encode()的使用方法 作者: 字体:[增加 减小] 类型:转载   json_decode对JSON格式的字符串进行编码而json_encode对变 ...

  3. Aliasing 走样

    Computer Science An Overview _J. Glenn Brookshear _11th Edition Have you ever noticed the weird &quo ...

  4. js 和 jquery 获取页面和滚动条的高度 视口高度文档高度

    js 和 jquery 获取页面和滚动条的高度 //页面位置及窗口大小 function GetPageSize() { var scrW, scrH; if(window.innerHeight & ...

  5. terminal(终端),shell,tty,console(控制台)区别

    原文地址  stackexchange:What is the exact difference between a 'terminal', a 'shell', a 'tty' and a 'con ...

  6. 权限管理:(RBAC)

    一般做正规的权限管理程序基本就是以下M表模式: 例1:在页面显示管理者的权限,并可以修改的管理界面 数据库表如下: 管理界面(附ajax): <body> <?php include ...

  7. PDO知识

    PDO: 一.含义: 数据访问抽象层 二.作用 :通过PDO能够访问其它的数据库 三. 用法: 1.造对象 ①$dsn="mysql:dbname=zz;host=localhost&quo ...

  8. js中!!的作用

    js中!!的作用是: !!一般用来将后面的表达式转换为布尔型的数据(boolean) ===表示类型什么的全部相等(自己写一个if测试一下就好了)!==表示要全部不想等包括类型(一样写一个if)||或 ...

  9. uiwebview的基本使用

    http://blog.csdn.net/daiyelang/article/details/40989389

  10. Linux QtCreator设置mingw编译器生成windows程序

    Qt跨平台,那必须在Linux平台编译一个可以在windows下运行的Qt程序才行,当然还得和QtCreator环境弄在一起才行. 工作环境:Centos 7 yum install qt5-qt* ...