Icinga is 5 years old!

Today we celebrate Icinga’s 5th birthday and 5 incredible years. We have come a long way from a young fork in 2009, with aspirations to improve upon Nagios. Today we are at the cusp of releasing a complete rewrite, Icinga 2 beta and a new-concept interface Icinga Web 2 – all while maintaining progress on the Icinga 1.x branch.
It is no surprise then that we clocked up over 4800 commits in the last year and doubled in number of contributors. These included nine milestone releases of Icinga 2, and three Icinga 1.x stable releases. Along the way, Icinga 2 has made it to “Icinga 1.x / Nagios drop-in replacement” status, boasting a new object-based configuration format, built-in cluster capabilities and convenient integration with Graphite, Livestatus-based addons.
Development in Icinga 1.x was also active, with improved interoperability and performance in the Core and Web, adding Classic UI live search and click filtering as well as a new Web cronk menu and ‘problems’ views. For these enhancements, we thank the many community contributors who sent in patches, bug reports and feature ideas.

Icinga 5th birthday

In fact, community creations have come in all forms this past year- from the very first books on Icinga published in English and German to RIPE’s Atlas probe with Icinga and Pager Duty’s Icinga notification services.
Our 5th year also brought important changes to our community channels. We moved all our release downloads to Github, migrated our user, development and announcement mailing lists to lists.icinga.org, and created a new auto-built package repository at packages.icinga.org.
In between these activities and development on Icinga 1.x, Icinga 2 and Icinga Web 2, we somehow managed to make it to a couple of events. We headed over to Brighton for FLOSSUK and London for DevOps Days; joined Chemnitz Linux Days and the OSMC, and got together for a team meet-up at the Linux Hotel.
Looking back, this past year may have been the busiest yet. All this activity has certainly attracted the attention of larger organisations such as the carmaker Audi, who implemented Icinga to monitor a whopping 10,000+ hosts and 50,000 services.
Such environments speak for the maturity of Icinga as a project and we are proud to have made it this far in just 5 years. So on this special day, we’d like to say thank you to all our Icinga friends: You have no idea how your mailing list and forum posts; tweets and likes; feature and patch submissions have helped make Icinga what it is today.

Team Icinga welcomes…

… 6 new (including a couple old) members officially to the team!
From helping create Icinga 2 and Icinga Web 2 to continuing Icinga 1.x development, packaging and testing, we sure are glad to have the extra hands on deck.

Team Core

gvegidy
GERD V. EGIDY | “gvegidy
Joining the Icinga 2 effort in April, Gerd brings with him 15+ years of C++ development and Linux sys admin experience. Head of support and consulting at Intra2net by day, Gerd is a now an Icinga developer, mountain biker, ice cream maker and coffee roaster by night.
 

Team Packaging

sstarrSHAWN STARR |spstarr
Fedora/EPEL/RHEL specialist, Shawn helps maintain the official RPMs for Icinga. He has been a Fedora packager since 2006 and is also on the Fedora QA team. On the side, he contributed the Plasma weather applet/engine API to KDE 4.x/5.x. Joined in January 2014.
skottlerSAM KOTTLER | “shk
Sam works on packaging, security, and distribution issues for Icinga as of February, from his base in NYC. In addition to his work on Icinga, he works at Red Hat on systems management and cloud guest initialization problems. Sam also helps maintain the Ruby, Erlang, and monitoring stacks (not to mention monitoring-plugins) in Fedora and is the maintainer of the Puppet 2.7 branch.
 

Team Web & Mobile

elippmannERIC LIPPMANN | “lippser
A PHP and Javascript developer, Eric works solidly on Icinga Web 2. He is known in the monitoring community for the performance monitoring extension, inGraph and has been responsible for many Icinga Web Cronk concepts and ideas in the past. Joined in the summer of 2011.
tgelfTHOMAS GELF | “tgelf
Thomas specialises in Icinga Web 2 development, occasionally contributing ideas to Icinga Core. Professionally an Icinga and Puppet consultant/trainer, Thomas boasts nearly two decades of development experience in various languages. Officially joined in 2014.
 

Team Quality Assurance & Docs

sbauknechtSVEN BAUKNECHT | “tuxifier
Previously a padawan, Sven helps test Icinga and add to the growing knowledge base that is the Icinga Wiki. A long-time Linux user and monitoring professional, he has been using Icinga since its first year of conception. Joined in November 2012.
 
Cheers to our newest team members! Thanks for helping us keep Icinga on the evolutionary ascent.  If you see them around the community, don’t forget to give them a virtual fist bump.

Icinga 1.11 Released!

Download_Icinga1.11In true parallel development style, this week we bring you two releases – Icinga 2 v0.0.8 and today’s Icinga 1.11.

Download Icinga 1.11 off our new Github repo or use packages to enjoy improved usability and interoperability in the user interfaces, plus performance tweaks in the Core and IDOUtils.

UPGRADE NOTE:

Icinga Web v1.11 requires IDOUtils from Icinga Core v1.11 due to new queries on, and database fields in the IDO.

| JUMP TO CHANGE LOG SUMMARY |

Usability enhancements were in no short supply in the Classic UI this time round. From additional modified attribute filters, group notes and action URL links, to a suite of logos for host and service icons, as well as support for gzip compressed logs, much inspiration was drawn from our user community.
We also thank our users for their contributions to the Core – Philip Matuskiewicz, Franky Van Liedekerke, Marco Hoyer, Tomas Dubec, Laurent Bigonville. These include new commands to enable and disable freshness checks by host or service; service escalations without host mapping and passive check-result processing corrections. An option for anonymous external command users in the logs has been added, and brings Icinga up to speed with data retention laws.
Interoperability was improved in this release, especially in IDOUtils’ use with Solaris and Oracle, and Icinga Web’s consistent operation across all browsers (including IE) thanks to an upgrade to ExtJS 3.4.1.1. Icinga Web also features jump links from performance views to the related host and services, alongside a reload progress bar including caching as well as static macro expansion for {action,notes_url} (thanks Immobilienscout24 for sponsoring these 2 features!) and changes to guarantee uniformity in time zone handling.
See the full change logs  for more, and download Icinga 1.11 while you’re at it. Should you come across a bug or idea for a good new feature, do not hesitate to share on our development tracker and feedback channel. Even better, hop on our dev mailing list to chat – we’re looking for Icinga Reporting buffs for future releases. Thanks again to all those who contributed their bit to Icinga 1.11!

CHANGE LOG SUMMARY

Core

  • Added commands for {en,dis}able freshness checks per host/service (thanks Philip Matuskiewicz) -#5422 #4430
  • Added state history entries for newly added services (check result with OK state) – #3854
  • Added option to make external command user in Icinga log anonymous – #5689 
  • Allow exclude (!) to work for regexp matches for hosts (thanks Franky Van Liedekerke) – #5324 
  • Fixed passive check result processing for host checks (Marco Hoyer) – #5671 
  • Accept service escalations without host mapping (Tomas Dubec) – #5697

Classic UI

  • Added status.cgi modifed_attributes filter parameter – #4880
  • Added “current_notification_number” to JSON output of hosts and services in status.cgi – #5370
  • Added group notes and action URL links to status summary, overview and grid – #5301
  • Integrated a range of logos – #4057
  • Added support for gzip compressed logs – #4519
  • Time picker no longer resets time in input field – #5239

IDOUtils

  • ido2db should check database schema on start up, and bail early on errors – #5272
  • Wait for child processes on exit preventing zombies (Laurent Bigonville) – #4427
  • Fixed errors in oracle.sql with timed event sequences – #5688 
  • Fixed SEGV in ido2db and idomod syslog call in Solaris – #5687, #5686 
  • Allow agent_version to store more than 16 chars – #5731

Web

  • Time zone handling now consistent in duration and command fields – #4983, #5713
  • Expanded macros in action_url and notes_url (Immobilienscout24) – #1882
  • Added reload progress bar (Immobilienscout24) – #5098 #5107
  • Added jump links to host and service status from performance view – #4984
  • Upgraded to ExtJS framework 3.4.1.1 – #5620

Icinga 2 v0.0.8 Released with Redesigned Dependencies

Download_Icinga2We tick off another feature to simplify configuration in Icinga 2 with our latest release, v0.0.8. Say goodbye to confusing array-attribute style dependencies. Version 0.0.8 allows you to configure dependencies as inline dictionaries in service objects (just like notifications, scheduled_downtimes, etc) and assign multiple attributes directly. Just as in Icinga 1.x, you can configure checks and notifications to be executed dependent on state type and time period. On top of the familiar attributes, we’ve added ‘disable_checks’, ‘disable_notifications’, ‘state_filter’ and ‘period’. Please note that we have departed from the ‘dependent’ identifier of Icinga 1.x to use ‘parent_{host,service}’ and ‘child_{host,service}’ instead. We hope this will save users the confusion associated with the Nagios-inherited configuration style.
Alongside new dependency objects, we’ve extended Icinga 2’s clustering capabilities with improved performance, recursive ‘config includes’ and a cluster and instance health check. Furthermore a dedicated feature for dumping the current status of Icinga 2 and all of its features to a status JSON file has been added. But there’s a lot more in our new release than that – see our Icinga 2 change log for details. Also, please be sure to update your configuration in terms of changed dependencies and upgrade the database schema in the IDO database backend.
Get started with these new features by taking a look at our straightforward guides in our Icinga 2 documentation. Visit our support channels for help if you need, and let us know what you think of our latest new capabilities via our feedback and development tracker.
Wait no longer – download Icinga 2 v0.0.8 now.
CHANGE LOG

  • Add dependency object for advanced host/service dependency definition
  • Add optional IcingaNodeName for cluster feature
  • Populate check_source attribute with the checker’s node name
  • Cluster supports recursive config includes
  • Add Cluster health check
  • Add more performance data to the Icinga health check
  • Add IcingaStatusWriter feature writing a status json file
  • Smoother pending service checking during startup
  • Reduce virtual memory usage
  • Stack traces include file names and line numbers
  • Treat script variables as constants preventing override
  • Fix pending services are being checked with the retry interval
  • DB IDO: Fix deleted objects are not marked as is_active=0
  • DB IDO: additional fields for cluster/checker nodes

CHANGES

  • {host,service}_dependencies attributes have been changed to dependency
  • objects supporting new attributes: `disable_checks`, ‘disable_notifications`, `state_filter`,`period`. For better readability, there is `parent_service` and `child_service` for example.

Update your existing configuration!

Icinga 2 v0.0.7 out now

Download_Icinga2v0.0.7Get the latest version 0.0.7 of Icinga 2 off Github now. Stability and testing was the focus of this release, with automated tests in Vagrant and improvements to the database IDO. To make testing even easier, we’ve added documentation on remote checks, service checkers, and configuration file best practices.
To our testers, we say thank you – keep the bug reports and feature requests coming!
Change Log:

  • DB IDO performance improvements on startup
  • Fix notification_id handling in DB IDO
  • More automated tests (based on the Vagrant VM)
  • New documentation chapters