salt 是服务端远程批量操作多台客户端需要使用到的命令,常见用法如下:

salt '*'                             # 指定对所有客户端主机进行操作
salt 'minion01' # 指定对单台客户端主机进行操作
salt 'minion0[12]' # 指定对多台客户端主机进行操作,支持通配
salt 'minion0*' # 指定对多台客户端主机进行操作,支持通配
salt -E 'minion0(1|2)' # 以正则(pcre)的形式指定对多台客户端主机进行操作
salt -L 'minion01, minion02, ...' # 以列表(list)的形式指定对多台客户端主机进行操作,中间用逗号隔开
salt -G 'os:CentOS' # 根据Grains信息对符合条件的客户端主机进行操作
salt -I 'role:nginx' # 根据Pillar信息对符合条件的客户端主机进行操作
salt -C 'E@^m or G@os:CentOS' # 以混合(compound)模式进行匹配,这里 E@^m 相当于 -E '^m', G@os:CentOS 相当于 -G 'os:CentOS'
salt -N <group_name> # 根据组名对一组主机进行操作,需要先在 /etc/salt/master 定义 nodegroups

常用的执行模块:

[root@localhost ~]$ salt '*' test.ping                              # test.ping 用于测试是否存活
[root@localhost ~]$ salt '*' pkg.install httpd # pkg.install 用于远程安装软件
[root@localhost ~]$ salt '*' cmd.run 'hostname' # cmd.run 用于远程执行命令,这里表示远程执行hostname命令
[root@localhost ~]$ salt '*' cmd.script salt://1.sh # cmd.script 用于远程执行脚本,这里表示远程执行1.sh脚本,这个脚本放在master的/srv/salt/1.sh路径下
[root@localhost ~]$ salt '*' cp.get_file salt://1.txt /tmp/1.txt # cp.get_file 用于远程拷贝文件,这里表示拷贝master的/srv/salt/1.txt文件到远程的/tmp/1.txt文件
[root@localhost ~]$ salt '*' cp.get_dir salt://test /tmp/test # cp.get_dir 用于远程拷贝目录,这里表示拷贝master的/srv/salt/test目录到远程的/tmp/test目录
[root@localhost ~]$ salt '192.168.216.130' sys.doc            # 查看所有模块的帮助文档
[root@localhost ~]$ salt '192.168.216.130' sys.doc cmd # 查看指定模块的帮助文档
[root@localhost ~]$ salt '192.168.216.130' sys.doc cmd.run # 查看指定模块下的具体方法的帮助文档

也可以指定输出格式:

[root@localhost ~]$ salt --out=yaml '*' cmd.run 'date'
[root@localhost ~]$ salt --out=grains '*' cmd.run 'date'
[root@localhost ~]$ salt --out=json '*' cmd.run 'date'
其他可选的格式:grains, highstate, json, key, overstatestage, pprint, raw, txt, yaml

SaltStack salt 命令的更多相关文章

  1. saltstack自动化运维系列④之saltstack的命令返回结果mysql数据库写入

    saltstack自动化运维系列④之saltstack的命令返回结果mysql数据库写入salt的返回值写入mysql数据库:可参考:https://docs.saltstack.com/en/lat ...

  2. 【漏洞预警】SaltStack远程命令执行漏洞 /tmp/salt-minions

    前言:   2020年5月3日,阿里云应急响应中心监测到近日国外某安全团队披露了SaltStack存在认证绕过致命令执行漏洞以及目录遍历漏洞.在多个微信群和QQ群已经有群友反映中招,请马上修复. 以下 ...

  3. Saltstack 安装 命令

    主机规划 10.0.0.21 master 10.0.0.22 minion 10.0.0.23 minion 基础环境 [root@10.0.0.21 ~]# cat /etc/redhat-rel ...

  4. salt命令

    salt-key -L list在master上所有收到的公钥连接请求 -A accept所有pending的请求. -D 删除所有 在minion上启动服务后,几十秒后会在/etc/salt/pki ...

  5. saltstack 入门命令

    master服务启动 CentOS 7 (Debian.OpenSuse.Fedora) systemctl start salt-master /etc/init.d/salt-master sta ...

  6. saltstack/salt的state.sls的使用

    SLS(代表SaLt State文件)是Salt State系统的核心.SLS描述了系统的目标状态,由格式简单的数据构成.这经常被称作配置管理 首先,在master上面定义salt的主目录,默认是在/ ...

  7. saltstack常用命令

    Salt通过公钥加密和认证minions.想要让minion从master端接受命令,minions的密钥需要被master接受 salt-key -L #列出master上的密钥; salt-key ...

  8. [SaltStack] Salt高可用和负载均衡部署

    Saltstack HA部署 Salt官网是有HA/Rebalance/failover解决方案的, 但版本必须是2014.7, 目前该版本还没有release, 从官网下载的源码包安装使用测试起来一 ...

  9. Windows 2003上 SaltStack/Salt 和 psutil 可能存在的问题及解决

    今天把salt安装在windows 2003上,发现无法启动,随之而来的是一个有一个的坑,让我们一起逐个排查. 问题一(salt无法启动) salt无法启动,错误结果如图:

随机推荐

  1. Linux 系统服务注册

    Linux注册系统服务步骤 1.编写服务脚本 2.拷贝到/etc/init.d目录下 3.为服务脚本添加可执行权限   >>chmod a+x xxxd 4.添加到系统服务中        ...

  2. 5、QT分析之网络编程

    原文地址:http://blog.163.com/net_worm/blog/static/127702419201002842553382/ 首先对Windows下的网络编程总结一下: 如果是服务器 ...

  3. Java数组填充和初始化

    Java中,如何填充(一次初始化)数组? 示例 此示例使用Java Util类的Array.fill(arrayname,value)方法和Array.fill(arrayname,starting ...

  4. C语言中 Float 数据结构的存储计算

    1.了解float存储结构 float存储结构请看另一篇文章http://blog.csdn.net/whzhaochao/article/details/12885875 2.float最大值 fl ...

  5. python3 post方式上传文件。

    借助第三方库:Requests 其官网地址:   http://python-requests.org       官网上写的安装方式:http://docs.python-requests.org/ ...

  6. 允许root远程登录Solaris

    注释掉:/etc/default/login文件中CONSOLE=/dev/console

  7. HTML5 Canvas火焰效果 像火球发射一样

    Canvas是HTML5中非常重要而且有用的东西,我们可以在Canvas上绘制任意的元素,就像你制作Flash一样.今天我们就在Canvas上来制作一款火焰发射的效果.就像古代的火球炮一样,而且可以在 ...

  8. 腾讯游戏设计(tgideas.qq.com)回复处CSRF任意换马甲

    http://tgideas.qq.com GET /cgi-bin/comments/sendreply.cgi?iActivId=1&iSubActivId=215722&iPar ...

  9. 114自定义UITableViewCell(扩展知识:为UITableViewCell添加动画效果)

    关键操作: 效果如下: ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UITableViewCo ...

  10. Android开发学习笔记-显示对话框

    private void ShowUpdateDialog() { Log.i("version", "shengji"); AlertDialog.Build ...