This has been a hard chapter, probably to read, surely to write, because there is a wide spectrum of available alternatives when we deal with the challenges we have when we design Puppet architectures.
We have examined the tasks we have to deal with: how to manage nodes, how to group them, how to set the parameters of the classes we use, and where to place the configuration files we use. We have reviewed several tools at our disposal: The Foreman, Hiera, and our custom site modules.
We have seen some examples on how these elements can be managed in different combinations. Now, it is time to explore modules, an important component of a Puppet setup, more deeply and see how to write really reusable ones.