Hiera 找不到 puppet 环境

Hiera 找不到 puppet 环境

我正在测试 hiera,在层次结构配置上遇到了问题。我所拥有的非常简单,不起作用的部分是基于环境的 hiera datadir 文件的规范。这是配置文件(/etc/hiera.yaml) 我想

---
:backends:
  - yaml
:logger: console
:hierarchy:
  - "%{::environment}"

:yaml:
   :datadir: /var/lib/hiera

现在我有一个文件/var/lib/hiera/development.yaml

blah: meh

当我运行 hiera 时,找不到文件或值

$ hiera -d blah
DEBUG: Fri Oct 25 15:50:52 -0600 2013: Hiera YAML backend starting
DEBUG: Fri Oct 25 15:50:52 -0600 2013: Looking up blah in YAML backend
nil

我已确认此代理已配置为开发

$ sudo puppet agent --configprint environment
development

现在让我证明 hiera 能够找到某物;改变hiera.yaml文件:

:hierarchy:
  - development

现在 hiera 找到了文件和值

$ hiera -d blah
DEBUG: Fri Oct 25 15:53:25 -0600 2013: Hiera YAML backend starting
DEBUG: Fri Oct 25 15:53:25 -0600 2013: Looking up blah in YAML backend
DEBUG: Fri Oct 25 15:53:25 -0600 2013: Looking for data source development
DEBUG: Fri Oct 25 15:53:25 -0600 2013: Found blah in development
meh

那么为什么它不能与动态环境配置配合使用呢?我直接从文档。请注意,我已尝试hiera通过 sudo 运行该命令,但结果没有变化。

答案1

有多种方法可以feed hiera 事实。 尝试hiera -d blah environment=development

相关内容