Icinga 2.6.2 Release

We’re happy to announce another minor release for Icinga 2. This release only addresses a single bug which can cause Icinga to crash when it’s trying to remove configuration files for objects which were deleted (such as comments and downtimes for hosts and services which don’t exist anymore).
Packages for Icinga 2.6.2 for the officially supported distributions should be available shortly.

Icinga 2.6.1 Release

We have just released another minor update for Icinga 2. Version 2.6.1 addresses a number of issues we identified in 2.6.0 and is also at the same time the first release after our recent migration to GitHub.
Two of the fixes in this version are for crash bugs which affect reloading Icinga and passing unusually large amounts of command arguments or environment variables to child processes. There are also some documentation changes and a few other smaller bug fixes. Unlike with previous minor releases we decided not to include any ITL changes this time.
An exhaustive list of all tickets solved in 2.6.1 can be found on GitHub. Packages for 2.6.1 should become available shortly.
There’s also a recently-released new version of Icinga Web 2 (2.4.1) which introduces fixes for a few minor problems our users have reported.

Icinga Web 2.0.0 – The final version is unleashed

After tons of hours of work, we are proud to present today the final version of our interface Icinga Web 2. The new interface comes with a completely new design and many user-friendly enhancements to find the relevant information even faster.
With the new design you can see at glance whether Icinga runs properly or significant problems occurred. We enhanced the dashboard with new views to easily see overdue or disabled checks, and muted hosts and services which have already been acknowledged. In contrast to previous versions, the interface has now a detailed view for host and service checks which are not being executed in time.
To provide additional security, we added many new features, for example accessing modules now requires appropriate permissions. All existing permissions and restrictions of the predecessors are of course retained in the new version. Roles containing permissions and restrictions can be assigned to users and user groups in order to permit or restrict their access.
We also improved the integration of Active Directory and other LDAP servers. The new version supports to load users, users groups and group memberships of them as well as authenticating against Kerberos and loading user groups from Active Directory. A major advance is the creation of hosts and services actions; instead of defining them via Icinga’s configuration files, every user is now enabled to create them with the web interface and even share them to others.

The configuration allows to add actions only to certain hosts or services and supports macros like the host and service name, and custom variables. The new web interface provides yet a very basic API for scheduling and removing host and service downtimes. Basic access authentication is also a new feature to ease usage of the API.
For the future, you can expect more API actions and the creation of modules to integrate various popular tools to enhance the DevOps stack.
Find the current version on GitHub right know, while packages will be available soon.

Icinga 2 bug fix release 2.3.3

We have just released version 2.3.3. This release fixes a number of bugs and introduces a select few minor features and documentation changes:

  • Feature 8685: Show state/type filter names in notice/debug log
  • Feature 8686: Update documentation for “apply for” rules
  • Feature 8693: New function: parse_performance_data
  • Feature 8740: Add “access objects at runtime” examples to advanced section
  • Feature 8761: Include more details in –version
  • Feature 8816: Add “random” CheckCommand for test and demo purposes
  • Feature 8827: Move release info in INSTALL.md into a separate file
  • Bug 8660: Update syntax highlighting for 2.3 features
  • Bug 8677: Re-order the object types in alphabetical order
  • Bug 8724: Missing config validator for command arguments ‘set_if’
  • Bug 8734: startup.log broken when the DB schema needs an update
  • Bug 8736: Don’t update custom vars for each status update
  • Bug 8748: Don’t ignore extraneous arguments for functions
  • Bug 8749: Build warnings with CMake 3.1.3
  • Bug 8750: Flex version check does not reject unsupported versions
  • Bug 8753: Fix a typo in the documentation of ICINGA2_WITH_MYSQL and ICINGA2_WITH_PGSQL
  • Bug 8755: Fix VIM syntax highlighting for comments
  • Bug 8757: Add missing keywords in the syntax highlighting files
  • Bug 8762: Plugin “check_http” is missing in Windows environments
  • Bug 8763: Typo in doc library-reference
  • Bug 8764: Revamp migration documentation
  • Bug 8765: Explain processing logic/order of apply rules with for loops
  • Bug 8766: Remove prompt to create a TicketSalt from the wizard
  • Bug 8767: Typo and invalid example in the runtime macro documentation
  • Bug 8769: Improve error message for invalid field access
  • Bug 8770: object Notification + apply Service fails with error “…refers to service which doesn’t exist”
  • Bug 8771: Correct HA documentation
  • Bug 8829: Figure out why command validators are not triggered
  • Bug 8834: Return doesn’t work inside loops
  • Bug 8844: Segmentation fault when executing “icinga2 pki new-cert”
  • Bug 8862: wrong ‘dns_lookup’ custom attribute default in command-plugins.conf
  • Bug 8866: Fix incorrect perfdata templates in the documentation
  • Bug 8869: Array in command arguments doesn’t work

You can look up the bug ID in our issue tracker at dev.icinga.com. Updated packages should be available shortly.

Icinga on Univention Corporate Server

Univention Corporate ServerGood news for Univention Corporate Server (UCS) users: Icinga is now available in the Univention Application Center for monitoring.
After a few weeks of working with the guys at Univention, we have put together the Icinga app for UCS to offer users an alternative (or addition) to the pre-installed Nagios 3.5.
The Icinga app comes with Icinga 1, Classic UI and the usual plugins, configured and ready to monitor. As it is based on our Debian packages, upgrades will be provided for every major release.
Installation is easy, as it uses the configurations and plugins from any Nagios app that is already running. Once downloaded, the app will automatically install Icinga 1 with the Classic UI and integrate itself into your UCS.
Just be aware that after the initial installation your will have both, Nagios and Icinga 1 running. If you want to use Icinga 1 instead of the shipped Nagios, simply disable the Nagios service.
The open source equivalent of Microsoft’s Small Business Server, UCS is a convenient tool for centralized administration of domains, users and services typical to most networks. It basically ships a server based on Debian, and range of commonly used open source applications which are managed by a central console. Additional applications can be loaded through their application center. Great for users who prefer to get their IT in one standardized package, and shy away from the details of installation and integration.
The Icinga app is easy to test – just download it from Univention and use their free, personal-use license (for up to five users). Don’t forget to check out their demo too.


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.

  • 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


  • {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!