Successfully reported this slideshow.
Your SlideShare is downloading. ×

Naemon 2019-11-06

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Siebel monitoring
Siebel monitoring
Loading in …3
×

Check these out next

1 of 32 Ad
Advertisement

More Related Content

Slideshows for you (20)

Similar to Naemon 2019-11-06 (20)

Advertisement
Advertisement

Naemon 2019-11-06

  1. 1. Naemon & Friends Sven Nierlein 06.11.2019
  2. 2. Naemon
  3. 3. Naemon & Friends 3 Introduction Active Checks Passive Checks Alerts Metrics Event- handler Data Naemon API
  4. 4. Naemon & Friends 4 Provide APIs 
 Providing easy and flexible APIs allows creating replaceable modules and gives the freedom of choice for certain tasks. No full stack vendor lock-in. Focus on primary task 
 Following the UNIX philosophy and do one thing. In this case, run check plugins and process events. 

  5. 5. Naemon & Friends 5 Non-Programmable APIs • Event Handler • global_host/service_event_handler • per host/service event handler • Performance Data • host/service_perfdata_command • host/service_perfdata_file • host/service_perfdata_file_processing_command • Service / Host data processing • obsess_over_hosts/services • ocsp_command / ochp_command
  6. 6. Naemon & Friends 6 Query Handler 
 Subscribable modular API to ex.: receive status updates. Register own query handler modules. Set internal configuration variables. Fetch statistics. Livestatus 
 Provides live status data and log file history, but also sends external commands back to the naemon core. Supports JSON, Python and CSV Format. NEB Module 
 Generic C API. NEB modules are loadable C library files with direct access to naemon-cores memory. This is very powerful but requires deeper knowledge of naemons internals.
  7. 7. Naemon & Friends 7 Common NEB Modules Thruk, Nagvis, OP5 Monitor, ... Checks, Metrics Database, Redundancy Database, UI Metrics Livestatus Mod-Gearman Merlin Statusengine NPCD (PNP) NEB Modules Naemon-Core
  8. 8. Livestatus 
 Query status data and logfiles. •Fast •Live •JSON •Powerful statistics Naemon Bonus: •wrapped_json •Offset •Sorting
  9. 9. Naemon & Friends 9 Livestatus II
  10. 10. Naemon & Friends 10 Livestatus III
  11. 11. Friends
  12. 12. https://github.com/ITRS-Group/monitor-merlin Merlin 
 Module for Effortless Redundancy and Loadbalancing In Naemon. •Used to create Multi- Master setups
  13. 13. https://statusengine.org/ Statusengine 
 Statusengine is a web ui based on the status engine NEB module and a database. •Mobile &Big Screen friendly •Responsive
  14. 14. https://github.com/alerta/nagios-alerta Alerta 
 Alerta is a alert management system.
 
 Offers De-duplication and simple correlation
  15. 15. package main import ( "github.com/ConSol/go-neb-wrapper/neb" ) func init() { neb.Title = "GO GO Neb Wrapper! *o/*" neb.Name = neb.Title neb.Desc = "description" neb.License = "GPL v3" neb.Version = "1.0.0" neb.Author = "..." exampleCallback := func(callbackType int, data unsafe.Pointer) int { neb.CoreFLog("Example Callback1 logged for %d", callbackType) return neb.Ok } for _, t := range []int{neb.ProcessData, neb.HostStatusData} { neb.AddCallback(t, genericCallback) } } func main() {} https://github.com/ConSol/go-neb-wrapper Golang NEB modules 
 Writing NEB modules has never been easier.
  16. 16. Metrics
  17. 17. PNP 
 PNP transforms performance data from check plugins into rrd data files and provides a web ui to show the graphs. https://docs.pnp4nagios.org/
  18. 18. Nagflux / Influxdb /
 Histou /
 Grafana
 Nagflux processes performance data, either from the spool folder or via gearman queues, adds downtime and comment information by livestatus and writes that into the Influxdb. Histou creates dynamic dashboards in Grafana. https://labs.consol.de/omd/howtos/grafana/
  19. 19. UIs
  20. 20. https://www.thruk.org Thruk 
 Monitoring Web UI. •Status Pages •Reporting •Dashboards •Business Process Modeling •Configuration Editor
  21. 21. Tools
  22. 22. https://github.com/sni/lmd LMD 
 The Livestatus Multitool Daemon consumes livestatus sources and provides a combined livestatus socket. •Remove latency •Bridge over core reloads •Unify livestatus response •Add TLS layer
  23. 23. https://github.com/ConSol/mod-gearman-worker-go/ https://mod-gearman.org/ Mod-Gearman 
 Add distributed monitoring to naemon. •NEB-Module •Distributed Worker •Rewritten Worker in Golang •event vs. prefork •cross-platform •metrics •Export Metrics to Nagflux
  24. 24. Suites
  25. 25. https://www.op5.com/op5-monitor/ OP5 Monitor 
 Naemon based monitoring suite. •SNMP Traps •Business Service Management •Log Server Monitoring
  26. 26. https://openitcockpit.io/ openITCockpit 
 Full stack monitoring solution. •Template based configuration •Multi tenancy •Granular user permissions •Event Correlation •Autoreports
  27. 27. OMD 
 OMD is a single RPM/Deb installable monitoring toolbox containing: •Naemon •Grafana •Thruk •Mod-Gearman •Lots of Check-Plugins •and many more...
  28. 28. What's next?
  29. 29. What's next I
 There are minor enhancements on the roadmap. •statehist table •dependency options
  30. 30. What's next II
 Directly access the query handler with livestatus. Because you don't want to have multiple APIs to do one thing. Ideally it should return JSON data of course.
  31. 31. Thank you!
  32. 32. ConSol Consulting & Solutions Software GmbH St.-Cajetan-Straße 43 D-81669 Munich Germany Tel.: +49-89-45841-100 info@consol.de www.consol.com Twitter: @consol_de

×