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 v2.3.10 bugfix release

Dear all,

apart from importing the missing fix for the Windows reload in 2.3.9, we’ve also tackled a couple of other stability problems whilst working on the 2.4 api branch.

Packages should be available soon as always, find the Changelog below.


What’s New in Version 2.3.10


  • Feature 9218: Use the command_endpoint name as check_source value if defined


  • Bug 9244: String escape problem with PostgreSQL >= 9.1 and standard_conforming_strings=on
  • Bug 10003: Nested “outer” macro calls fails on (handled) missing “inner” values
  • Bug 10051: Missing fix for reload on Windows in 2.3.9
  • Bug 10058: Wrong calculation for host compat state “UNREACHABLE” in DB IDO
  • Bug 10074: Missing zero padding for generated CA serial.txt

Icinga 2 bugfix release v2.3.9

The Icinga team is currently working on implementing the API which is scheduled to be included as part of the 2.4.0 release. However, in parallel we’ve also been fixing a number of issues in 2.3. Today we’re releasing these fixes and a few other ITL and documentation updates as version 2.3.9.

As usual packages for 2.3.9 should be available at packages.icinga.org shortly.

Here’s a list of all changes for this release:


What’s New in Version 2.3.9


  • Fix that the first SOFT state is recognized as second SOFT state
  • Implemented reload functionality for Windows
  • New ITL check commands
  • Documentation updates
  • Various other bugfixes


  • Feature 9527: CheckCommand for check_interfaces
  • Feature 9671: Add check_yum to ITL
  • Feature 9675: Add check_redis to ITL
  • Feature 9686: Update gdb pretty printer docs w/ Python 3
  • Feature 9699: Adding “-r” parameter to the check_load command for dividing the load averages by the number of CPUs.
  • Feature 9747: check_command for plugin check_clamd
  • Feature 9796: Implement Dictionary#get and Array#get
  • Feature 9801: Add check_jmx4perl to ITL
  • Feature 9811: add check command for check_mailq
  • Feature 9827: snmpv3 CheckCommand section improved
  • Feature 9882: Implement the Dictionary#keys method
  • Feature 9883: Use an empty dictionary for the ‘this’ scope when executing commands with Livestatus
  • Feature 9985: add check command nscp-local-counter
  • Feature 9996: Add new arguments openvmtools for Open VM Tools


  • Bug 8979: Missing DEL_DOWNTIME_BY_HOST_NAME command required by Classic UI 1.x
  • Bug 9262: cluster check w/ immediate parent and child zone endpoints
  • Bug 9623: missing config warning on empty port in endpoints
  • Bug 9769: Set correct X509 version for certificates
  • Bug 9773: Add log for missing EventCommand for command_endpoints
  • Bug 9779: Trying to set a field for a non-object instance fails
  • Bug 9782: icinga2 node wizard don’t take zone_name input
  • Bug 9806: Operator + is inconsistent when used with empty and non-empty strings
  • Bug 9814: Build fix for Boost 1.59
  • Bug 9835: Dict initializer incorrectly re-initializes field that is set to an empty string
  • Bug 9860: missing check_perfmon.exe
  • Bug 9867: Agent freezes when the check returns massive output
  • Bug 9884: Warning about invalid API function icinga::Hello
  • Bug 9897: First SOFT state is recognized as second SOFT state
  • Bug 9902: typo in docs
  • Bug 9912: check_command interfaces option match_aliases has to be boolean
  • Bug 9913: Default disk checks on Windows fail because check_disk doesn’t support -K
  • Bug 9928: Add missing category for IDO query
  • Bug 9947: Serial number field is not properly initialized for CA certificates
  • Bug 9961: Don’t re-download NSCP for every build
  • Bug 9962: Utility::Glob on Windows doesn’t support wildcards in all but the last path component
  • Bug 9972: Icinga2 – too many open files – Exception
  • Bug 9984: fix check command nscp-local
  • Bug 9992: Duplicate severity type in the documentation for SyslogLogger

Vagrant boxes revamped

vagrant-logoWe’ve found Vagrant pretty useful for our demo cases – the first draft of the Icinga 2 Cluster happened to be a NETWAYS CeBit demo and evolved ever since. icinga-vagrant was added is official Icinga project similar to what we have with our Docker demos and gained more attraction by testers and developers.

The good thing about Vagrant using different providers is – you can even run these demos on Windows. You’ll need some prerequisites to make it work on Windows though – Git with SSH and Ruby. On Linux the Vagrant packages already requires them. Additionally you’ll need at least the following versions:

  • Vagrant >= 1.6.5
  • VirtualBox >= 4.2.16

Our default provider is VirtualBox where these boxes are regularly tested on. The underlying provisioner is using Puppet modules to setup the Vagrant environment. This installs for example Apache, MySQL, Plugins, Icinga 2 and Icinga Web 2 in the icinga2x box. The Icinga packages are pulled from our snapshot repositories allowing developers and testers fetching the latest and greatest – and also help finding bugs soon enough :-)

Currently there are four different Vagrant environments available for testing:

  • icinga2x: Standalone Icinga 2 box with user interfaces: Icinga Web 2, Icinga Web 1.x and Classic UI 1.x
  • icinga2x-cluster: Icinga 2 Cluster as Master-Checker setup. Includes Icinga Web 2 as user interface.
  • icinga2x-graylog2: Special Graylog demo environment with standalone Icinga 2
  • icinga1x: Standalone Icinga 1.x Core with Icinga Web 1.x and Classic UI 1.x. Includes Jasper-Reporting.

Note that icinga1x will stick with CentOS6 due to the Reporting integration (unless someone sends a patch). The other boxes have been upgraded recently to use CentOS 7.1 as base box.

There were several changes in the past months, refactoring the required git modules from submodules to subtree and also updating the demo configuration. All icinga2x boxes also share common host-only IP addresses for easier access. Once puppet-icinga2 and puppet-icingaweb2 become ready, they’ll be included inside the provisioning mechanism replacing our own local modules. In order to keep it simple, you may just download the latest release tarball instead of cloning the git repository.

Start away with the Icinga 2 box:

$ git clone https://github.com/Icinga/icinga-vagrant.git
$ cd icinga-vagrant
$ cd icinga2x
$ vagrant up

Open your browser and navigate to the host-only ip addresses (Login: icingaadmin/icinga)


If you encounter problems, please open an issue at https://dev.icinga.org/projects/icinga-tools/issues – meanwhile enjoy the Vagrant show! :-)

Icinga 2 bugfix release v2.3.8

2.3.7 last week introduced a problem with DB IDO PostgreSQL when fixing a separate issue. Next to that we’ve also backported some more fixes from our development tree for 2.4 into v2.3.8.

Check the Changelog below while preparing your update.


What’s New in Version 2.3.8


  • Bugfixes


  • Bug 9554: Don’t allow “ignore where” for groups when there’s no “assign where”
  • Bug 9634: DB IDO: Do not update endpointstatus table on config updates
  • Bug 9637: Wrong parameter for CheckCommand “ping-common-windows”
  • Bug 9665: Escaping does not work for OpenTSDB perfdata plugin
  • Bug 9666: checkcommand disk does not check free inode – check_disk

Bugfix releases: Icinga 2 v2.3.7 and Icinga v1.13.3

This time we’ll release two Icinga Core bugfix releases – Icinga 2 v2.3.7 and Icinga v1.13.3.

Package updates are available soon, meanwhile check the Changelog below.


What’s New in Version 2.3.7


  • Bugfixes


  • Feature 9610: Enhance troubleshooting ssl errors & cluster replay log


  • Bug 9406: Selective cluster reconnecting breaks client communication
  • Bug 9535: Config parser ignores “ignore” in template definition
  • Bug 9584: Incorrect return value for the macro() function
  • Bug 9585: Wrong formatting in DB IDO extensions docs
  • Bug 9586: DB IDO: endpoint* tables are cleared on reload causing constraint violations
  • Bug 9621: Assertion failed in icinga::ScriptUtils::Intersection
  • Bug 9622: Missing lock in ScriptUtils::Union

What’s New in Version 1.13.3


  • Bugfixes


  • Bug 7337: Only use SCHEDULE_HOST_DOWNTIME command for Icinga 2.x
  • Bug 8130: Wrong values for percent_* when using hostgroup in availability report
  • Bug 9020: Solaris package behaves badly upon uninstall
  • Bug 9106: Icinga no longer sending acknowledgement notifications
  • Bug 9240: invalid JSON for flapping threshold configuration