Archive for the 'Development' Category

Nagios XI 2012r2.0 Now Available

We are pleased to announce that Nagios XI 2012r2.0 is now available. As an ongoing commitment to our customers, this release includes numerous small bug fixes, improvements, and new features to extend upon the most powerful IT infrastructure monitoring solution on the market.

This release includes an upgrade to Nagios Core 3.5.0, which contains bug fixes and updates related to downtime, restarts, and the way non-ASCII characters are handled. To learn more about the changes included in Nagios Core 3.5.0, you may view the changelog here.

Also included in XI 2012r2.0 is an upgrade to NDOUtils 1.5.2, which includes updates to address the effects that low system resources can have on database communications. Read more about NDOUtils 1.5.2 here.

A new feature included in this release is the ability to display a custom logo in your exported reports. In past versions, reports displayed the Nagios XI logo by default, but now with the use of the custom logo component, you may display a logo of your choosing.

An additional feature now allows host aliases (descriptions) to be searched via quick find.

Lastly, as part of this release, XI is now compatible with PHP 5.4.

To view a quick guide on how to upgrade an existing Nagios XI installation to the latest release, click here.

We greatly appreciate the feedback that the Nagios community continues to provide. If there is a feature you would like to see in a future release of Nagios XI, be sure to share your ideas with our tech team in our Nagios Ideas forum!

Nagios SNMP Trap Interface – NSTI v2.0

NSTI version 2.0 has officially been released.  After a lot of hard work, and many feature-rich additions, the Nagios SNMP Trap Interface has been overhauled to include some major performance increases and greater ease-of-use.

The User Interface has been reimagined and streamlined to make exploring and managing SNMP traps much easier.  The functionality of NSTI 2.0 is not hidden within various menus, but exposed on the main GUI to reveal the capabilities of NSTI.  This allows you to parse through streams of SNMP traps more quickly and efficiently.

NSTI Interface

While creating a more straight-forward version of NSTI, advanced functionality was not forgotten.  NSTI 2.0 provides users with a dedicated screen for each trap that presents all of the data that has been captured from that trap.  This allows for the advanced trap information to be accessed easily without cluttering the main NSTI page.

SNMP Trap Information - NSTI

Improvements have also been made to NSTI’s ability to integrate with existing Nagios XI implementations. Integration with Nagios XI makes it easier for system admins to manage and stay on top of SNMP trap information.

  • NSTI now has the ability to write SNMP trap information directly to the Nagios XI server.  This allows checks to be made for unread SNMP traps, and for admins to be alerted to traps based on their status (Critical, Warning, Unknown).
  • Previous SNMP trap management within Nagios XI only showed the last trap that was received, but now NSTI allows you to view all old traps and let the Nagios server know which ones have yet to be read.  This assists the user in keeping track of all historical SNMP trap data.
  • Another major improvement made to NSTI is its ability to force hostname information and sync it with the Nagios XI server.  This allows admins to easily correlate SNMP trap information with the corresponding host on the network, and eliminating tedious sorting of traps and crucial information falling through the cracks.   NSTI Hostname Integration

Official documentation for NSTI 2.0 will be coming soon.  Currently, beta-documentation is available and can be found at: http://assets.nagios.com/downloads/nagiosti/documentation

Please contact nscott@nagios.com for any questions.

Nagios XI 2012r1.4 Improvements

With each new version of Nagios XI, we do our best to include the most important bug fixes, improvements, and features that we can accomplish in a few weeks time. The upcoming Nagios XI 2012r1.4 is going to be a notable release of XI for both performance improvements and internationalization.

Internationalization

For our international users, we’ve been hard at work to update XI appropriately for internationalization, as well as kick-starting multiple translations using Google translate. We’ve been working to balance code updates with community contributions for languages, and this upcoming release will ship with a default.pot file that can be used to update user’s PO files that they may have begun populating. This release of XI will ship with kick-started translations in the following languages.

  • German
  • Spanish
  • French
  • Italian
  • Portuguese
  • Russian
  • Korean
  • Chinese

Performance Improvements in 1.4

For customers with larger installs, we’ve been analyzing bottlenecks in both the monitoring process and the UI to try and make XI run faster and leaner. Users with hosts+services in the thousands will almost certainly see an improvement both in CPU load and page load times in the UI. For changes that affect the monitoring process, we updated the Monitoring Engine Event Queue dashlet and the Monitoring Engine Check Statistics Dashlets to all pull data from the same status information that the rest of XI uses, which reduces an enormous amount of data from needing to be logged to mysql from the monitoring process. The end result of this change is that mysql will only need to be doing about 30% of the work that it was having to do in previous releases. For large installs, this is a big deal!

The other key change that all users will probably see a benefit from is a refactoring of data queries for AJAX loaded content in the XI interface. Load times for dashlets that contain tactical or summary data went from 15-20 seconds per dashlet down to .05 seconds in local tests with 10k checks. The other upside of this change is that the CPU usage from XI users accessing the interface is substantially reduced. The Tactical Overview dashlets see the largest benefit in load times by far. For users who had to utilize the unified Tactical Overview for performance reasons, we encourage you to try the dashlet version in 1.4.

We hope to have 1.4 ready to release sometime this week, we appreciate our community of users and the feedback that we continue to get for our product. Thanks for helping us make XI better!

 

 

Nagios XI 1.3 New Features For Developers

customicon

It seems almost daily that we get new feature requests for Nagios XI, and thanks to a great extensible design by Ethan Galstad, the development team here at Nagios is able to produce new features and components for Nagios XI on a fairly regular basis. However, as the popularity of Nagios XI continues to grow, so does the need for custom features, modifications, and tools for our customers to use. We’ve added several new features and developer hooks into this most recent version of Nagios XI that we wanted to highlight for users who are interested in creating their own custom feature.

#1. Custom login splash. Several of our resellers have requested the ability to customize the login splash page when users log in to direct their end users to their own support channels and services. We’ve add the ability to allow users to specify their own PHP include for that splash by using the Custom Login Component. A template splash file has been added to the Nagios XI directory tree, and will be preserved through upgrades if users want to modify it. This file is located at /usr/local/nagiosxi/html/loginsplash.inc.php.

#2. Custom status column. We’ve added some new callback functions with this release of Nagios XI, one of which is a callback that allows users to add a new table column to the host or service status tables in Nagios XI. A developer example that adds the host notes field to the status tables can be downloaded from the following link. Custom Column Component.

#3. Custom table icons. Thanks to active community member jsmurphy for this one. We’ve added a new callback function in Nagios XI where custom table icons can be inserted the status tables to act as links, or to perform special actions. This feature is demonstrated in the latest version of the Graph Explorer component, where it inserts a graph icon that can be clicked to show a performance graph pop up for the selected host or service right from the status table.

 

The bottom line is, we love feature ideas! We base our development priorities largely on what users are requesting from us, so if there’s a feature you want to see in Nagios XI, by all means post a request to tracker.nagios.com or discuss an idea with our tech team at our Nagios Ideas forum.

 

Nagios Network Analyzer Public Beta Download

Due to the overwhelming demand for the Nagios Network Analyzer public beta interest, instead of the more focus-group oriented beta style, we will be posting the download link and install instructions at the bottom of this post.

If you use it, please do keep in mind it is still beta, and there is a feature freeze, as in bugs have the highest priority. Please inform send bug reports or feedback to nscott@nagios.com.

Install Instructions

Getting Started Instructions

Building a Nagios 4 / Nagios XI Prototype Box

So after an awesome set of presentations at the Nagios World Conference 2012, one of the hot topics for discussion was clearly the upcoming Nagios Core 4 release. Andreas Ericsson has been hard at work overhauling the Core engine to optimize performance and reduce Disk and CPU usage for Nagios, and initial tests are showing his work has paid off in a substantial way. For this experiment, we’re going to use a system with the following specs:

  • Virtual Machine running under Vmware Workstation 8
  • 2GB of RAM
  • 1 CPU, 4 Cores
  • 80GB Hard Disk
  • Nagios XI Installed
  • Nagios binaries replace with Nagios 4 monitoring engine
  • ndoutils binaries replaced with with the latest SVN code for ndoutils: nagios/ndoutils/branches/ndoutils-2-0
  • No initial performance tweaks other than Nagios 4 and ndoutils 2

I’ll post setup instructions below for users who also want to play around with this setup. Note: This setup is not intended for production installs, use this in test environments only!

Start with Nagios XI installed, either through the pre-installed VM or with a manual installation. I chose a manual installation for this demo so I could set up the hardware to my liking and give it sufficient hard drive space to test a LOT of hosts. My first attempt at the prototype only had 10GB on the box, and filled up quite quickly because of performance data. .I ran the following commands after initial Nagios XI installation and setup was completed.

From the command-line:

cd /tmp
yum install -y subversion
svn co https://nagios.svn.sourceforge.net/svnroot/nagios/ndoutils/branches/ndoutils-2-0
svn export ndoutils-2-0/ ndoutils
svn co https://nagios.svn.sourceforge.net/svnroot/nagios/nagioscore/trunk/ coretrunk
svn export coretrunk/ nagioscore
service nagios stop
service ndo2db stop
cd nagioscore
./configure --with-command-group=nagcmd
make all
make install
cd /tmp/ndoutils
./configure; make; make install
cd db
./upgradedb -u root -p nagiosxi -h localhost -d nagios
service ndo2db start
service nagios start

You can verify the upgrade succeeded by reviewing the /usr/local/nagios/var/nagios.log file. There should be some new warnings about obsolete definitions like “failure_prediction_enabled”, which we won’t worry about for now. For now I’d like to see what kind of performance impact I can expect for a large number of checks being run on this machine, so I need to quickly create a large number of checks.  I’ll achieve this by running a tools script that we include with every installation of Nagios XI.

cd /usr/local/nagiosxi/tools
./create_checks.php --hosts=1000 --prefix=_MASS1_ > /usr/local/nagios/etc/static/_MASS1.cfg

I chose to use static configs instead of the CCM for this benchmark for ease of setup time, and also easy removal later on. This also creates a list of checks with 25% of the services showing up as critica, which is useful in testing a system stressed with alerts and notifications. However, I’m also going to turn off notifications and event handlers during this setup phase just to make sure I don’t bottleneck somewhere and tank the entire box. Now lets restart Nagios to start using the new configs.

service nagios restart

After adding 1000 hosts and 4000 services all at a 5mn interval the CPU load is running at a nominal level, averaging anywhere from .30 – .70, which is pretty impressive for a 4 core system! There is still some Disk IO because performance data processing is happening for each service, and this will likely be one of the noticeable bottlenecks as we add more checks to this system. After the system levels out and all of the checks are settled into a hard state, I turn on notifications and event handlers and begin watching the system and testing for bottlenecks. I’ll post back with some results soon! If there are any XI users out there who want to give this a shot in their test environments and post back with their results we’d love to hear what you find!

 

 

 

Nagios XI 2012 Public Beta

cap_planning1

After many months of anticipation and hard work, we are pleased to announce Nagios XI 2012 Beta is ready for public testing! XI 2012 is loaded with a variety of new features, and we’d love your help in making sure that 2012 is ready for full release as soon as possible. A key difference with the release of 2012 is that there will be both an Enterprise Edition and a Standard Edition, with the Enterprise Edition being targeted at users with larger environments.

Continue reading ‘Nagios XI 2012 Public Beta’

Automated Host Management In Nagios XI

This document describes how to automate adding and removing hosts and services in Nagios XI from the command line. Some administrators may have need to automate the process of adding and removing hosts and services in Nagios XI for use with cloud computing or large environments where solutions like Puppet or Chef may already be implemented. The procedures below outline how administrators can create their own automation solutions to safely add and remove hosts and services in Nagios XI while still maintaining the integrity of the monitoring environment.

Automated Host Management Documentation

Nagios Fusion 2012 Preview

fusion2012_1

Need a simpler solution for scaling Nagios?  Distributed monitoring environments often contain several Nagios servers in order to cover multiple geographic or network locations, or sometimes just to scale large enough on a single network.  Nagios Fusion 2012 is a central dashboard and data aggregation for all of your Nagios installations.  Fusion 2012 will integrate seamlessly with Nagios XI and Nagios Core 3.x installs, and requires no additional configuration changes on any of your Nagios servers.  Here’s a highlight of the current feature list:

 

  • Unified authentication for all Nagios XI servers
  • User-defined, customizable dashboards and menus
  • Easily drill down to any Nagios server to find problems
  • Fused Tactical Overview information
  • Fused Health Summaries for Nagios servers
  • Fused  Alert Summary
  • Fused Alert Histogram
  • Fused Top Alert Producers
  • Several new data visualizations

 

The power exists in Nagios Fusion to aggregate almost any information across multiple Nagios installs.  The main question we’re looking at from here is: “What do users want to see in their central Nagios dashboard?”  We’re interested in getting some user feedback for ideas on this project as well as some beta testers for the upcoming release.  Here are some screenshots to give an idea as to what is to come.

 

Nagios V-Shell 1.9 Released

vshell2

Nagios V-Shell 1.9 includes major performance updates, and a re-implementation of PHP caching that should decrease V-Shell page load times anywhere from 40-75%.  I ran some benchmarking tests on a test system(Dual core desktop with 4GB of RAM) with 1800 hosts, and 7200 services.  This system runs with an average CPU load of 2.0-6.0 throughout the day, so the hardware is being pushed pretty hard already from the check load. V-Shell 1.8 created page load times anywhere from 18-28 seconds throughout the interface without APC caching enabled.  Needless to say, this is problematic for many users with larger environments.  The Core cgi’s were able to load anywhere from 2-11 seconds, with the service status page taking around 9-11 seconds to load all of the data.  My goal for 1.9 was to minimize any unnecessary processing, and optimize any functions that were inefficient or using slower PHP built-in functions.  The differences in 1.9 are substantial.  Without any caching enabled at all, I was able to decrease the average page load time to 9-14 seconds, which is 40-50% faster by itself.  Once I had the code optimized, I reworked the APC caching functionality.  If a user has PHP’s APC caching packages installed and enabled on their web server, V-Shell will cached the objects.cache file until it detects any changes in the file, while the data in the status.dat file will be cached based on a TTL (time to live) config option which now exists in 1.9.  Once the data is cached in APC, the page load times throughout the interface averaged between 4-5 seconds for all pages, which is a 75% decrease in load time on average.

My goal for the next version of V-Shell is to add support for mklivestatus and ndoutils for backend data, which will eliminate the need to parse the objects.cache file and status.dat files for systems with those backends.  This should further improve performance for larger installations.

Download Nagios V-Shell 1.9

CHANGELOG