Puppet PagerDuty


Continuing in our ‘week ‘o report processors’ is a Puppet PagerDuty report processor. Puppet PagerDuty sends an alert to the highly cool PagerDuty service notifying of failed Puppet runs with the name of the host that failed and the date. All log entries for your Puppet run are also passed to PagerDuty as part of the API call. The PagerDuty report processor is easy to install:

  1. Install the rest-client and json gems on your Puppet master

    $ sudo gem install rest-client json

  2. Install puppet-pagerduty as a module in your Puppet master’s module path.

  3. Update the pagerduty_api variable in a file called /etc/puppet/pagerduty.yaml file with the PagerDuty API key for your Puppet service. An example file is included. You will also need to create a Puppet specific service that uses the Generic API in PagerDuty.

  4. Enable pluginsync and reports on your master and clients in puppet.conf

    [master] report = true reports = pagerduty pluginsync = true [agent] report = true pluginsync = true

  5. Run the Puppet client and sync the report as a plugin And you’re off with Puppet and PagerDuty integration!