Max number of services that can be monitored ?

Rob Moss robmossrm at aol.com
Tue Oct 11 14:44:13 CEST 2005


misc at viceconsulting.co.nz wrote:

>The Nagios server is a dedicated Nagios server, it is not doing anything
>beyond Nagios.  It is monitoring 60 hosts.  Each host has 16 services
>configured on it.  Of those 16, 14 are run on the local host via
>check_nrpe, the remaining 2 are run on the Nagios server and are check_ssh
>and check_ntp (check_ntp is a Perl script.)
>
>The nagios is also self monitoring itself via check_disk, check_load,
>check_procs and a couple of shell scripts.
>
>Just out of interest, if you have NOT enabled embedded Perl, then am I
>correct in saying that Nagios will INVOKE a Perl script in the exact same
>way as it will invoke a C plugin, such as check_nrpe ?  ie it will do a
>fork() and run a given program, be it Perl, Shell, C etc.
>  
>

Yep correct.  Except that when you run the Perl script, it will load the 
Perl interpereter which in most systems is ~ 5mb and also read in a 
bunch of modules too.  This is (probably) the reason why there's an 
option to compile in the Perl interpereter, to save all of those overheads.

Some of the checks are wrappers around other programs like check_ping.  
This one runs /usr/bin/ping and evaluates the output.  I would recommend 
replacing that with check_icmp (which works the same) as it's a compiled 
C program which does all the work itself.

What are the standard checks you are doing? There may be alternate 
plugins to do the same job that are more efficient. Have you installed 
the nagios-plugins pack?

>I have about 160MB of RAM free, and that amount has been free for several
>days, swap hasn't been touched.
>
>Should I remove the NTP check, is it really going to be such an issue
>given its only 1 of 16 services is using Perl?
>  
>
Lets see.. Every 5 minutes you check 60 hosts, so thats 60 times you 
invoke the perl interpereter.. even if it's cached, its still lots of 
extra processing that could be done more elegantly if you compiled in 
the perl interpereter with the nagios daemon.

>With embedded Perl enabled, I was getting memory leaks which was
>eventually crashing the Nagios server so I disabled it.
>  
>
Which version of perl, and what platform? x86? sparc?

Older versions of perl (pre 5.6) had some problems being compiled in to 
apps such as mod_perl and stuff, but 5.6.1 or above "should" be fine.

Memory leaks in Solaris wouldn't surprise me, but any of the Linuxes or 
BSD's would..  I'm runing Solaris 8 Sparc with Perl 5.6.1 builtin 
without any known leaks..

Cheers
rob.



-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
Nagios-users mailing list
Nagios-users at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nagios-users
::: Please include Nagios version, plugin version (-v) and OS when reporting any issue. 
::: Messages without supporting info will risk being sent to /dev/null





More information about the Users mailing list