SaltStack远程执行组成部分:
目标(Targeting)
模块(Module)
返回(Returnners)
minion id可以定义在minion配置文件中,如果未定义,默认使用的是hostname。minion id是不能变动的,因为minion与master认证公钥是以minion id命名文件名的。
<code>[root@salt-master111 pillar]# vim /etc/salt/minion</code>
Minion id命名越规范越详细,在使用minion id匹配过程中就越准确。
和Minion ID有关,需要使用Minion ID:
Globbing(通配符)
regex(正则表达式)
List(列表)
通配符匹配
正则匹配
列表匹配
和Minion ID无关,不涉及到Minion ID:
子网/IP地址
Grains
Pillar
Compound matchers(复合匹配)
Node groups(节点组)
Batching execution(批处理执行)
IP地址匹配
Grains匹配
Pillar匹配
复合匹配
Letter
Match Type
例如:
Alt Delimiter?
G
Grains glob
G@os:Ubuntu
Yes
E
PCRE Minion ID
E@web\d+\.(dev|qa|prod)\.loc
No
P
Grains PCRE
P@os:(RedHat|Fedora|CentOS)
L
List of minions
[email protected],minion3.domain.com or bl*.domain.com
I
Pillar glob
I@pdata:foobar
J
Pillar PCRE
J@pdata:^(foo|bar)$
S
Subnet/IP address
[email protected]/24 or [email protected]
R
Range cluster
R@%foo.bar
Matchers can be joined using boolean <code>and</code>, <code>or,</code> and <code>not</code> operators.
Nodgroups
nodegroups <code>master</code>配置文件参数用于定义节点组。这里有一个通过<code>/etc/salt/master</code>配置文件配置节点组的例子:
批处理执行
在top.sls中,使用正则和grains匹配写法: