zoukankan      html  css  js  c++  java
  • saltstack远程执行命令.md

    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-nodew+'  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
    
    
  • 相关阅读:
    酒里放茶,醉,未遂。
    利用自定义事件实现不同窗体间的通讯 Delphi篇
    主题:CS0016: 未能写入输出文件“c:&#92;WINDOWS&#92;Microsoft.NET&#92;***.dll”错误处理
    delphi點擊窗體最小化,關閉按鈕時的托盤圖標設置
    delphi制作程序啟動歡迎窗體
    那年 那雪
    DOL魔盘解决方案
    专家解密“艳照门”背后三大安全陷阱
    jQuery获取Select选择的Text和 Value(转)
    技术列传 guava cache
  • 原文地址:https://www.cnblogs.com/pycode/p/6270302.html
Copyright © 2011-2022 走看看