Winter 2011 Handout - Installing and Configuring Icinga to Monitor the Arm Build Farm

From CDOT Wiki
Revision as of 21:50, 12 April 2011 by Gcasella (talk | contribs) (Links)
Jump to: navigation, search


Status

This page status is: DRAFT.

Title

Installing and Configuring the Icinga monitoring software to Monitor the Arm Build Farm in CDOT.

Participants

Gian-Luca Casella (IRC:gcasella) -- Semester 6 CTYC Student at Seneca College.

Introduction

Icinga is an enterprise grade open source monitoring system which allows administrators to keep watch over networks. Administrators will be able to monitor a series of devices such as Linux and Windows environments and also CISCO products. Using this monitoring system will notify users of errors and recoveries while generating performance data for reports. After learning that CDOT at Seneca College was using Nagios -- which is outdated and contains a series of bugs -- as their monitoring system for the Arm Build Farm I decided to scrap their current configuration and implement Icinga. And because Icinga is backwards compatible with Nagios and their plugins, porting over the configuration files was nothing but a copy and paste.

Approach

My approach to Installing and Configuring Icinga can easily be broken into three parts. Installing, Configuring, Monitoring. Before deploying Icinga into the CDOT Build Farm I had decided to conduct appropriate testing of the software on my own VMWare ESXi Infrastructure in my home. For proper testing I created five virtual machines all running Fedora Core 12 or higher, four of these Virtual Machines will be labeled as clients. Being a System Administrator I know that when a new software needs to be put in place it must go through extensive testing and troubleshooting before it is given the OK to be put in the "production" environment.

Icinga only has one method of Installation available under Fedora, this is by Source Code and not being a part of my project I decided to work with a colleague of mine to build an RPM for the newest version of Icinga -- this allowed for an easy install and uninstall of the software. Icinga has a series of features that need to be taken into account before planning to distribute, and throughout my approach there are three major part of Icinga; Icinga Core, Icinga Web, and Icinga API. My primary Virtual Machine running Fedora Core 12 will act as my Icinga Core(server) which will be the primary location of the Icinga Web and the Icinga API by default, a nice feature of Icinga allow's us to separate all of these parts onto their own systems and still be able to communicate with each other. For more detailed information on my procedure and progress can be found on my blog at http://gcasella.blogspot.com.

No preliminary preparations needed to occur on the system that Icinga was going to be installed on, the only thing was to install the required packages in order to install the software. These lists of packages can also be found in the Icinga Documentation. While using my four other Virtual Machines as the clients, I was able to test my Icinga configuration, in order for this to be successful each one of the client machines that are running Linux needed to contain the "Nagios Remote Plugin Executor (NRPE)" software and plugin. This allows the Icinga server to execute commands on these remote server to check the CPU performance, users logged in, total processes running, HTTP service, FTP service, etc...

Challenges

Results

Links

Acknowledgments

A contributor of my project is Mike Kirton who I had worked with in creating an RPM for Icinga.

Pictures / Graphics