Table of Contents
The Nagios Toaster
a.k.a. Nagios-on-Steroids.
The goal here is to get a Nagios server monitor, with graphing capabilities and integrated configurator. We will use the following tools:
- Any webserver running php
- Nagios (obviously)
The main idea here is to use Nagios' frames to integrate the other tools. This can also be used with Nagios-style UIs (i.e. Icinga Classic UI, Thruk), other configuration tools (Nagios Administrator, RIP) or other graphing tools (collectd).
Web Server
Any Webserver will fit there, as long as it supports CGI (for Nagios) and PHP (for NConf). http authentification and https, although not mandatory, are strongly recommended.
In this document, we will assume that the webroot directory will be /www/monitor/.
Nagios
- Install Nagios
- Copy Nagios docroot into /www/monitor/nagios
- Download and extract the Nuvola Skin (let's face it, Nagios default interface is ugly as hell)
- copy /www/monitor/nagios/index.html to /www/monitor/index.html, and fix the links inside:
<script type="text/javascript" language="JavaScript1.2" src="nagios/config.js"></script> document.write('<FRAME SCROLLING="no" SRC="/nagios/side.html" NAME="side" TARGET="main">');
Munin
- Install Munin
- Change in munin.conf:
htmldir /www/monitor/munin
NConf
- Get it from Sourceforge
- Extract it at the same level as the others tools (i.e. /www/monitor/nconf )
- Follow the official installation guide to setup
Binding all together
NConf integration
- Add a link in the Nuvola menu. Edit /www/monitor/nagios/side/dtree_data.js, and add the following line at the end, just before the document.write(configuration); statemement:
configuration.add(5,0,'Administration','/nconf/','','','side/icons/configuration.gif');
Munin integration
As Munin already output its graphs in /home/monitor/munin, we just have to display it in the main nagios frame (as we did for NConf). Edit /www/monitor/nagios/side/dtree_data.js, and add the following line just before the document.write(reporting); statement:
reporting.add(9,0,'Munin Graphs','/munin/','','','side/icons/reporting.gif');