Dragging up a half finished post from the past AFAIK its still relevant and no less awesome
Building nagios config with puppet!!1
This setup uses exported resources and this requires your puppetmaster to be setup to use stored configuration. So we need to turn it on and install puppetdb.
This is a basic example setting a nagios host and a ping check. In this each host has its own nagios configation file into the nagios modules file directory.
Where this technique becomes powerful is when you start adding nagios service checks to other modules to mantain total monitoring coverage. RAWR