2、saltstack学习-分组
当服务器有很多的时候,有必要进行分组,以下为分组的方法,常用的已标红。
| letter | 含义 | 例子 |
| G | Grains glob匹配 | G@os:Centos |
| E | PCRE正则匹配minion_id | E@web\d+\.(dev|qa|prod)\.loc |
| P | PCRE正则匹配Grains | P@os:(RedHat|Centos) |
| L | minion_id列表 | L@vas01,vas02,vas03 |
| I | pillar glob匹配 | I@pdata:foobar |
| S | 子网/ip地址匹配 | S@192.168.1.0/24 or S@192.168.1.100 |
| R | Range cluster匹配 | R@%foo.bar |
| D | minion data匹配,需要定义data | D@key:value |
| N | 组+组匹配 | N@group1 or N@group2 |
master上修改配置文件/etc/salt/master
注意yaml文件格式,下边组名前边有2个空格,冒号后边有一个空格,不能用tab
nodegroups: node2-3: 'L@linux-node2.example.com,linux-node3.example.com' node4: 'L@linux-node4.example.com' ip2-3: 'S@192.168.1.62 or S@192.168.1.63' ip4: 'S@192.168.1.64'
这里用了两种分组方法,L和S,注意文件格式。L的ID就是每个服务器的主机名。修改后重启master服务:
systemctl restart salt-master.service
然后进行测试:
[root@linux-node1 salt]# salt -N node2-3 test.ping linux-node2.example.com: True linux-node3.example.com: True [root@linux-node1 salt]# salt -N ip2-3 test.ping linux-node3.example.com: True linux-node2.example.com: True [root@linux-node1 salt]# salt -N ip4 test.ping linux-node4.example.com: True [root@linux-node1 salt]# salt -N node4 test.ping linux-node4.example.com: True

浙公网安备 33010602011771号