Working with the command line on a YAML backend
When we use a backend based on files such as JSON or YAML, which are the most commonly used, we have to recreate on the filesystem the hierarchy defined in our hiera.yaml
file, the files that contain Hiera data must be placed in these directories.
Let's see Hiera in action. Look at the following sample hierarchy configuration:
:hierarchy: - "nodes/%{::fqdn}" - "env/%{::env}" - common :yaml: :datadir: /etc/puppetlabs/code/hieradata
We have to create a directory structure as follows:
mkdir -p /etc/puppetlabs/code/hieradata/{nodes,env}
Then, work on the YAML files as shown:
vi /etc/puppetlabs/code/hieradata/nodes/web01.example42.com.yaml vi /etc/puppetlabs/code/hieradata/env/production.yaml vi /etc/puppetlabs/code/hieradata/env/test.yaml vi /etc/puppetlabs/code/hieradata/common.yaml
These files are plain YAML files where we can specify the values for any Hiera-managed key. These values can be strings, arrays, or hashes...