4. Responsibilities Contact Personal
Strategy, Partnerships and
mainly Entertainment
bernd.erk@icinga.com or
better follow me on Twitter
@gethash – No warranty
In love with burgers,
NETWAYS, Icinga and most
other people
Bernd Erk
Co-Founder and CEO
7. Icinga2 Core
Scalable infrastructure monitoring
icinga.com/docs/icinga2/
Combine high availability clusters with a
distributed setup, and you have a best
practice scenario for large and complex
environments.
Monitoring as code with dynamic
configurations.
Icinga2 Core
8. Icinga Director
Our configuration and orchestration solution
icinga.com/docs/director/
The Director aims to be the favorite Icinga
config deployment tool.
Director is designed for those who want to
automate their configuration deployment
and those who want to grant their “point &
click” users easy access to the configuration.
Icinga Director
9. Elasticsearch
Keep in touch with all your logs all the time
icinga.com/docs/elasticsearch/
The Elasticsearch module for Icinga Web 2
gives you access to this data, embedded in
your Icinga Web 2 interface.
Custom filters allow you to limit the data
that should be displayed. You can give your
users access to certain data types without
revealing everything stored in Elasticsearch.
Module for Elasticsearch
10. Graphite for Icinga
Quick access to your monitoring metrics
icinga.com/docs/graphite/
Add graphs from your Graphite metrics
backend directly into the host/service detail
view.
This module also provides a new menu
section with two general overviews for hosts
and services.
Graphite for Icinga
22. 01
Stability
03
Namespaces
02
Syntax Highlighting
Icinga 2
Latest features from Icinga 2.10
This release adds a dynamic thread connection pool for both, cluster messages
and HTTP requests. With the performance boost granted, we’ve also lowered the
cluster reconnect interval from 60 to 10 seconds.
2.10 also brings support for namespaces and allows us to keep the “globals”
namespace clean. In addition to that, user-defined namespaces are possible and
can be imported into the global namespace too
Updated the vim syntax highlighting including namespace support. You’ll also
recognize that macro strings are now specifically highlighted.
23. • Thread pool for API connections
• Prevent check state changes after restart
• Improved TLS handling
01
Stability
03
Namespaces
02
Syntax Highlighting
Icinga 2
Stability and performance enhancements
github.com/Icinga/icinga2/blob/master/CHANGELOG.md
24. 01
Stability
02
Syntax Highlighting
Icinga 2
Crazy colorful visualization of the Icinga DSL if you use Vim
template Notification "mail-host-notification" {
command = "mail-host-notification"
states = [ Up, Down ]
types = [ Problem, Acknowledgement, Recovery, Custom,
FlappingStart, FlappingEnd,
DowntimeStart, DowntimeEnd, DowntimeRemoved ]
vars += {
// notification_icingaweb2url = "https://www.example.com/icingaweb2"
// notification_from = "Icinga 2 Host Monitoring <icinga@example.com>"
notification_logtosyslog = false
}
period = "24x7"
}
03
Namespaces
25. 01
Stability
03
Namespaces
Icinga 2
User-defined namespaces
/**
* MySQL Apply rule configuration - traditional
*/
apply Service "mysql" {
check_command = "mysql"
if (host.vars.env == "prod") {
vars.mysql_password = ProductionDB_MysqlPassword
} else if (host.vars.env == "staging") {
vars.mysql_password = Staging_MysqlPassword
} else if (host.vars.env == "dev") {
vars.mysql_password = DevDB_MysqlPassword
} else {
log(LogWarning, "config/service/" + host.name + "!" + name, "Missing
'env'.")
}
assign where "db" in host.vars.app_types
}
02
Syntax Highlighting
27. 01
Stability
03
Namespaces
Icinga 2
User-defined namespaces
/**
* MySQL Apply rule configuration - using Namespaces
*/
using Production;
apply Service "mysql" {
check_command = "mysql"
vars.mysql_password = MysqlPassword
assign where "db" in host.vars.app_types
}
using Staging;
apply Service "mysql" {
check_command = "mysql"
vars.mysql_password = MysqlPassword
assign where "db" in host.vars.app_types
}
02
Syntax Highlighting
28. • Lexer and Parser
• Cluster communication
• TLS Network I/O
• Features und High Availability
Learn more about Icinga 2
Our technical concepts
Technical Concepts
This chapter provides technical concepts and design
insights into specific Icinga 2 components such as:
•Application
•Configuration
•Features
•Cluster
•TLS Network IO
icinga.com/docs/icinga2/latest/doc/19-technical-concepts/#technical-concepts-configuration
30. 01
Multiple Instances
03
Config Basket
02
Health Check
Icinga Director
Latest features from Icinga Director 1.6
This used to be a hidden feature in the former version. Deal with multiple Director
instances from a single web frontend. Deploy to completely distinct or to the very
same Icinga Cluster.
The Director Health Check has been a thing since v1.5. The latest version makes it
Multi-Instance-aware and reachable from the Director Dashboard.
Snapshot a specific Set of Commands, Templates, Import/Sync definitions and
much more at any point time. Download, diff and/or restore to the very same or
another Director instance. Perfect for Multi-Stage Setups and/or for sharing
Configuration Snippets.
36. x509 Module for Icinga
Discover your certificate infrastructure
icinga.com/docs/x509/
The X.509 module for Icinga Web 2 keeps
track of certificates as they're deployed in a
network environment.
The module's web frontend can be used to
view scan results.
x509 Module for Icinga
39. Icinga Module for vSphere®
Analyze your VMware vSphere® infrastructure
icinga.com/docs/vspheredb/
The easiest way to monitor a VMware
vSphere® environment. Configure a
connection to your vCenter® or ESXi™ host
and you're ready to go.
This module provides a lot of context, deep
insight and great oversight. Fast drill-down
possibilities, valuable hints and reports.
Icinga Module for vSphere®
42. 01
Performance
03
Flexibility
02
Schema
Icinga DB
The replacement for IDO
Decoupling Icinga2 from the database backend does not block the core under
high load and since all volatile data is stored in Redis, there are by far less updates
in the database
Way easier to calculate availability data and create business reports on top of the
new database schema. Also access on custom variables works in large
environments
Parts of the future Icinga architecture will rely on Redis as an in memory database
52. • The foundation received a lot of love in 2018
• Icinga DB should be ready in Q1 2019
• Icinga Director release is available now
• Icinga Module for vSphere® is available now
• Icinga Module for x509 will be available next week
• Controlling Icinga with you watch makes absolutely no sense
• But it is a lot of fun
Summary
What you have learned today