前几篇文章已经完成了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. 用edtftpj实现Java FTP客户端工具

    edtftpj是一个java FTP工具包,使用非常方便,感觉比Apache的好用,但Apache更灵活.edtftpj有多种版本,分别是java..net和js版本.对于Java版的有一个免费版本. ...

  2. Marching Cube

    GPU-Marching-Cubes An Implementation of the Marching Cubes[1] Algorithm Marching Cubes Matlab The St ...

  3. 关于Stock Quant与生产内容的理解

    Stock Quant对象是8.0中新增加的内容,主要用于核算库存,与Stock Move相关联,没个Stock Move动作都会关联一个或者多个Stock Quant对象.库存移动的过程实际上就是将 ...

  4. hdu Train Problem I

    这道题是道简单的栈模拟题,只要按照真实情况用栈进行模拟即可: #include<stdio.h> #include<string.h> #include<stack> ...

  5. hdu Load Balancing

    这道题题目表示看不懂,如果哪位明白题意的,还望在评论里留个言指导一下!

  6. 在client类中设置访问属性 address,business和individua

    php 5.4中的traits,是新引入的特性,中文还真不知道如何准确翻译好.其实际的目的, 是为了有的场合想用多继承,但PHP又没多继承 ,于是就发明了这样的一个东西. Traits可以理解为一组能 ...

  7. OpenSSL使用方法

    生成CA (勾选Generate Self Signed Certificate)openssl req -nodes -x509 -sha256 -newkey rsa:4096 -keyout & ...

  8. Laptop Issue Letter (读取Excel中指定内容,然后生成新的Excel文件)

    $xl = New-Object -ComObject "Excel.Application" $cmdbwb = $xl.Workbooks.Open("F:\Ivan ...

  9. PHP 开发 APP 接口 学习笔记与总结 - JSON 方式封装通信接口

    1.通信数据的标准格式 ( JSON ),包括: code:状态码(200,400等) message:提示信息(例如:数据返回成功.邮箱格式错误等) data:返回数据 2.JSON 方式封装通信接 ...

  10. python 操作excel 使用笔记

    写入excel, 保存的过程中需要注意,保存格式xls后缀,如果用xlsx会报错 def set_style(name,height,bold=False): """&q ...