Puppet apply and send reports?

840 views
Skip to first unread message

Chris Lee

unread,
Feb 20, 2013, 8:46:11 AM2/20/13
to puppet...@googlegroups.com
Hi all, I hope somebody can help me with something.

We have a rather large number of netbooted nodes that we are running "puppet apply" via a script and a cron job every 30 minutes

I was wondering if there is a way to configure puppet apply, to also send any reports to our dashboard server that is being used for our normal puppet clients and what would be the way to go about doing this?
Currently run script runs something like this :

puppet apply --config=$PUP/puppet.conf --detailed-exitcodes --onetime --no-daemonize $PUP/manifests/site.pp


jcbollinger

unread,
Feb 20, 2013, 11:48:02 AM2/20/13
to puppet...@googlegroups.com

I suppose that the reason you are using "puppet apply" (for which some of those options are irrelevant) instead of "puppet agent" is that the nodes in question are not registered with the master (and you want it that way) or they cannot reliably contact the master.  That's fine, but why, in that case, do you think that the master could or should accept reports from those nodes?


John

Chris Lee

unread,
Feb 24, 2013, 7:52:43 AM2/24/13
to puppet...@googlegroups.com
Seem to of lost me last reply again.

Anyway, we can see the puppet server, and the dashboard server. However since these are specialised netbooted machines with very little RAM, the puppet apply method with a cron job has been our only solution.

WE currently have the cron sending us emails when it makes changes, but this is amounting to 2000+ emails a day and we were wanting to know if there was a way to have the reports rather sent to our dashboard server, where we filter out the SQL database for details

Nick Fagerlund

unread,
Feb 24, 2013, 1:58:13 PM2/24/13
to puppet...@googlegroups.com
Yes, you can definitely rig puppet apply to send reports. The trick is that it works like a puppet master, not like a puppet agent, so you need to configure the nodes to talk directly to the dashboard server; they can't go through the puppet master. (It also means that by default, puppet apply has "reports = store" and puts its run reports on the local disk in the reportdir. I guess you could find those and manually import them into dashboard, if you felt like it.)

So, you need to set the following in each node's puppet.conf:

# Use http report processor; don't bother storing reports on disk
reports = http
# Send reports to dashboard server

And of course make sure the dashboard server's firewall and apache configs will allow it to accept upload requests from those nodes.

Chris Lee

unread,
Jun 14, 2013, 11:17:42 AM6/14/13
to puppet...@googlegroups.com
I forgot to say thank you. The changes below worked perfectly.

At first I tried them just by changing on command line. Using --reports=http and --reporturl=https://dashboard.example.com:3000/reports/upload , worked, but though I wasn't able to use --report=true so still nothing happened.
Modifying the report=true however on the central puppet.conf file on our netbooted systems worked perfectly and our dashboard very quickly started getting reports from all the nodes

Thanks again

Cheers
Chris

Louis Mayorga

unread,
Jul 9, 2015, 3:08:12 PM7/9/15
to puppet...@googlegroups.com
Can you share your PE version? and also the /puppet/puppet.conf file on your puppet master?
Reply all
Reply to author
Forward
0 new messages