Linux – How to maintain site.pp with many nodes

linuxpuppetpuppetmaster

I keep all my nodes in one file, site.pp – but as I add more and more nodes, it's very difficult to maintain them.

Import directive looks very promising, but as I understand docs, it's necessary to restart puppermaster every time something changes. For me it's unacceptable.

Is there any other way to do that? Instead of using big comments to separate nodes/groups. Now i use just rdoc.

I'll be glad with any suggestions 🙂

My current puppet directory structure looks like:

  • manifests/site.pp
  • manifests/extdata/ (for extlookup)
  • modules/module1
  • modules/module2
  • files/pubkeys…

I deploy puppet configuration using git/rsync to only override files that changed.

Best Answer

I have a site.pp that looks like this:

import "nodes/*.pp"

and have a nodes/ directory in manifests/

So that I have a set of nodes in "workstations.pp" "webservers.pp" and so on..