Using exported host resources
In the previous example, we used the spaceship syntax to collect virtual host resources for hosts of type database or type web. You can use the same trick with exported resources. The advantage to using exported resources is that as you add more database servers, the collector syntax will automatically pull in the newly created exported host entries for those servers. This makes your /etc/hosts
entries more dynamic.
Getting ready
We will be using exported resources. If you haven't already done so, set up puppetdb and enable storeconfigs to use puppetdb as outlined in Chapter 2, Puppet Infrastructure.
How to do it...
In this example, we will configure database servers and clients to communicate with each other. We'll make use of exported resources to do the configuration.
Create a new database module,
db
:t@mylaptop ~/puppet/modules $ mkdir -p db/manifests
Create a new class for your database servers,
db::server
:class db::server { @@host {"$::fqdn": host_aliases...