木偶:从节点configurationbuild立DNS文件(或者:我如何遍历节点variables全局)

我也用我的节点木偶。 我也运行(BIND)DNS服务器。

是否有可能使用我的模板中的每个节点的DNS模块的$aliasesvariables?

我的节点看起来像这样:

 $ cat nodes/kayak.local.pp node 'kayak.local' { include base $node_aliases = ['svn','puppet'] $node_primaryip = '10.0.64.200' network::interface { 'eth0': ip => $node_primaryip, gw => '10.0.64.1', mac => '00:50:00:00:00:3f', netmask => '255.255.255.0', } } 

我正在寻找的是能够这样做一个模板:

 $cat local.erb <% scope.lookupvar('ALLNODES::aliases').each do |alias| -%> <%= alias %> IN A <%= node_primaryip %> <% end -%> 

谁能帮我?

你可以使用导出的资源。

  • 创build一个定义的types来pipe理你的dns文件中的一行
  • 在每台主机上创build一个使用该定义types的资源。 在types之前使用@@使其导出。
  • 与飞船运营商收集您的DNS服务器上的资源。

旁注:使用Hiera处理清单中的所有数据。