- 當服務器非常多的時候,就需要分組,分組的方法如下,常用分組已標記為紅色。
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 |
- 配置文件(/etc/salt/master),配置方法如下
[root@study02 ~]# vim /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: 'L@foo.domain.com,bar.domain.com,baz.domain.com and bl*.domain.com' # group2: 'G@os:Debian and foo.domain.com' nodegroups: IPG: 'E@.*IPG*'
- 測試結果
[root@study02 ~]# salt -N IPG test.ping CWIPG2-1: True CWTerracottaIPG2-1: True CWTerracottaIPG2-2: True NWIPG1-1: True NWTerracottaIPG1-1: True CWTerracottaIPG1-1: True NWIPG2-1: True CWIPG1-1: True
總結:
- 分組配置可以在單獨的配置文件配置
- 分組配置語法遵循YAML語言規范
yaml語法三大規則
規則一:縮進
yaml使用一個固定的縮進風格表示數據層結構關系,Saltstack需要每個縮進級別由兩個空格組成。一定不能使用tab鍵
規則二:冒號
yaml:
mykey: my_value
每個冒號后面一定要有一個空格(以冒號結尾不需要空格,表示文件路徑的模版可以不需要空格)
規則三:短橫線
想要表示列表項,使用一個短橫杠加一個空格。多個項使用同樣的縮進級別作為同一個列表的一部分
my_dictionary:
- list_value_one
- list_value_two
- list_value_three
示例: