5. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
The Icinga Project – Introduction
#icinga
Open Source Enterprise Monitoring
Icinga is a scalable and extensible monitoring system
which checks the availability of your resources, notifies
users of outages and provides extensive BI data.
6. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
The Icinga Project – About us
• Originally forked from Nagios in April 2009
• Independent, redesigned version Icinga 2 since 2014
• Different teams with autonomic responsibilities
9. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
The Icinga Project – Tools & Platform
Icinga Core 1.x
C-based source
MySQL, PostgreSQL, Oracle
Icinga Quality, Testing and Community Support
Website and Open Source Ticketing System
Icinga Reports
based on Jasper
Reports
Icinga Doc
based on
Markdown
3rd Party Tools
Icinga Web 1.x
based on PHP using ExtJS, Agavi MVC
IDOUTILS
Icinga Web 2
Based on PHP / responsive design
Icinga 2
C++-based source with
multiple components
IDO Livestatus Cluster …
17. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga 2 - Overview
• Stable Version: 2.3.3 (26.3.2015)
• Next major version: 2.4.0 (Q4 2015)
• Supports all major distributions
• Puppet, Chef and Ansible support
• Packages and Vagrant Box available now!
https://dev.icinga.org/projects/i2/roadmap
18. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga 2 - Overview
• Powerful CLI
• MySQL & PostgreSQL support
• New configuration format
• Includes a extensive template library
• Compatible with plugins, addons, UIs
23. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
CA Zones API
Icinga 2 - Cluster Overview
Cluster
#icinga
24. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#osmc
Icinga 2 - Cluster Architecture
• API communication using SSL
• Bidirectional connections supported
• Zone support for logic splits in the configuration
• Hash-based load distribution
• “binlog” like retention for monitoring events and messages
• Distributed components throughout the cluster
• Automatic redistribution of checks
• Integrated health check
29. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Icinga 2 - Configuration
• New configuration format
• Won’t miss the old config syntax!
• It is really time for change
• You will love it!
#icinga
30. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga 2 – Configuration: Syntax Highlighting
# cd /usr/share/doc/icinga2-common*/syntax
# PREFIX=~/.vim
# mkdir –p $PREFIX/{syntax,ftdetect}
# cp vim/syntax/icinga2.vim $PREFIX/syntax/
# cp vim ftdetect/icinga2.vim $PREFIX/ftdetect/
# vim /etc/icinga2/icinga2.conf
• Use syntax highlighting!
49. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Icinga 2 - Migration
• Start with a fresh server
• Inventory of plugins & configuration
• Define your configuration strategy with Icinga 2
• Create the best Command and Apply definitions only once
• Only add hosts (and users) in the future
• More migration hints on the docs!
http://docs.icinga.org/icinga2/latest/doc/module/icinga2/chapter/migration#migration
#icinga
50. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Icinga 2 – Migration: Assign service to hosts in Icinga 1.x
define service{
host_name linux1,linux2,linux3,...,linux9
service_description ssh-check
other service directives ...
}
#icinga
51. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga 2 – Migration: Apply service to hosts in Icinga 2
apply Service "ssh" {
import "generic-service”
check_command = "ssh”
assign where host.address && host.vars.os == "Linux”
}
52. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#osmc
Icinga 2 – Migration – Assign members to Hostgroup in Icinga 1.x
define hostgroup{
hostgroup_name linux-servers
alias Linux Servers
members linux1,linux2,linux3
}
55. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga Web 2 - Motivation: Classic UI
• Not extendable
• Lacks real user management
– Authorization based on contacts - not enough for enterprise
needs
• Not usable on mobile devices
• Same machine as core
• Heavy I/O
56. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga Web 2 – Motivation: Icinga Web 1.x
• Complicated XML configuration
• Cached configuration
• Framework overhead
• Not useable on mobile devices
• Slow in big environments
• Complicated API
57. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga Web 2: Key features
• Lightweight like Classic UI & flexible as Icinga Web 1.x
• Easy to extend and embed into other projects
• Support for multiple authentication providers
– Internal DB
– LDAP
– HTTP Auth
• Support for IDO database & Livestatus
• Supports multiple backends simultaneously, as failover backend
• Responsive actions (tablet, mobile, etc)
• FAST!
58. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga Web 2 - Overview
• Beta Version: 2.0.0-beta3 (13.3.2015)
• Release Candidate: 2.0.0-rc1 (late May 2015)
• Final version: 2.0.0 (scheduled for Q2 2015)
• Supports all major distributions
• Apache & Nginx support
• Packages and Vagrant Box available now!
https://dev.icinga.org/projects/icingaweb2/roadmap
70. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga Web 2 – Modules: More, more, more
• Currently in development
– PNP (Graphing)
– Business Process
– Generic TTS (Ticket System Intergration)
• Coming
– Graphite (Graphing)
– Logstash as History Detail
– …
71. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Icinga Web 2 – Modules: Prototypes
• Ask Mr. Gelf
75. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
The Community - Users
You?
76. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
The Community - Icinga Camps 2015
Kuala Lumpur 2015
June 9th
Portland 2015
October 10th
Antwerp 2015
April 13th
78. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
Conclusion
• Download Icinga 2
– Use packages
– Play with Vagrant and VirtualBox
• Rethink you configuration strategy
– Follow extensive migration docs, it is time for a change!
• Install Icinga Web 2 and play with it
• Give us feedback
– dev.icinga.org
– IRC
– Twitter
#icinga
81. EXCHANGE. DEV. WIKI. BLOG. DOC. | WWW.ICINGA.ORG
#icinga
Questions & Answers
Web www.icinga.org
Git git.icinga.org
Development dev.icinga.org
Wiki wiki.icinga.org
Support support.icinga.org
Twitter twitter.com/icinga
Facebook facebook.com/icinga Get support
Get involved
Get heard