我在web1
服务器上安装了一个独立的minion:
me@web1:~$ hostname
web1
me@web1:~$ sudo salt-call network.get_hostname
local:
web1
me@web1:~$ cat /etc/salt/minion|egrep -v '^#'|egrep -v '^$'
file_client: local
file_roots:
base:
- /srv/salt
pillar_roots:
base:
- /srv/pillar
我的支柱设置如下:
me@web1:~$ cat /srv/pillar/top.sls
base:
'*':
- db
'web1':
- env.production
me@web1:~$ cat /srv/pillar/db.sls
postgres:
use_upstream_repo: true
version: '9.6'
pkg: 'postgresql-9.6'
pkg_client: 'postgresql-client-9.6'
me@web1:~$ cat /srv/pillar/env/production.sls
env: production
但是当我使用pillar.items
时,我只看到这个:
me@web1:~$ sudo salt-call pillar.items
local:
----------
postgres:
----------
use_upstream_repo:
True
version:
9.6
pkg:
postgresql-9.6
pkg_client:
postgresql-client-9.6
独立服务器似乎只在'*'
匹配所有部分中应用支柱,而不是直接匹配'web1'
主机名部分。我在这里做错了什么?
答案 0 :(得分:1)
顶部文件与 minion_id 匹配,可能与主机名不同(例如,它可能是FQDN或您手动设置的内容)。
您可以查看/etc/salt/minion_id
的内容吗?那就是 minion_id salt将在顶级文件中匹配