【问题标题】:How to setup a default hiera lookup value如何设置默认的 hiera 查找值
【发布时间】:2017-06-17 16:11:11
【问题描述】:

我正在使用 Hiera 设置我的 Puppet 代码,这样如果在 Hiera 中找不到某个值,它就会为其分配一个默认值。我没有得到想要的结果,想知道其他人是怎么做到的:

lookup( <NAME>, [<VALUE TYPE>], [<MERGE BEHAVIOR>], [<DEFAULT VALUE>] )

我想我找到了答案 https://www.devco.net/archives/2016/03/13/the-puppet-4-lookup-function.php , 一会儿试试

lookup({"name" => "some::thing", "default_value" => "default"})

【问题讨论】:

  • 另外,如果您使用的是经典的hiera 函数,那么它们的最后一个参数将是默认值。
  • 这是否意味着,我不需要添加类似哈希的结构,而只需使用lookup({ "name" => "some::variable", "default_value"})

标签: puppet hiera


【解决方案1】:

对我有用的解决方案是:

$myvar1 = lookup( { "name" => "myvar1", "default_value" => "default" } )

【讨论】:

    【解决方案2】:

    通常,如果值 logpath 在 hiera 中声明。 Puppet manifest 会自动获取该值。如果在 Hiera 中没有找到,则 puppet agent 会出错,说没有找到该值。

    如果值没有在 Hiera 中声明,总有一种方法可以在 puppet manifest 中声明值。如果在 Puppet Hiera 中找不到该值,则在清单中查找该 puppet 值。

    作为一种好的做法,值在 hiera 和 puppet 清单中声明。如果在 Hiera 中找不到该值,puppet 将查看清单中存在的变量

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-31
      • 2015-02-02
      • 2011-07-09
      • 2012-07-31
      • 2014-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多