Icinga 2 ist eine vollständige Neuentwicklung der Open Source Monitoring Lösung Icinga in C++. In diesem Webinar gehen wir auf den aktuellen Entwicklungsstand, die Möglichkeiten, sowie unter anderem auf das neue Konfigurationsschema ein.
Natürlich ist Icinga 2 - genau wie sein Vorgänger - 100% Open Source
Webinare
Archiv Link: https://www.netways.de/webinare/archiv/icinga_webinare/open_source_monitoring_mit_icinga_2/
Aktuell: https://www.netways.de/webinare/webinare_aktuell/
NETWAYS
Konferenzen: https://www.netways.de/events_schulungen/home/
Schulungen: https://www.netways.de/events_schulungen/schulungen/home/
Shop: https://shop.netways.de/
Blog: http://blog.netways.de/
Social Media
YouTube: https://www.youtube.com/channel/UC8nIBEFmjzXjXeJV_hkkeIQ
Facebook: https://www.facebook.com/netways
Google+: https://plus.google.com/+netways/
Twitter: https://twitter.com/netways
Über Rechte/Rollen und den sicheren Betrieb der Datenbank
Open Source Monitoring mit Icinga 2 (Webinar vom 13.11.2013)
1. www.netways.de // blog.netways.de // @netways
Make IT do more with less
13.11.2013 | ICINGA 2 WEBINAR
OPEN SOURCE MONITORING MIT ICINGA 2
MICHAEL FRIEDRICH UND CHRISTIAN STEIN | NETWAYS GMBH
2. www.netways.de // blog.netways.de // @netways
Make IT do more with less
VORSTELLUNG MITARBEITER
■ Christian Stein
• Account Manager
• Bei NETWAYS seit 2012
■ Michael Friedrich
• Application Developer
• Bei NETWAYS seit 2012
• Icinga Core Developer
3. www.netways.de // blog.netways.de // @netways
Make IT do more with less
AGENDA
■ Kurzvorstellung NETWAYS
■ Vorschau Icinga 2
■ Live Demo
■ Ausblick
■ Fragen & Antworten
5. www.netways.de // blog.netways.de // @netways
Make IT do more with less
KURZVORSTELLUNG NETWAYS
• Firmengründung 1995
• Open Source seit 1997
• 40 Mitarbeiter
• Spezialisierung in den Bereichen
Open Source Systems Management
und Open Source Datacenter
Infrastructure
6. www.netways.de // blog.netways.de // @netways
Make IT do more with less
NETWAYS KOMPETENZEN
• Monitoring & Reporting
• Configuration Management
• Service Management
• Knowledge Management
• Backup & Recovery
• High Availability & Clustering
• Cloud Computing
• Load Balancing
• Virtualization
• Database Management
OPEN SOURCE
SYSTEMS MANAGEMENT
OPEN SOURCE
DATA CENTER
MANAGED SERVICES MONITORING HARDWARE KONFERENZEN
7. www.netways.de // blog.netways.de // @netways
Make IT do more with less
Puppet Camp 2013
• 28. November 2013
• 110 Teilnehmer ( April 2013)
Open Source Data Center Conference
• 09. – 10. April 2014
• 120 Teilnehmer (2013)
• 2 Tracks mit Vorträgen & Workshops
NETWAYS KONFERENZEN
8. www.netways.de // blog.netways.de // @netways
Make IT do more with less
www.netways.org
• NETWAYS Addons
• NETWAYS Plugins
www.icinga.org
• Development
• Hosting
www.monitoringexchange.org
• Icinga / Nagios Addons und Plugins
• ~2000 Projekte
COMMUNITYARBEIT
11. www.netways.de // blog.netways.de // @netways
Make IT do more with less
UNSERE LEISTUNGEN IM ÜBERBLICK
• Workshops & Consulting zur Implementierung vor Ort
• Betrieb
• Komplette Monitoringsysteme
• Satellitensysteme
• Entwicklungsleistungen
• Plugins
• Systemintegration
• Schulungen
• Standardisierte Schulungsmodule
• Individuell vor Ort
• Support
• Standardverträge
• Individuelle Supportkonzepte
• Konferenzen
13. www.netways.de // blog.netways.de // @netways
Make IT do more with less
WARUM ICINGA 2
• Icinga Core 1.x Architektur veraltet
• Single-Threaded
• Begrenzt skalierbar (Instanz bezogen)
• Komplexe Code Struktur, enorme Einarbeitungszeit
• Änderungen nicht möglich, ohne Addons inkompatibel zu machen
• Notification Handling bildet nicht alle Anforderungen ab
• Kein Multi-Backend Support
• Komplexe Konfigurationsstruktur
• Externe Interfaces können nicht direkt mit Icinga verbunden werden
14. www.netways.de // blog.netways.de // @netways
Make IT do more with less
ICINGA 2 ÜBERBLICK
• Komplett neu implementiert in C++ und Boost
• Multithreaded und asynchron non-blocking
• Neues Konfigurationsformat (Migrationsscript vorhanden)
• Nativer Cluster Stack
• Replikation von Konfiguration/Status
• Features in Bibliotheken/Komponenten zusammengefasst
• icinga2-enable-feature ido-mysql
• Komponenten können überall im Cluster laufen
• Unterstützt bekannte Backends
• Status.dat/Log Files
• DB IDO MySQL, PostgreSQL
• Livestatus
• Packages & Vagrant Box verfügbar
15. www.netways.de // blog.netways.de // @netways
Make IT do more with less
FEATURES
• Checker
• Cluster
• Compat
• External Command Pipe
• Compat Log
• Status.dat
• Livestatus
• Performance Daten
• Notification
• DB IDO MySQL/PostgreSQL
Features können on-demand aktiviert werden und blockieren Icinga 2 nicht.
Mehrfach möglich, zB 3x DB IDO, 2x Livestatus, 4x Performancedaten.
16. www.netways.de // blog.netways.de // @netways
Make IT do more with less
KONFIGURATIONSUNTERSCHIEDE
• Keine Host Checks (virtueller Service Status)
• Macros für alles
• Globale frei definierbare Macros
• Frei definierbare Macros für Commands (Default Werte möglich)
• Kein Limit für IP Adressmacros
• Definierbare Environment Macros pro Command
define command {
command_name ping4
command_line $USER1$/check_ping -H
$HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
}
define service {
use local-service
host_name localhost
service_description PING
check_command ping4!100.0,20%!500.0,60%
}
object CheckCommand “ping4“ {
command = “$plugindir$/check_ping –H $HOSTADDRESS$ -w $wrta$,$wpl%$ -c
$crta$,$cpl%$“,
macros = {
wrta = 100,
wpl = 20,
crta = 500,
cpl = 60
}
}
object Host “´localhost “ {
services[“ PING“] = {
check_command = “ping4 “,
macros[“wrta “] = 250
},
macros[“address“] = “127.0.0.1“
}
17. www.netways.de // blog.netways.de // @netways
Make IT do more with less
KONFIGURATIONSUNTERSCHIEDE
• Neue Notizierungslogik mit neuem Notification Objekt
• Eskalationen sind Notifizierungen mit Beginn- und Endzeit
• Lesbare Notifizierungsfilter nach Typ und Status
• Contacts wurden in User umbenannt
object Host "localhost" {
services["ping4"] = {
notifications["mail"] = {
templates = [ "generic-notification" ],
notification_command = "mail-notification",
users = [ "icingaadmin" ],
}
}
}
template Notification "generic-notification" {
notification_interval = 15m,
notification_command = "mail-service-notification",
notification_state_filter = (StateFilterWarning |
StateFilterCritical),
notification_type_filter = (NotificationFilterProblem |
NotificationFilterAcknowledgement |
NotificationFilterRecovery),
notification_period = "24x7"
}
object User "icingaadmin" {
display_name = "Icinga 2 Admin",
enable_notifications = 1,
notification_state_filter = (StateFilterWarning |
StateFilterCritical),
notification_type_filter = (NotificationFilterProblem
|
NotificationFilterRecovery),
macros = {
"email" = "icinga@localhost",
"pager" = "+49123456789"
}
}
object CheckCommand "mail-notification"
inherits " plugin-notification-command" {
command = " … $USEREMAIL$„
}
18. www.netways.de // blog.netways.de // @netways
Make IT do more with less
KONFIGURATIONSUNTERSCHIEDE
• Zeitangaben in s,m,h,d
• Services inline in Host (Templates) definierbar
• Icinga Template Library mit vordefinierten Templates
• Wildcard Inkludierung von Konfigurationsdateien
object Host "localhost" {
services["ping4"] = {
check_interval = 15s,
macros = {
"cmdbstandort" = "nürnberg"
}
}
}
/**
* Icinga 2 configuration file
* - this is where you define settings for the Icinga application including
* which hosts/services to check.
*/
include <itl/itl.conf>
/**
* The features-available directory contains a number of configuration
* files for features which can be enabled and disabled using the
* icinga2-enable-feature / icinga2-disable-feature tools.
*/
include "features-enabled/*.conf"
/**
* Although in theory you could define all your objects in this file
* the preferred way is to create separate files in the conf.d
* directory.
*/
include "conf.d/*.conf"
library "db_ido_mysql"
object IdoMysqlConnection "mysql-ido" {
host = "127.0.0.1",
port = 3306,
user = "icinga",
password = "icinga",
database = "icinga",
table_prefix = "icinga_",
instance_name = "icinga2",
cleanup = {
downtimehistory_age = 48h,
logentries_age = 31d,
},
categories = (DbCatConfig | DbCatState)
}
19. www.netways.de // blog.netways.de // @netways
Make IT do more with less
ICINGA 2 ARCHITEKTUR (STAND 13.11.2013)
Icinga 2
Icinga 2
Checkresults
Config
Nagios
Icinga 1.x
Icinga 2
Plugins
Logger
Syslog
File
Console
DB IDO
Reports
Icinga- Web
status.dat
Log
Compat Layer
Icinga Classic
External
Command
Pipe
Checkresult
Reader
Performance
Data
Writer
PNP | Graphite
| inGraph
Configuration
Migration
Script
Icinga Web 2
Livestatus
Graphite
Cluster
UI (LConf, …)
Shell (vi)
Automation (Puppet, …)
Configuration
Cluster
Agent
21. www.netways.de // blog.netways.de // @netways
Make IT do more with less
AUSBLICK
• Icinga 2
• Clustersetup mit Domains
• Business Prozesse
• …
• Icinga Web 2 (25.2.2014 10:30)
Terminupdates regelmäßig auf https://blog.netways.de