370 likes | 393 Views
Embedding Nagios in the Raspberry Pi. 26 th September 2012. Dave Williams. Lead Technical Architect. Agenda. Agenda. Background The Raspberry Pi The Raspberry Pi Nagios Recipe Using DNX on the Raspberry Pi Demonstration Futures & ‘Blue Sky thinking’ Conclusion. Background. UK based
E N D
Embedding Nagios in the Raspberry Pi • 26th September 2012 • Dave Williams • Lead Technical Architect
Agenda • Background • The Raspberry Pi • The Raspberry Pi Nagios Recipe • Using DNX on the Raspberry Pi • Demonstration • Futures & ‘Blue Sky thinking’ • Conclusion
Background • UK based • Mainframe (IBM & Honeywell) • Unix (HP-UX,AIX, Solaris) • Network (CASE, 3COM, CISCO) • Working for Bull • French Computer Manufacturer • Mainframes, Unix, HPC, Security, Managed Services
Background • System Monitoring • OpenView • Netview • Open Master • Open Source Monitoring • NetSaint on AIX • Nagios
The Raspberry Pi • Eben Upton and his colleagues at the University of Cambridge’s Computer Laboratory, became concerned about the year-on-year decline in the numbers and skills levels of the A Level students applying to read Computer Science in each academic year • The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video.
The Raspberry Pi • Raspberry Pi’s are nearly everywhere • http://rastrack.co.uk
The Raspberry Pi • The demo / sample system is running Debian – Squeeze • Soon to be updated to Wheezy
The Raspberry Pi Nagios Recipe • See http://exchange.nagios.org/directory/Documentation/Nagios-Core-Documentation/Nagios-and-Raspberry-PI/details • Yes it’s already in the Nagios Core documentation set !
The Raspberry Pi Nagios Recipe • #apt-get update • #apt-get install php5 apache2 libgd2-xpm libgd2-xpm-dev libgd2-dev libpng12-dev libjpeg62-dev libgd-tools libpng12-dev libgd2-xpm libgd2-xpm-dev libssl-dev gnutls-bin iputils • #groupadd www-data • #groupadd nagios • #adduser nagios • #usermod -G nagios nagios • #usermod -G www-data,nagios www-data • #mkdir /usr/local/nagios • #chown -R nagios:nagios /usr/local/Nagios
The Raspberry Pi Nagios Recipe • Whoops ! We also need GD-Utils…. • root@raspberrypi:/tmp# wget http://www.boutell.com/gd/http/gd-2.0.33.tar.gz • root@raspberrypi:/tmp# tar -zxvf gd-2.0.33.tar.gz • root@raspberrypi:/tmp/gd-2.0.33# ./configure • root@raspberrypi:/tmp/gd-2.0.33# make && make install
The Raspberry Pi Nagios Recipe • Now we need to get on and install: • root@raspberrypi:/tmp# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.1.tar.gz • root@raspberrypi:/tmp# tar xzf nagios-3.4.1.tar.gz • root@raspberrypi:/tmp/nagios# ./configure –prefix=/usr/local/nagios –with-cgiurl=/nagios/cgi-bin –with-htmurl=/nagios/ –with-nagios-user=nagios –with-nagios-group=nagios –with-command-group=nagios • And then make: • root@raspberrypi:/tmp/nagios# make all
The Raspberry Pi Nagios Recipe • root@raspberrypi:/tmp/nagios# make install-init • Install and configure the directory for that holds the external command file: • root@raspberrypi:/tmp/nagios# make install-commandmode • Install the apache configuration: • root@raspberrypi:/tmp/nagios# make install-webconf • And at the end install the sample config files: • root@raspberrypi:/tmp/nagios# make install-config • Restart the apache daemon: • root@raspberrypi:/tmp/nagios# /etc/init.d/apache2 reload
The Raspberry Pi Nagios Recipe • Now for the plugins : • apt-get install nagios-plugins nagios-snmp-plugins • Or by compiling them: • root@raspberrypi:/tmp# wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz • root@raspberrypi:/tmp# tar xzf nagios-plugins-1.4.15.tar.gz • root@raspberrypi:/tmp/nagios-plugins-1.4.15# ./configure • root@raspberrypi:/tmp/nagios-plugins-1.4.15# make && make install
Using DNX • 1.Download the automated installation script to the /tmp directory: • # cd /tmp • 2. # wget http://assets.nagios.com/downloads/nagiosxi/scripts/NagiosXI • 3. Make the script executable: • # chmod +x NagiosXI-DNX.sh • 4. Run the script in client mode • # ./NagiosXI-DNX.sh -c • 5. Repeat steps 1-4 for each slave system. • 6. Repeat steps 1-3 on the master Nagios server. • 7. Run the script in server mode, optionally enabling automatic synchronization
Using DNX • Of course it’s not that easy : • Modify the script to run under Debian, • 206c206 • < # iptables -I INPUT -p udp --dport 12480:12482 -j ACCEPT • --- • > iptables -I INPUT -p udp --dport 12480:12482 -j ACCEPT • 246c246 • < wget -c $DOWNLOAD_URL -o dnx-$DNX_VERSION.tar.gz • --- • > wget -c $DOWNLOAD_URL
Demonstration • First the Raspberry Pi running Nagios & DNX Oh – just one more thing…..
Futures & ‘Blue Sky thinking’ • No limits to the possible uses for the RaspberryPI: • Remember it has a GPIO output capability so…. • For example true ‘traffic light displays’
Futures & ‘Blue Sky thinking’ • No limits to the possible uses for the RaspberryPI: • Rolling text displays • Digital Signage – Screenly-ose (on github.com)
Futures & ‘Blue Sky thinking’ 3D image of Tera 100 You could build a supercomputer like this
Futures & ‘Blue Sky thinking’ Iridis-pi But with Raspberry PI it might look like this – 64 nodes using Message Passing Interface Futures & ‘Blue Sky thinking
Futures & ‘Blue Sky thinking’ Iridis-pi Pair of Raspberry PI compute nodes in their Lego racking enclosure Futures & ‘Blue Sky thinking
Futures & ‘Blue Sky thinking’ • How about adding a simple PBX to your current Nagios set-up? Or just two lines that tell you something ?
Futures & ‘Blue Sky thinking’ • Take data from a weather station and post Twitter feeds & web site info
Conclusions For $35 this is a ‘fire & forget’ solution Quite capable of monitoring SME’s and with DNX support even larger environments Possibly the easiest way to drive / monitor exotic devices Only limited by your imagination
Standard slide with title, text over two columns • First level text • Second level text • Third level text • Fourth level text • First level text • Second level text • Third level text • Fourth level text
Colour palette Core colours BOOST colours R178 V178 B178 R95 V95 B95 R41 V41 B41 R0 V117 B182 R96 V52 B129 R151 V191 B13 R119 V185 B0 R0 V128 B0 R238 V134 B0 R182 V0 B34 R255 V204 B102
Click to add title • click to add text
Standard slide with image Le cloud by Bull logo
Standard slide with title and image 3D image of Tera 100