How to Tier a Puppet Setup
I'm trying to work out a method for building our infrastructure in a way that lends itself to easily scale it out as well as having a complete overview, an easily accessible documentation.
Right now my idea looks like follows:
at the lowest level, we have the classic puppet module. This takes care of actually implementing a task: installing packages, modifying configurations (example: apache, ntp).
The next level is a wrapper. For instance a "mydb", or "lb" - which abstracts away differences between mysql and postgres, (or haproxy and trafficserver respectively). It also collects exported resources (handing them down the ...