Summary
In this chapter we've outlined some of the problems with maintaining configuration data in Puppet manifests, and introduced Hiera as a powerful solution. We've seen how to configure Puppet to use the Hiera data store, and how to query Hiera keys in Puppet manifests using lookup()
.
We've looked at how to write Hiera data sources, including string, array, and hash data structures, and how to interpolate values into Hiera strings using lookup()
, including Puppet facts and other Hiera data, and how to duplicate Hiera data structures using alias()
. We've learned how Hiera's hierarchy works, and how to configure it using the hiera.yaml
file.
We've seen how our example Puppet infrastructure is configured to use Hiera data, and demonstrated the process by looking up a data value in a Puppet manifest. In case of problems, we also looked at some common Hiera errors, and we've discussed rules of thumb about when to put data into Hiera.
We've explored using...