NRD: Nagios Result Distributor

511 views
376 views

Published on

Short presentation about the motivations of implementing NRD in Perl

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
511
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

NRD: Nagios Result Distributor

  1. 1. NRD Nagios Result Distributor
  2. 2. NSCA resumed
  3. 3. But • NSCA (Nagios Service Check Acceptor) – Lots of limitations • • • • 63 char hostnames 127 char service names No multiline Result data limited too (512 bytes) – In Opsview it was frustrating that “bigger” (distributed) instalations got limited features
  4. 4. Looked at NSCA code… • Problems didn’t seem fixable in a backwards compatible manner. – Reimplementation in a dynamic language seemed easy (after all, just pushing results around a network) • Is a dynamic language a problem? – I Think not • Performance – Just do things right… Optimize later • Flexibility – Prototype new functionality
  5. 5. Welcome Perl • Fast (enough) • Flexible • Added value – CPAN
  6. 6. Code reuse • Net::Server – Process model – Config file • JSON::XS – Fast (blazingly fast) • Crypt::CBC – Free Crypt::XXX functionality • Digest::XXX
  7. 7. So what did I do? Just play around with the components Idea,Implement, abstract, implement, abstract, i dea, abstract, implement… Did I say that there is a test suite?
  8. 8. So what did I do? Just play around with the components Idea,Implement, test, break, implement, test, ab stract, idea, abstract, implement, test, abstract , test…
  9. 9. Flexibility in development • Fast changes – SSH tunnel tests show that client can think that a packet was sent… but the server never recieves it – commit packet implemented • writers benefit from new “commit” functionality
  10. 10. New functionalities • Serializers – plain, crypt, digest • Writers – resultdir and cmdfile
  11. 11. Open up! • googlecode project from the start – Ton Voon (Opsview project starts testing NRD) • Committing actively with really good results – – – – NRD::Client SSH tunnel testing Documentation Help with writing to resultdir
  12. 12. And Perl added value? • CPAN Testers!
  13. 13. Results (Based on sending 2016 results in a single transaction over an SSH tunnel from a slave to a master. Times measured on the client.) So in the end NRD is faster and less traffic consuming than NSCA
  14. 14. Get NRD • https://code.google.com/p/nrd/

×