我有多个隔离环境可以使用SaltStack进行设置。我为每个环境创建了一些基本状态和自定义状态。目前,我可以识别环境的唯一方法是在DNS服务器上请求TXT记录。 有没有办法在SaltStack中选择合适的环境。 我如何将这些信息放在柱子或谷物中?
答案 0 :(得分:1)
Salt的dig
module可能对你有所帮助。您可以使用它来查询DNS记录中的信息。它需要安装命令行挖掘工具。
使用命令行:
salt-call dig.TXT google.com
生成这样的输出:
local:
- "v=spf1 include:_spf.google.com ~all"
使用盐状态将其放入谷物中:
# setupgrain.sls
mygrainname:
grains.present:
- value: {{ salt['dig.TXT']('google.com') }}
一旦获得了谷物中的信息,您可以select salt nodes on the grain information using matchers。