为了便于管理功能业务相似的minion,Saltstack提供了分组的模式
官方文档:http://docs.saltstack.com/topics/targeting/nodegroups.html
Node group为预先在master配置文件中定义的minion组.用来进行批量对minion进行操作.
编辑配置文件 vi /etc/salt/master
##### Node Groups #####
##########################################
# Node groups allow for logical groupings of minion nodes.
# A group consists of a group name and a compound target.
#
#nodegroups:
# group1: ‘L@foo.domain.com,bar.domain.com,baz.domain.com and bl*.domain.com’
# group2: ‘G@os:Debian and foo.domain.com’
nodegroups: testgroup1: 'L@test82.salt.cn,test83.salt.cn' testgroup2: '192.168.2.84'
之后重启master
测试:
[root@test81 ~]# salt -N testgroup1 test.ping test83.salt.cn: True test82.salt.cn: True
[root@test81 ~]# salt -N testgroup2 test.ping 192.168.2.84: True
高级用法:
关于组的混合匹配:(Compound matchers)
例如,想匹配所有minion中主机名(minion id)以webserv开头并且运行在Debian系统上或者minion的主机名(minion id)匹配正则表达式web-dc1-srv.*:
salt -C ‘webserv* and G@os:Debian or E@web-dc1-srv.*’ test.ping
在top.sls中可以如下使用:
base:
‘webserv* and G@os:Debian or E@web-dc1-srv.*’:
– match: compound
– webserver
http://wiki.saltstack.cn/topics/targeting/nodegroups