linux salt 命令执行脚本,Saltstack系列2:Saltstack远程执行命令

命令

命令格式:

salt '' [参数]

例:

salt 'wx' cmd.run 'free -m' #查看被控主机内存使用情况

常用参数

针对,Saltstack提供了多种方法对被控主机(id)进行过滤。下面列举出常用具体参数:

-E,--pcre,通过正则表达式进行匹配:

salt -E '^SN2013.*' test.ping #探测SN2013开头的主机id名是否连通

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

salt -L 'SN2013-08-021,SN2013-08-021' grains.item osfullname #获取主机id为:SN2013-08-021,SN2013-08-021完整操作系统发行版名称

-G,--grain,根据被控主机的grains信息进行匹配过滤,格式为::

salt -G 'osrelease:6.4' cmd.run 'python -V' #获取发行版本号为6.4的python版本号

-I,--pillar,根据被控主机的pillar信息进行匹配过滤,格式为:"对象名称":"对象值"

salt -I 'nginx:root:/data' test.ping #探测具有'nginx:root:/data'信息的连通性。

#pillar属性配置文件如下:

nginx:

root: /data

-N,--nodegroup,根据主控端master配置文件中的分组名称进行过滤。

8110fd60420a11975fac595c73ebf0d0.gif

#分组配置:【/etc/salt/master】

nodegroups:

web1group: 'L@wx,SN2013-08-21'

web2group: 'L@SN2013-08-22,SN2014'

#其中L@表示后面的主机id格式为列表,即主机id以逗号分隔:G@表示以grain格式描述:S@表示以IP子网或地址格式描述

salt -N web2group test.ping #探测web2group被控主机的连通性

8110fd60420a11975fac595c73ebf0d0.gif

-C,--compound,根据条件运算符not、and、or去匹配不同规则的主机信息

salt -C 'E@^SN2013.* and G@os:Centos' test.ping #探测SN2013开头并且操作系统版本为CentOS的主机的连通性

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

salt -S 192.168.0.0/16 test.ping

salt -S 192.168.1.10 test.ping

参考资料:

根据刘天斯《Python自动化运维技术与最佳实践》整理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值