为每个 Salt Minion 提供唯一的文件

为每个 Salt Minion 提供唯一的文件

有一些目录路径,如 /etc/opt/mysoft,其内容对于每个 minion 应该是不同的。

因此,对于 minion A,它包含带有部分内容的 config.ini,而对于 minion B,它包含带有不同内容的 config.ini 以及额外的文件 img.png。

我有什么选择?我可以从 /srv/salt/{minon-something-here}/ 目录复制文件吗?我可以将一些 minion 标识符映射到 svnfs、gitfs 或 hgfs 中的分支吗?

答案1

- source: salt://mysoft/files/{{ grains['id'] }}在任何状态下使用file(例如file.managedfile.recurse),然后将主机特定文件放入/srv/salt/mysoft/files/{minion-id}/。您还可以使用不同的粒度,例如grains['fqdn']和 适当更改路径。

例子:

/etc/opt/mysoft:
  file.recurse:
    - source: salt://mysoft/files/{{ grains['id'] }}

master 上针对 id 为 的 minions 的文件foo如下bar

/srv/salt/mysoft/files/foo/config.ini
/srv/salt/mysoft/files/foo/img.png
/srv/salt/mysoft/files/bar/config.ini
/srv/salt/mysoft/files/bar/img.png

相关内容