关于这部分内容,它支持通配、列表以及正则。 比如两台客户端aming-01,aming-02, 那我们可以写成salt ‘aming-*’, salt ‘aming-0[12]’ salt -L ‘aming-01,aming-02’ salt -E 'aming-(01|02)'等形式,使用列表,即多个机器用逗号分隔,而且需要加-L,使用正则必须要带-E选项。 它还支持grains,加-G选项,pillar 加-I选项,下面会介绍到。
[root@linux0 ~]# salt '*' test.ping #master运行命令,两台机器会进行同样的操作;*代表accepted key的机器;test.ping测试机器是否存活;
linux1:
True
linux0:
True
[root@linux0 ~]# salt '*' cmd.run "hostname"
linux0:
linux0
linux1:
linux1
[root@linux0 ~]# salt '*' cmd.run "ip addr |grep 87"
linux1:
inet 192.168.87.150/24 brd 192.168.87.255 scope global noprefixroute ens33
inet 192.168.87.108/32 scope global ens33
linux0:
inet 192.168.87.149/24 brd 192.168.87.255 scope global noprefixroute ens33
[root@linux0 ~]# salt '*' cmd.run "whoami"
linux0:
root
linux1:
root
[root@linux0 ~]# salt 'linux1' cmd.run "whoami" #可指定一台机器;
linux1:
root
[root@linux0 ~]# salt 'linux*' cmd.run "whoami" #支持正则通配;
linux0:
root
linux1:
root
[root@linux0 ~]# salt 'linux[01]' cmd.run "whoami"
linux0:
root
linux1:
root
[root@linux0 ~]# salt -L 'linux0,linux1' cmd.run "whoami" #列表;
linux0:
root
linux1:
root
[root@linux0 ~]# salt -E 'linux[0-9]+' cmd.run "hostname" #正则特殊符号加-E;
linux0:
linux0
linux1:
linux1
[root@linux0 ~]# salt -E 'linux(0|1)' cmd.run "hostname"
linux1:
linux1
linux0:
linux0