Parallel collector released

"Kiss Gabor (Bitman)" <[email protected]> Mon, 23 Sep 2013 14:51:35 +0200 (CEST)
Newsgroups gmane.network.cricket.user
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dear folks,

I've developed a massively parallel version of collector.
It uses Net::SNMP Perl module to spread several (actually 512)
concurrent SNMP requests to devices to poll.

We use it in production since a week without any problem.
I've experienced that pcollector needs time 40-70% less to run
than collector does.
(We have some 5800 SNMP polled device with variable number
of interfaces and datasource complexity. Target number is about 22k.)

The code is available as a Debian package from my private repository
at http://debian6.ki.iif.hu/. (It is IPv6 only. Sorry for that.)

Actual version is 1.0.5-19niif.5.
Directory of binary and source packages is
http://debian6.ki.iif.hu/pool/main/c/cricket/

*******************************************************
	*** Attention ***
This is "No Country for Old Men". :-)
Our version of Cricket contains tons of enhancements and
localizations developed in the past 10 years at NIIF Institute
and Computer and Automation Institute (SZTAKI). It is obviously
not a drop-in replacement of the program actually used by you.
DO NOT install it unless you know what do you do.
	I warned you.
*******************************************************

However you may want to study end develop pcollector program
and its supporting library called Collector::Parallel.
In the source package it is the file debian/patch/niif/58_pcollector.patch
you may interested in.

Minor changes and enhancements are to be expected in the near future.

FYI:
Our crontab looks like this:

COLLECT=/usr/share/cricket/collect-subtrees
PCOLLECT="/usr/share/cricket/collect-subtrees --parallel"

0-59/5 * * * * cricket $PCOLLECT slot0 >/dev/null 2>&1
1-59/5 * * * * cricket $PCOLLECT slot1 >/dev/null 2>&1
2-59/5 * * * * cricket $PCOLLECT slot2 >/dev/null 2>&1
[...]

The slightly modified collect-subtrees accepts a --parallel or -p
options and starts pcollector instead of legacy collector.

pcollector first tries to gather and to cache all of the data
reachable by SNMP then runs as legacy collector does:
sequentially. When it needs an SNMP variable it gets from the
cache if possible. In case of any problem (e.g instance remapping)
it falls back to old mode.

I hope you will find it useful. :-)

Cheers

Gabor
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Made with pgp4pine 1.76

iEYEARECAAYFAlJAOVkACgkQd2oiOrtquzh94ACfZYCPGJSPYq++Eo8hBzqpiOaH
LtwAnjCGnD93T7fSr0uKO7Lk1AxxJk+q
=zrm+
-----END PGP SIGNATURE-----


------------------------------------------------------------------------------
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint
2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes
Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. 
http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk