Saltstack系列(二) Saltstack分组

 今天2015年10月26号是我学习saltstack的第22天,在工作中用到的第二次自己总结出来的经验10月4号写下了篇自己第一次用的saltstack的文档,继续更新:感谢大家在第一篇给予的意见,多多指导互相学习。

 

为了便于管理功能业务相似的minion,Saltstack提供了分组的模式,因为线上机器多,不可能每次都是“*”或者“ip主机名” 这样不现实的。 所以我们现在都是提供分组,哪里的机器分哪个组这样你操作起来就方便而且容易排查。

 

官方文档: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: ‘[email protected],bar.domain.com,baz.domain.com and bl*.domain.com’

# group2: ‘G@os:Debian and foo.domain.com’

 

 

nodegroups:
  testgroup1:'[email protected],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)

 

 

匹配中可以使用and、or及not等boolean型操作
例如,想匹配所有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

 

 

 

 

 

猜你喜欢

转载自yango.iteye.com/blog/2264645