官网:http://saltstack.com/
国内:http://www.saltstack.cn/
命令格式:
salt '<操作目标>' <方法> <参数>
1.查看minion001主机使用:
1
2
3
4
5
6
7
[iyunv@master ~]# salt 'minion001' cmd.run 'free -m'
minion001:
total used free shared buffers cached
Mem: 988 560 428 0 32 305
-/+ buffers/cache: 221 766
Swap: 1983 0 1983
[iyunv@master ~]#
2.-E,--pcre 通过正则表达式匹配主机
测试已minion开头的主机是否连通
1
2
3
4
5
6
[iyunv@master ~]# salt -E '^minion' test.ping
minion001:
True
minion002:
True
[iyunv@master ~]#
3.-L,--list,以主机id名列表的形式过滤,格式与python列表类似
获取minion001,minion002的系统信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[iyunv@master ~]# salt -L 'minion001,minion002' grains.items osfullname
minion002:
----------
SSDs:
biosreleasedate:
01/23/2012
biosversion:
6.00
cpu_flags:
- fpu
minion001:
----------
SSDs:
biosreleasedate:
01/23/2012
biosversion:
6.00
cpu_flags:
- fpu
- vme
- de
4.-G,--grain, 根据被控主机的grains信息进行匹配过滤
格式为:'<grain value>:<glob expression>'
例如:过滤内核为Linux的主机:可写成,‘kernel:Linux'
1
2
3
4
5
6
[iyunv@master ~]# salt -G 'osrelease:6.4' cmd.run 'python -V'
minion001:
Python 2.6.6
minion002:
Python 2.6.6
[iyunv@master ~]#
如果需要配合正则表达式,使用参数--grain-pcre,经测试只能冒号后的<glob expression>能用正则
1
2
3
4
5
6
7
8
[iyunv@master ~]# salt --grain-pcre '[a-z]+:linux' test.ping
No minions matched the target. No command was sent, no jid was assigned.
[iyunv@master ~]# salt --grain-pcre 'kernel:[a-z]+' test.ping
minion001:
True
minion002:
True
[iyunv@master ~]#
5.-I,--pillar 根据被控主机的pillar信息进行匹配过滤
格式: "对象名称:对象值"
过滤:'apache: httpd' "nginx: root: /data"
待测。。。
6.-N ,--nodegroup ,根据主控端master配置文件/etc/salt/master中的分组进行过滤
组的定义支持正则表达式,grain,条件运算等
分组,官网:http://docs.saltstack.com/en/latest/topics/targeting/nodegroups.html
1
2
3
4
5
6
7
8
9
10
11
12
[iyunv@master ~]# cat /etc/salt/master
interface: 192.168.224.141
auto_accept: True
file_roots:
base:
- /srv/salt
nodegroups:
group1: 'minion001'
group2: 'minion002'
group3: 'minion001,minion002'
group4: '*'
group5: 'E@^minion'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[iyunv@master ~]# salt -N group1 test.ping
minion001:
True
[iyunv@master ~]# salt -N group2 test.ping
minion002:
True
[iyunv@master ~]# salt -N group3 test.ping
minion002:
True
minion001:
True
[iyunv@master ~]# salt -N group4 test.ping
minion001:
True
minion002:
True
[iyunv@master ~]# salt -N group5 test.ping
minion002:
True
minion001:
True
[iyunv@master ~]#
7.-C,--compound,根据条件运算符not,and,or匹配不同规则的主机信息
探测id以minion开头,系统为Centos的主机的连通性
1
2
3
4
5
6
[iyunv@master ~]# salt -C 'E@^minion and G@os:Centos' test.ping
minion002:
True
minion001:
True
[iyunv@master ~]#
8.-S,--ipcidr 根据被控主机的IP地址或IP子网进行匹配
1
2
3
4
5
6
7
8
9
[iyunv@master ~]# salt -S '192.168.224.142' test.ping
minion001:
True
[iyunv@master ~]# salt -S '192.168.224.0/24' test.ping
minion002:
True
minion001:
True
[iyunv@master ~]#
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com