alternative scheduler

Max Schubert maxs at webwizarddesign.com
Tue Nov 23 14:51:29 CET 2010


Hi fredrick,

I started to work on an OS independent plugin execution module in
Erlang a few months ago, would love to talk to you about your project.

With lots of tuning we get around 13k checks per 5 mins in our dual
quad core pollers, that includes some simple C paatches that we have
available online (will send the URLlater today - none made it into
Nagios but a few made it into Icinga).

We see an open high performance distributed Erlang based polling tier
as part of the future of scaling monitoring at my place of work, I
have an os indepemdemt pllugin execution module started and  I would
love to talk to you off list about this and be a part of developing
your project.
Max

On 11/23/10, Fredrik Thulin <ft at it.su.se> wrote:
> In case that was too long for y'all, the short story is that I got lousy
> performance from the service check scheduler in Nagios (3.2.0, sorry -
> forgot to mention that).
>
> I was able to write a brand new scheduler that works MUCH better - 1160
> checks per minute, compared to ~60. Any plans to do something drastic
> about the Nagios service check scheduler?
>
> /Fredrik
>
> On Sat, 2010-11-20 at 14:22 +0100, Fredrik Thulin wrote:
>> Hi
>>
>> I've had problems with my distributed Nagios installation. The slave
>> server just wouldn't start enough checks per time unit, and I think I
>> spent two full days searching for answers and testing every
>> configuration change others in the same situation had reported success
>> with (the configuration I ended up with is at the bottom of this mail).
>>
>> I set up MRTG monitoring, and saw something incredibly strange - Nagios
>> would start out with quite a few services per minute, but then over time
>> level out at something like 50 services per minute (!), until restarted
>> again.
>>
>> http://people.su.se/~ft/test/mrtg_nagios-dev-srv1_2010-11-19/nagios-f.html
>>
>> Had I been a C programming wizard, I surely would have tried to find the
>> problem in Nagios and fix it, but I'm not. However I DO know how to
>> program massively concurrent things in Erlang, so I created a proof of
>> concept Nagios scheduler in about 350 lines of Erlang code (not
>> kidding).
>>
>> Thanks to the excellent modular design in Nagios, this was very simple.
>> My application just invokes another service checks every 50ms or so, and
>> sends the result to the Nagios master using a classic send_result
>> shell-script (NCSA).
>>
>> Look at these new graphs
>>
>>   http://people.su.se/~ft/test/mrtg_nagios-dev-srv1/nagios-f.html
>>
>> Quite an improvement. Executing around 5800 service checks per five
>> minutes, on a very low end server I'd say.
>>
>> To be fair, at around 11:00 I shut down the virtual machine and gave it
>> another CPU (now 2) and another 256 MB of RAM (total 512).
>>
>> Anyone interested in further development of this? I've released it under
>> a BSD license, and you can find the code at
>>
>>   https://github.com/fredrikt/nagios-pers
>>
>> /Fredrik
>>
>> PS. Main configuration on my distributed servers :
>>
>> log_file=/local/nagios/local/nagios.log
> ...
>
>
> ------------------------------------------------------------------------------
> Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
> Tap into the largest installed PC base & get more eyes on your game by
> optimizing for Intel(R) Graphics Technology. Get started today with the
> Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
> http://p.sf.net/sfu/intelisp-dev2dev
> _______________________________________________
> Nagios-devel mailing list
> Nagios-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nagios-devel
>

------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev




More information about the Developers mailing list