Page 1 of 1

Using NDOutils

Posted: Tue Mar 20, 2012 11:45 am
by jgk999
Hi,
I am coming up to speed in support of a system that uses Nagios + Centreon configured with multiple Nagios remote pollers. My installation includes Nagios-3.2.3, Centreon-2.2.2, nagios-plugins-1.4.15, and ndoutils-1.4b9. I am trying to understand where, how, and why, NDOutils fits in this picture. Most of the information and on-line documentation I've found on NDOutils provide a lot of great information right up to the point that the ndo2db process inserts data into one of the MySQL DB "historical" tables (e.g. nagios_timedevents, nagios_systemcommands, nagios_logentries, etc.). Then what? Who or what would then use this data? The Centreon applications do not appear to (centcore, centstorage); centcore reads the nagios.log files and perfdata directly off the remote pollers using SCP. Is my configuration missing the component that operates on centstatus tables? Is there some other Centreon config parameter I've overlooked that is used to invoke a Centreon component to process the centstatus data?

What should I be using for this purpose? NagVis? Is NagVis compatible with Centreon and commonly paired with it? Are there other alternatives to NagVis that can be combined with Centreon that would utilize the centstatus tables?

I am kind of surprised that Centreon would go ahead and let me configure the NDO broker stuff without also verifying that I had the other requisite components configured that used centstatus. Is there some other Centreon add-on that uses the centstatus historical data? Please help clear up my confusion.

Thanks for whatever guidance you can offer.
Jerry

Re: Using NDOutils

Posted: Tue Mar 20, 2012 1:32 pm
by mguthrie
I'm not much help on the Centreon side of things, you'd have to ask on their support channels. However, usually people use ndoutils as a scalable solution to fetch nagios status information. NagVis can uses it, as well as probably several other addons. If you have external or 3rd party apps that need to work with Nagios status data, I'm guessing that's why it's there. If you don't have any applications or addons like that, then there isn't really a reason to have it. Oh, the other thing you can do is retrieve data from ndoutils to export to some external reporting tool. Hope that helps.

Re: Using NDOutils

Posted: Tue Mar 20, 2012 2:13 pm
by jgk999
Thank you. I actually did start out on the Centreon forum and did get a reply
http://forum.centreon.com/showthread.ph ... figuration
but the reply failed to address my entire question (i.e. what specific Centreon component, if any, inputs data from the NDO DB), and my follow-up request there has not gotten any subsequent response. But as I think more about the reply I did receive I have come to the conclusion that Centreon itself does not actually utilize the centstatus data base created by NDOutils.

I assumed that the use of Centreon with Nagios was sufficiently widespread that there would be experts on this Nagios forum with actual hands on experience using NDOutils in a Nagios+Centreon configuration who would be able to comment knowledgeably regarding how the NDO DB tables are used in practice, and who might be able to confirm my conclusion that Centreon never actually uses the NDO DB.

Thanks again,
JK

Re: Using NDOutils - a correction

Posted: Tue Mar 20, 2012 11:43 pm
by jgk999
After more investigation I realize the issue is somewhat more nuanced than it seemed to me at first glance.
I feel I need to set the record straight in case someone else seeking similar information should be misled by
my earlier erroneous conclusions.

The NDOutils database consists of four basic classes of table:
+ historical tables that store an on-going record of events received from remote Nagios poller instances. There are 16 such tables.
+ Nagios poller status tables that track the current state of hosts and services that Nagios monitors. There are 8 such tables.
+ Nagios poller configuration tables that are used to record some poller configuration data.There are 27 such tables.
+ the NDOutils configuration tables that define the set of remote Nagios pollers and other Nagios objects (there are 3 such tables)
This is explained more thoroughly in the following detailed specification:
http://nagios.sourceforge.net/docs/ndou ... _Model.pdf

My earlier comment regarding the extent to which Centreon did not seem to utilize the NDOutils DB was confined to the first class of table only,
the historical tables. Of these 16 tables Centreon inputs data from only two of them, nagios_downtimehistory and nagios_processevents.
The remaining 14 tables are apparently created and populated with data from remote pollers by ndo2db in support of other 3rd party, that is,
non-Centreon, applications.

The 2nd set of tables, the Nagios poller status tables, are indeed accessed by the Centreon aplication; in particular the 5 tables,
called comments, hoststatus, programstatus, scheduleddowntime, and servicestatus, are read by Centreon and are required
for a number of Centreon functions. Some of the 3rd set of tables, Nagios poller configuration tables, are also read by Centreon.

This set of status tables and the 3rd set of of tables, the configuration tables, are initialized (i.e. SQL row deleted) on
a per-instance basis at the start of each new connection from the particular remote Nagios poller instance.

I realize this topic is more appropriate for the Centreon forum but since I had already introduced the topic on this
forum I felt I needed to close it out here as well.