Part 3: Installing puppet-dashboard on CentOS / Puppet 2.6.1

Puppet Dashboard

Puppet dashboard is a fairly new app with loads of future potential and is great for monitoring your puppet estate. This is a quick guide to getting it running on puppet 2.6.1. Be sure you have the correct yum repos and ruby versions installed, see Part 1 and Part 2 for more details.

Install the puppet-dashboard package.

Create a MySQL database for puppet-dashboard

Create a database for puppet-dashboard to use and set up a user with all privileges to use it. This can be done on a seperate host.

Configure database.yaml

Add your database parameters to the development section, note that host: can be ommitted if you are using local sockets to connect to MySQL.

Migrate the database

Copy reports module to site_ruby



I hate doing this but puppetmasterd explicitly looks for reports in puppet/reports and so far I haven’t found a clean workaround to tell it to look in /usr/share/puppet-dashboard for it. If anyone knows of a way, please email me.

Edit your puppet.conf

Include the following in the [master] section, changing punch.craigdunn.org to your puppet server

Restart puppetmaster and start puppet-dashboard

Test web GUI

Go to the following link in your browser (replacing the hostname with your fqdn)

Configure the client

Edit puppet.conf

Make sure the following things are set in the [agent] section of puppet.conf on your client node.

Run puppet in noop mode on the client

Refresh browser

If all has gone well, you should now see your reports in puppet dashboard for your client node.

Follow and share if you liked this

1 thought on “Part 3: Installing puppet-dashboard on CentOS / Puppet 2.6.1”

  1. I know this is an old post but… here’s some helpful info:

    Configuring the database is “vi config/database.yml” not .yaml

    Instead of copying the reports module, why not symlink it instead ?
    ln -s /usr/share/puppet-dashboard/ext/puppet/puppet_dashboard.rb /usr/lib/ruby/site_ruby/1.8/puppet/reports

Leave a Reply

Your email address will not be published. Required fields are marked *