saltstack远程执行命令.md

时间:2022-09-04 23:49:17

saltstack 支持在master上向client 远程执行命令,并显示命令执行的结果

命令格式:


salt '<操作目标>' <方法> [参数]

示例

  • 示例1 ping检查agent

*:代表所有minion主机;test:模块; ping:test模块的一个方法,这里的单引号也可以使用双引号 [root@stack-master ~]# salt '*' test.ping stack-master: True stack-node01: True stack-node02: True
  • 示例2 执行命令

使用cmd.run远程执行命令,cmd是模块,run是cmd模块的一个方法 [root@stack-master ~]# salt '*' cmd.run "free -m" stack-master: total used free shared buffers cached Mem: 1877 670 1207 0 28 225 -/+ buffers/cache: 415 1461 Swap: 4095 0 4095 stack-node01: total used free shared buffers cached Mem: 1877 377 1499 0 27 223 -/+ buffers/cache: 126 1751 Swap: 4095 0 4095 stack-node02: total used free shared buffers cached Mem: 1877 377 1499 0 28 223 -/+ buffers/cache: 125 1751 Swap: 4095 0 4095

针对<操作目标> saltstack 提供了多种方法对client(id)进行过滤

  • 普通匹配

匹配所有 '*' 匹配单个 'minion_id'
  • 正则匹配

使用-E ,--pcre 进行正则匹配


[root@stack-master ~]# salt -E '^stack-node\w+' cmd.run "free -m" stack-node01: total used free shared buffers cached Mem: 1877 377 1499 0 27 223 -/+ buffers/cache: 126 1751 Swap: 4095 0 4095 stack-node02: total used free shared buffers cached Mem: 1877 377 1499 0 28 223 -/+ buffers/cache: 125 1751 Swap: 4095 0 4095
  • 列表匹配

-L,--list,以主机id名列表的形式进行过滤,格式与Python的列表相似,即不同主机id 名称使用逗号分隔


[root@stack-master ~]# salt -L 'stack-node01,stack-node02' cmd.run "free -m" stack-node02: total used free shared buffers cached Mem: 1877 376 1501 0 28 223 -/+ buffers/cache: 123 1753 Swap: 4095 0 4095 stack-node01: total used free shared buffers cached Mem: 1877 378 1499 0 28 223 -/+ buffers/cache: 126 1751 Swap: 4095 0 4095
  • IP匹配

-S,--ipcidr,根据被控主机的IP地址或IP子网进行匹配


[root@stack-master ~]# salt -S 172.16.202.0/24 cmd.run "free -m" stack-master: total used free shared buffers cached Mem: 1877 676 1201 0 30 225 -/+ buffers/cache: 420 1457 Swap: 4095 0 4095 stack-node01: total used free shared buffers cached Mem: 1877 378 1498 0 28 223 -/+ buffers/cache: 126 1751 Swap: 4095 0 4095 stack-node02: total used free shared buffers cached Mem: 1877 376 1500 0 28 223 -/+ buffers/cache: 123 1753 Swap: 4095 0 4095

saltstack远程执行命令.md的更多相关文章

  1. Linux centosVMware 自动化运维认识自动化运维、启动salt相关服务、saltstack配置认证、salt-key命令用法、saltstack远程执行命令、saltstack - grains、saltstack – pillar

    一.认识自动化运维 传统运维效率低,大多工作人为完成 传统运维工作繁琐,容易出错 传统运维每日重复做相同的事情 传统运维没有标准化流程 传统运维的脚本繁多,不能方便管理 自动化运维就是要解决上面所有问 ...

  2. 利用 Saltstack 远程执行命令

    Saltstack的一个比较突出优势就是具备执行远程命令的功能. 操作方法与func (https://fedorahosted.org/func/)相似,可以帮助运维人员完成集中化的操作平台. ht ...

  3. Saltstack系列2:Saltstack远程执行命令

    命令 命令格式: salt '<操作目标>' <方法>[参数] 例: salt 'wx' cmd.run 'free -m' #查看被控主机内存使用情况 常用参数 针对< ...

  4. SaltStack远程执行命令

    编辑fansik_cmd.sls文件: 内容如下: fansik_cmd:  cmd.run:    - unless:      - test -f /tmp/fansik.txt      - t ...

  5. Saltstack远程执行(四)

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

  6. SaltStack远程执行-返回MySQL

    上一篇:SaltStack远程执行-模块 参考官方文档:https://docs.saltstack.com/en/latest/ref/returners/all/salt.returners.my ...

  7. SaltStack远程执行

    上一篇:SaltStack概述及安装 master也需要安装一个minion 启动salt-master systemctl start salt-master 配置文件在目录/etc/salt下 p ...

  8. 利用scp 远程上传下载文件&sol;文件夹和ssh远程执行命令

    利用scp传输文件 1.从服务器下载文件scp username@servername:/path/filename /tmp/local_destination例如scp codinglog@192 ...

  9. Saltstack异步执行命令(十三)

    Saltstack异步执行命令 salt执行命令有时候会有超时的问题,就是命令下发下去了,部分主机没有返回信息,这时候就很难判断命令或任务是否执行成功.因此,salt提供异步执行的功能,发出命令后立即 ...

随机推荐

  1. 说说markdown和latex的简单比较

    latex是纯学术风格,写paper写书用 markdown是程序员风格,写笔记贴代码片段用 简单说,latex适合长篇.精致,比如数学公式.图片位置调整.表格样式调整.而markdown就是粗线条, ...

  2. jsp 错误码debug记录与总结

    500: 编码错误: 无法向cookie中写入中文字符串 需要使用URLEncoder.Encode()在写入处进行转码,使用URLDecoder.decoder()在读取处进行解码 或者使用requ ...

  3. BestCoder Valentine&&num;39&semi;s Day Round

    昨晚在开赛前5分钟注册的,然后比赛刚开始就掉线我就不想说了(蹭网的下场……),只好用手机来看题和提交,代码用电脑打好再拉进手机的(是在傻傻地用手机打了一半后才想到的办法). 1001,也就是 hdu ...

  4. C&plus;&plus;11静态assert

    [C++11静态assert] C++11新的关键字static_assert可以解决模板中的状态检察. 声明采取以下的形式: 这里有一些如何使用static_assert的例子: 当常数表达式值为f ...

  5. CSS——(2)与标准流盒模型

    部分博客<CSS--(1)基础>中简介了CSS的概念和几种用法,如今主要是介绍其的核心内容. 盒子模型 为了理解盒子模型,我们能够先从生活中的盒子入手.盒子是用来放置物品的,内部除了有物品 ...

  6. &lbrack;Angular Tutorial&rsqb; 12 -Event Handlers

    在这一步中,您将会在电话细节页面添加一个可点击的电话图片转换器. ·电话细节页面展示了当前电话的一张大图片和几张相对较小的略图.如果我们能仅仅通过点击略图就能把大图片换成略图就好了.让我们看看用Ang ...

  7. PHPexcel数据导出

    使用PHPexcel数据导出,可以从网上下载phpexcel引入使用,下面是我做的简单的数据导出练习 一.下载phpexcel 二.引发这个导出(我这里是写了一个简单的点击事件) <div id ...

  8. spring 动态代理

    突然想到AOP,就简单回忆一下动态代理.1.什么是动态代理? 假如有个用户有增删该查4个方法,如果要对用户操作后进行日志记录,可能会有人说直接在增删改查后做日志记录就行. 一旦我想在用户操作之前加一个 ...

  9. 关于Bootstrap的入门知识

    问:Bootstrap是什么? 答:开源的前端框架,就是一些事先写好的css.js等. 问:Bootstrap在哪儿下载? 答:官方(https://getbootstrap.com/),中文(htt ...

  10. 【转】九大排序算法-C语言实现及详解

    概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 我们这里说说八大排序就是内部排序. 当n较大, ...