SaltStack 目标targeting匹配

targeting

globbing and reges

grans

pillar

subnet/ip address

复合匹配

节点组

批量执行

 

matching the minion id

[root@node110 master]# salt 'minion?saltstack.com'test.ping

minion.saltstack.com:

    True

 

正则表达式 -E 

salt -E '(minion|minion-node2).saltstack.com' test.ping

通过state.sls来使用正则表达式匹配

[root@node110 states]# cat top.sls

base:

 '(minion|minion-node2).saltstack.com':

    - match:pcre            #申请是通过正则表达式来匹配上面的ID

    - init.pkg

    - init.limit

 

    -E, --pcre          Instead of using shell globs toevaluate the target

                       servers, use pcre regular expressions

 

列表:-L

#salt -L'minion.saltstack.com,minion-node2.saltstack.com' test.ping

#salt -L 'web1,web2' test.ping

    -L, --list          Instead of using shell globs toevaluate the target

                        servers,take a comma or space delimited list of

                        servers.

 

生产环境建议配置ID:

ID= nginx-node01.web.idc01.oldboy.cc

 

通过IP地址来匹配 -S

    -S,--ipcidr        Match based on Subnet(CIDR notation) or IPv4 address.

[root@node110 ~]# salt -S 172.16.1.120 test.ping

[root@node110 ~]# salt -S 172.16.1.0/24 test.ping

 

 1.正则匹

1.正则匹配

在操作与管理Mi ni on时可以通过正则表达式来

匹配Mi ni on  ID的方式去管理它们。比如我们想要

对匹配到'Mi n*'字符串的Mi ni on进行操作,可以按

如下代码配置:

SaltStack@Master: salt -E  'Min*' test.ping

Minion:

True

Minion1:

True

Mi n*就是一个简单的正则表达式,当然你也

可以写出任何正则表达式去匹配Mi ni on  ID

2.列表匹配

SaltStack@Master: salt -L  Minion,Minion1 test.ping

Minion:

True

Minion1:

True

Mi ni onMi ni on1通过列表的方式去指定Mi ni on

ID,可直接使用。

3.G ri ans匹配

SaltStack@Master: salt -G  'os:MacOS' test.ping

Minion:

True

Minion1:

True

其中os: MacOS,这里的对象是一组键值对,

这里用到了Mi ni onG rai ns的键值对。在后面介绍

G rai ns的时候会详细讲解,这里只需要知道可以通

过键值对的方式去匹配Mi ni on  ID。当然Sal tStack

支持正则匹配G rai ns信息,大家可以通过--g rai npcre参数去匹配。

4.组匹配

SaltStack@Master: salt -N  groups  test.ping

Minion:

True

Minion1:

True

Sal tStack系统中也可以提前给Mi ni on定义组

角色,但是需要提前知道Mi ni on  ID信息才能把它

定义到某个组中。g roups是我们在master配置文件

中定义的组名称。

nodegroups:

groups: 'L@Minon,Minion1

5.复合匹配

SaltStack@Master: salt -C  'G@os:MacOS or L@Minion1'  test.

Minion:

True

Minion1:

True

os: MacOS or L@Mi ni on1是一个复合组合,支

持使用andor关联多个条件。

6.Pi l l ar值匹配

SaltStack@Master: salt -I  'key:value'  test.ping

Minion:

True

Minion1:

True

key: v al uePi l l ar系统中定义的一组键值对,跟

G rai ns的键值对类似。在下面的章节里面我们也会

详细介绍Sal tStack中的Pi l l ar系统。

7.CIDR匹配

SaltStack@Master: salt -S  '192.168.1.0/24'  test.ping

Minion:

True

Minion1:

True

192.168.1.0/24是一个指定的CIDR网段,这里

CIDR匹配的IP地址是Mi ni on连接Matser 4505端口

的来源地址。

分割线
感谢打赏
江西数库信息技术有限公司
YWSOS.COM 平台代运维解决方案
 评论
 发表评论
姓   名:

Powered by AKCMS