SlideShare a Scribd company logo
1 of 32
Download to read offline
Naemon	&	Friends
Sven	Nierlein
06.11.2019
Naemon
Naemon	&	Friends 3
Introduction
Active
Checks
Passive
Checks
Alerts
Metrics
Event-
handler
Data
Naemon
API
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.	


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
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.
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
Livestatus	

Query	status	data	and	
logfiles.	
•Fast	
•Live	
•JSON	
•Powerful	statistics	
Naemon	Bonus:	
•wrapped_json	
•Offset	
•Sorting
Naemon	&	Friends 9
Livestatus	II
Naemon	&	Friends 10
Livestatus	III
Friends
https://github.com/ITRS-Group/monitor-merlin
Merlin	

Module	for	Effortless	
Redundancy	and	
Loadbalancing	In	Naemon.	
•Used	to	create	Multi-
Master	setups
https://statusengine.org/
Statusengine	

Statusengine	is	a	web	ui	
based	on	the	status	engine	
NEB	module	and	a	database.	
•Mobile	&Big	Screen	friendly	
•Responsive
https://github.com/alerta/nagios-alerta	
Alerta	

Alerta	is	a	alert	management	
system.



Offers	 De-duplication	 and	
simple	correlation
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.
Metrics
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/
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/
UIs
https://www.thruk.org	
Thruk	

Monitoring	Web	UI.	
•Status	Pages	
•Reporting	
•Dashboards	
•Business	Process	Modeling	
•Configuration	Editor
Tools
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
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
Suites
https://www.op5.com/op5-monitor/	
OP5	Monitor	

Naemon	based	monitoring	
suite.	
•SNMP	Traps	
•Business	Service	
Management	
•Log	Server	Monitoring
https://openitcockpit.io/	
openITCockpit	

Full	stack	monitoring	
solution.	
•Template	based	
configuration	
•Multi	tenancy	
•Granular	user	permissions	
•Event	Correlation	
•Autoreports
OMD	

OMD	is	a	single	RPM/Deb	
installable	monitoring	
toolbox	containing:	
•Naemon	
•Grafana	
•Thruk	
•Mod-Gearman	
•Lots	of	Check-Plugins	
•and	many	more...
What's	next?
What's	next	I

There	are	minor	
enhancements	on	the	
roadmap.	
	
•statehist	table	
•dependency	options
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.
Thank	you!
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

More Related Content

What's hot

surge con 2011 lightning talk - closed loop server lifecycle
surge con 2011 lightning talk - closed loop server lifecycle surge con 2011 lightning talk - closed loop server lifecycle
surge con 2011 lightning talk - closed loop server lifecycle
alexandre freire
 

What's hot (20)

Performance tools developments
Performance tools developmentsPerformance tools developments
Performance tools developments
 
Microservices Platform with Spring Boot, Spring Cloud Config, Spring Cloud Ne...
Microservices Platform with Spring Boot, Spring Cloud Config, Spring Cloud Ne...Microservices Platform with Spring Boot, Spring Cloud Config, Spring Cloud Ne...
Microservices Platform with Spring Boot, Spring Cloud Config, Spring Cloud Ne...
 
Apache kafka- Onkar Kadam
Apache kafka- Onkar KadamApache kafka- Onkar Kadam
Apache kafka- Onkar Kadam
 
Apache Flink and More @ MesosCon Asia 2017
Apache Flink and More @ MesosCon Asia 2017Apache Flink and More @ MesosCon Asia 2017
Apache Flink and More @ MesosCon Asia 2017
 
PAC 2019 virtual Philip Webb
PAC 2019 virtual Philip Webb PAC 2019 virtual Philip Webb
PAC 2019 virtual Philip Webb
 
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slapDEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
 
Data science at scale with Kafka and Flink (Razorpay)
Data science at scale with Kafka and Flink (Razorpay)Data science at scale with Kafka and Flink (Razorpay)
Data science at scale with Kafka and Flink (Razorpay)
 
Closing the door on application performance problems
Closing the door on application performance problemsClosing the door on application performance problems
Closing the door on application performance problems
 
SOAP Monitoring
SOAP MonitoringSOAP Monitoring
SOAP Monitoring
 
OpenShift/Kubernetes to Splunk log integration
OpenShift/Kubernetes to Splunk log integrationOpenShift/Kubernetes to Splunk log integration
OpenShift/Kubernetes to Splunk log integration
 
Chef Configuration Management With RightScale - RightScale Compute 2013
Chef Configuration Management With RightScale - RightScale Compute 2013Chef Configuration Management With RightScale - RightScale Compute 2013
Chef Configuration Management With RightScale - RightScale Compute 2013
 
Mastering Puppet Configuration Management in the Cloud - RightScale Compute 2013
Mastering Puppet Configuration Management in the Cloud - RightScale Compute 2013Mastering Puppet Configuration Management in the Cloud - RightScale Compute 2013
Mastering Puppet Configuration Management in the Cloud - RightScale Compute 2013
 
Selenium-4
Selenium-4Selenium-4
Selenium-4
 
Anypoint Connectors
Anypoint ConnectorsAnypoint Connectors
Anypoint Connectors
 
8th Athens Big Data Meetup - 1st Talk - Riding The Streaming Wave DIY Style
8th Athens Big Data Meetup - 1st Talk - Riding The Streaming Wave DIY Style8th Athens Big Data Meetup - 1st Talk - Riding The Streaming Wave DIY Style
8th Athens Big Data Meetup - 1st Talk - Riding The Streaming Wave DIY Style
 
Developing Microservices using Spring - Beginner's Guide
Developing Microservices using Spring - Beginner's GuideDeveloping Microservices using Spring - Beginner's Guide
Developing Microservices using Spring - Beginner's Guide
 
Configuring and Monitoring HANA Extension Node
Configuring and Monitoring HANA Extension NodeConfiguring and Monitoring HANA Extension Node
Configuring and Monitoring HANA Extension Node
 
Apache big-data-2017-spark-profiling
Apache big-data-2017-spark-profilingApache big-data-2017-spark-profiling
Apache big-data-2017-spark-profiling
 
surge con 2011 lightning talk - closed loop server lifecycle
surge con 2011 lightning talk - closed loop server lifecycle surge con 2011 lightning talk - closed loop server lifecycle
surge con 2011 lightning talk - closed loop server lifecycle
 
Group meeting: Identifying Information Disclosure in Web Applications with Re...
Group meeting: Identifying Information Disclosure in Web Applications with Re...Group meeting: Identifying Information Disclosure in Web Applications with Re...
Group meeting: Identifying Information Disclosure in Web Applications with Re...
 

Similar to Naemon 2019-11-06

Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorksPerformance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Thoughtworks
 

Similar to Naemon 2019-11-06 (20)

Monitoring the Dynamic Resource Usage of Scala and Python Spark Jobs in Yarn:...
Monitoring the Dynamic Resource Usage of Scala and Python Spark Jobs in Yarn:...Monitoring the Dynamic Resource Usage of Scala and Python Spark Jobs in Yarn:...
Monitoring the Dynamic Resource Usage of Scala and Python Spark Jobs in Yarn:...
 
Data ingestion and distribution with apache NiFi
Data ingestion and distribution with apache NiFiData ingestion and distribution with apache NiFi
Data ingestion and distribution with apache NiFi
 
Regain Control Thanks To Prometheus
Regain Control Thanks To PrometheusRegain Control Thanks To Prometheus
Regain Control Thanks To Prometheus
 
Applying Novell Identity Manager to Your Everyday Problems
Applying Novell Identity Manager to Your Everyday ProblemsApplying Novell Identity Manager to Your Everyday Problems
Applying Novell Identity Manager to Your Everyday Problems
 
Change management in hybrid landscapes
Change management in hybrid landscapesChange management in hybrid landscapes
Change management in hybrid landscapes
 
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorksPerformance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
 
WarsawITDays_ ApacheNiFi202
WarsawITDays_ ApacheNiFi202WarsawITDays_ ApacheNiFi202
WarsawITDays_ ApacheNiFi202
 
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f..." Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
 
MySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats new
 
EnCase Enterprise Basic File Collection
EnCase Enterprise Basic File Collection EnCase Enterprise Basic File Collection
EnCase Enterprise Basic File Collection
 
Nagios, Getting Started.
Nagios, Getting Started.Nagios, Getting Started.
Nagios, Getting Started.
 
Introduction to data flow management using apache nifi
Introduction to data flow management using apache nifiIntroduction to data flow management using apache nifi
Introduction to data flow management using apache nifi
 
Stream Processing @ Lyft
Stream Processing @ LyftStream Processing @ Lyft
Stream Processing @ Lyft
 
Health monitoring and alerting for xen app, xendesktop and netscaler
Health monitoring and alerting for xen app, xendesktop and netscalerHealth monitoring and alerting for xen app, xendesktop and netscaler
Health monitoring and alerting for xen app, xendesktop and netscaler
 
Flink Forward Berlin 2017: Hao Wu - Large Scale User Behavior Analytics by Flink
Flink Forward Berlin 2017: Hao Wu - Large Scale User Behavior Analytics by FlinkFlink Forward Berlin 2017: Hao Wu - Large Scale User Behavior Analytics by Flink
Flink Forward Berlin 2017: Hao Wu - Large Scale User Behavior Analytics by Flink
 
Play framework : A Walkthrough
Play framework : A WalkthroughPlay framework : A Walkthrough
Play framework : A Walkthrough
 
Optimizing performance
Optimizing performanceOptimizing performance
Optimizing performance
 
Integrating Splunk into your Spring Applications
Integrating Splunk into your Spring ApplicationsIntegrating Splunk into your Spring Applications
Integrating Splunk into your Spring Applications
 
WiKi Based Automation Testing: Fitness & DevOps
WiKi Based Automation Testing: Fitness & DevOpsWiKi Based Automation Testing: Fitness & DevOps
WiKi Based Automation Testing: Fitness & DevOps
 
Event log analyzer by me
Event log analyzer by me Event log analyzer by me
Event log analyzer by me
 

More from Sven Nierlein

More from Sven Nierlein (7)

SNClient+ - General purpose monitoring agent
SNClient+ - General purpose monitoring agentSNClient+ - General purpose monitoring agent
SNClient+ - General purpose monitoring agent
 
Thruk 2017
Thruk 2017Thruk 2017
Thruk 2017
 
Grafana & PNP4Nagios
Grafana & PNP4NagiosGrafana & PNP4Nagios
Grafana & PNP4Nagios
 
LMD - Livestatus Multitool Daemon
LMD - Livestatus Multitool DaemonLMD - Livestatus Multitool Daemon
LMD - Livestatus Multitool Daemon
 
Monitoring Workshop Kiel 2016 - Thruk II - Panorama Dashboards
Monitoring Workshop Kiel 2016 - Thruk II - Panorama DashboardsMonitoring Workshop Kiel 2016 - Thruk II - Panorama Dashboards
Monitoring Workshop Kiel 2016 - Thruk II - Panorama Dashboards
 
Naemon & Thruk
Naemon & ThrukNaemon & Thruk
Naemon & Thruk
 
Thruk Monitoring Gui
Thruk Monitoring GuiThruk Monitoring Gui
Thruk Monitoring Gui
 

Recently uploaded

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Recently uploaded (20)

How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 

Naemon 2019-11-06