1

我的 yaml 文件包含一个散列定义,“nodemanager_instances”。在我执行 puppet 时,变量“nodemanager_port”的值不会被替换。在我的 common.yaml 文件中,定义了值。谁能找到这不起作用的原因?

mwpapp.yaml

nodemanager_instances:
  'nodemanager':
    nodemanager_port: "%{domain_nodemanager_port}"
    domain_name:      "%{::sysfunc}"

common.yaml

domain_nodemanager_port: "5552"

hiera.yaml

:backends:
    - yaml

:yaml:
    :datadir: /etc/puppet/manifests/hiera

:hierarchy:
    - "hostname/%{::hostname}"
    - "sysfunc/%{::sysfunc}"
    - "appotap/%{::app}%{::otap}"
    - "otap/%{::otap}"
    - "domain/%{::domain}"
    - "colo/colo-%{::colo}"
    - "os/%{::operatingsystem}/%{::operatingsystem}-%{::operatingsystemrelease}"
    - "os/%{::operatingsystem}"
    - common/common
4

1 回答 1

1

为此,您需要 Hiera1.3或更高版本,并且您必须使用插值标记,例如

    nodemanager_port: "%{hiera('domain_nodemanager_port')}"
于 2014-05-15T11:54:08.130 回答