Monitoring Workshop Berlin 15th May - TEAM ICINGA CURRENT STATE OF ICINGA WWW.ICINGA.ORG
Agenda Introduction Tools & Platform Icinga project update New in Icinga 1.x Icinga 2 Icinga Web 2 What s next Questions & Answers
INTRODUCTION
Me Bernd Erk Working @NETWAYS Icinga responsibilities Project orga Reporting Community In the Icinga game since 2009 @gethash (100% senseless) bernd.erk@icinga.org
About Icinga Forked from Nagios in April 2009 Different teams with independent responsibilities Icinga Core Icinga Packaging Icinga Web & Reporting Icinga Q&A & Docs Icinga VMs Icinga Community 24 active members on the team Still searching!
Icinga Team Core Community Packaging Web & Repor2ng Docs & QA VMs We want you!
TOOLS & PLATFORM
TOOLS AND PLATFORM Icinga Quality, Testing and Community Support Website and Open Source Ticketing System Icinga Core Icinga 2 Icinga Doc Icinga Reports C-based source MySQL, PostgreSQL, Oracle C++-based source with multiple components based on Markdown based on Jasper Reports IDOUTILS IDO Livestatus Cluster Icinga Web based on PHP using ExtJS, Agavi MVC Icinga 2 Web Based on PHP / responsive design 3 rd Party Tools
Current Architecture Classic UI Icinga Core Icinga 2 Icinga Web 2 IDOUtils REST API Mobile Icinga Web IDO Database SOAP Provider Icinga Reporting
ICINGA PROJECT UPDATE
Statistics Solved issues last year 1400 1200 1000 996 1085 1225 800 656 600 400 200 0 150 2009 2010 2011 2012 2013
Quality DEV. WIKI. BLOG. DOC. WWW.ICINGA.ORG
Continous Integration Jenkins Server build.icinga.org
Operating System Support Global package repository packages.icinga.org Snapshot and release builds Builds for major platforms RHEL SLES Fedora OpenSuse Debian Supplement (not replacement) for official repos like RepoForge or Debian Backports
Documentation We had DocBook
Documentation Future DocBook Pros You can generate hundreds of different formats out of one Docbook DocBook Cons We didn t! Updating DocBook files is time-consuming and complicated It sucks! Switch from DocBook to Markdown Icinga 2 doc is available in Markdown from day one We ll migrate the 1.x documentation to Markdown
Documentation Markdown How it will look like ### Installation Paths!! By default Icinga 2 uses the following files and directories:!! Path Description! ------------------------ ------------------------------------! /etc/icinga2 Contains Icinga 2 configuration files.! /etc/init.d/icinga2 The Icinga 2 init script.! /usr/share/doc/icinga2 Documentation files that come with Icinga 2.! /usr/share/icinga2/itl The Icinga Template Library.! /var/run/icinga2 PID file.!!...!
NEW IN ICINGA 1.x
Changes in Icinga 1.10 and 1.11 Icinga Core Add check source to check result / status data Chance to add more than one IDO module to Core Commands for freshness checks Classic UI Added filter modification New live search Custom variables in extended info Standalone version available IDO Performance improvements using transactions and bulk updates Config option for custom variable dump
Changes in Icinga Web 1.10 and 1.11 Updated cronk list design in menu New icon design New categories Additional unhandled views in updated categories Updated instance cronk State type as default in all cronks Updated time zone handling Deletion of all comments for service or host Various UI tweaks ExtJS Upgrade
Demo Icinga 1.x DEMO
ICINGA 2
Icinga 2 - Overview Based on C++ and Boost Supports all major *NIX and Windows platforms Different config format there is a conversion script! Included cluster stack Functions by component icinga2-disable-feature / icinga2-enable-feature Components can run anywhere in a cluster MySQL, PostgreSQL and Livestatus support included Packages and Vagrant Box available now!
Icinga 2 Components Checker Cluster Compat Command Pipe Compat Log Status.dat Livestatus Perfdata Notification ido_mysql ido_postgresql
Icinga 2 Apply Service Service definition object Host "localhost" { import "generic- host" display_name = Host address = "127.0.0.1 address6 = "::1 check_command = "hostalive" }! Service apply apply Service "ping6" { import "generic- service" check_command = "ping6" apply where "generic- host" in host.templates ignore where!host.address6 }!
Icinga 2 Apply Notification Notification definition object UserGroup "noc" { } object User "admin" { import "generic- user groups = [ "noc" ] }! Notification apply apply NoOficaOon "mail- noc" to Service { import "generic- nooficaoon" command = "mail- nooficaoon" user_groups = [ "noc" ] assign where service.vars.sla == "24x7 }!
Icinga 2 Cluster Cluster-based 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 compat perfdata livestatus checker Icinga2 Icinga2 checker replication notification ido IDO Database
Demo Icinga 2 DEMO
ICINGA WEB 2
DEV. WIKI. BLOG. DOC. WWW.ICINGA.ORG Different Interfaces for Icinga Icinga Classic Thruk, Icinga Web Icinga Mobile Icinga Web 2
Why another Interface We want a solution for all platforms Simple and lightweight Responsive for desktop, tablet, phone Icinga-Classic doesn t fit enterprise needs Icinga-Web is hard to extend CLI-Support for cronjobs, plugins and shell Support for multiple backends All existing versions will be in active maintenance!
Icinga Web 2 Lightweight like Icinga classic and flexible like Icinga Web Easy to extend and embed into other projects Support for multiple backends Status.dat Database Livestatus Supports multiple backends simultaneously, as failover backend Supports Icinga 1.x and Icinga 2.x Responsive actions FAST!
Demo Icinga Web 2 DEMO
Demo Icinga Web 2 What else?
Demo Icinga Web 2 - CLI
WHAT S NEXT
Roadmap DEV. WIKI. BLOG. DOC. WWW.ICINGA.ORG Roadmap Icinga https://dev.icinga.org/projects/icinga-development/ roadmap Roadmap Icinga 2 https://dev.icinga.org/projects/i2/roadmap Roadmap Icinga Web 2 https://dev.icinga.org/projects/icinga-2-web/roadmap Roadmap based on Bugs Sponsors Feedback (feedback.icinga.org, Twitter, etc.) Team members interests
Releases & Events Releases Icinga & Web 1.12 (Fall) Releases Icinga Web 2 Q3 2014 Releases Icinga 2 0.0.11 5/15/2014 2.0 Beta 5/27/2014 Many new releases in 2014 Events OSMC 2014
QUESTIONS & ANSWERS Web www.icinga.org Development dev.icinga.org? Feedback feedback.icinga.org Wiki wiki.icinga.org Support support.icinga.org Twitter twitter.com/icinga Questions & Answers Facebook facebook.com/icinga.. Everywhere!