[smokeping-users] Smokeping/FPing scalability guidelines?
ged at jubileegroup.co.uk
Thu Jun 19 17:15:31 CEST 2008
On Thu, 19 Jun 2008, Allan Eising wrote:
> ... 20 FPing processes ... 1997 nodes to be monitored ... the FPing
> processes take too long ... any guidelines for a recommended number
> of hosts per FPing process, so I might be able to write this into my
> system, to maintain scalability.
Unfortunately object-oriented Perl, while great for prototyping and
coding on the hoof, is fairly costly in terms of computer resources.
I think that's at least partly what you're up against.
My feeling is that the entire setup isn't really scalable. Looking at
the processes running on my master smokeping host, about 1500MBytes of
RAM (25 percent of the memory in the host) is used by approximately
thirty processes (mostly FPing) in order to do little but sleep for
the next few hundred seconds. Between them, in a couple of days they
have used nearly as much CPU as the X server has in a month - almost
three minutes. The network I'm monitoring has only a few dozen hosts.
Meanwhile my trusty cron process runs more stuff than you can shake a
stick at with next to no load on the server - just under a megabyte,
and 7.2 seconds of CPU in a month.
It is certainly feasible to ping a few thousand hosts using a single
process without gobbling up gigabytes of memory and seconds of CPU.
I'm tempted to code something but I'm convinced that it must already
have been done. If I did write something, it would be in C. I'd be
very disappointed if it used more than a couple of megabytes of RAM,
and more than a few milliseconds of CPU per host per ping cycle which
would include logging the results to a database.
I hope that these back-of-an-envelope figures give you an idea of what
should ultimately be achievable. Are you doing a lot of logging? You
might be able to trim things by eliminating unnecessary disc accesses.
None of this should be relevant to the Web front-end of course, most
of the time you don't even need to be running it.
More information about the smokeping-users