Our puppetdb infrastructure is realized by having multiple puppetdb servers sharing the same postgresql database. In front of the puppetdb servers we have a load balancer to distribute the load among them.

Installing a new puppetdb server

Installing puppetdb servers are a rather trivial task, but the order is important. If you for instance installs the puppetdb role before you create new certificates you would need to update puppetdb's certificates manually.

These are the steps required to install a new puppetdb server:

  1. Install a new node with the role "role::base"
  2. Make sure to add the puppetdb hostname in the nodes hiera file under the key  "profile::puppet::altnames". Then regenerate the puppet client certificates for this node, so that the node have a certificate valid for both its hostname and the common puppetdb hostname.
  3. Install the role "role::puppet::db"
  4. Wait for, or trigger, a puppet run on the loadbalancers, which will include the new server.
  • No labels