Introducing a frame for the environment
Here's a typical scenario for Hiera: you find yourself having to override the DNS setting for your development environment because that environment can't connect to the production resolver on your network. You then deploy your production in a second data center, and you need that location to be different. Hiera allows us to model settings such as the production DNS resolver is10.20.1.3
, and the development DNS server is10.199.30.2
.
Â
Â
To accommodate this type of scenario, we can introduce what's best described as an environment frame within the Hiera hierarchy, as follows:
--- version: 5 hierarchy: - name: "Per-node data" path: "nodes/%{trusted.certname}.yaml" - name: "Per-environment data" path: "%{server_facts.environment}.yaml" - name: Common path: common.yaml
The percent-braces %{variable}
syntax denotes a Hiera interpolation token. Wherever you use these interpolation tokens, Hiera will evaluate the variable's value and inserts...