We tagged v1.3.2 more than two months ago and according our initial plans it should have been announced together with v1.4.0. However, sometimes things take longer than expected. But now it’s official: Director v1.4.0 is our shiny new release.
While Director v1.4.0 tries hard to look similar to it’s predecessor, under the hood large parts of it are completely new. We slightly increased it’s prerequisites, it now asks for at least PHP 5.4 instead of 5.3. Who aims at best performance and low resource comsumption should switch to 7.x.
PHP 5.4 should be available in all Linux distributions we’re actively supporting. Only RHEL/CentOS 6.x users are required to switch their configuration and use packages from official SCLs (Software Collections). We’ll soon change our upstream Icinga Web 2 packaging accordingly to help you with this step.
We released v1.3.2 for all those who cannot switch their PHP version that fast. It contains a bunch of smaller and bigger bug fixes for issues discovered in 1.3.1. In addition we also added a few useful property modifiers to this release. As they have no side-effects we allowed them (together with some new CLI command) to be shipped with this Patch release.
Simpler Search, flexible Tables
While all of our tables internally continue to support our powerful filter methods, we’re now showing just a simple search field. Try it out, combine multiple words, even when expecting those to be in different columns. It should be pretty intuitive.
New generic features evolved while restructuring our tables. Without additional effort we can now present historic data cleanly separated by day in various places.
Director strictly distincts Objects from Templates, certain operations are restricted to templates only. There is a simple reason for this: Templates should be managed by Icinga administrators, while “normal” Objects (such as Hosts and Services) shall be accessible to system administrators whose daily business isn’t Monitoring. So for a good reason, everything that could potentially be harmful isn’t offered.
We know that assigning a template called “Fast Checks” to every second Host isn’t fun. This is where our new feature, so-called “Choices” jumps in. They allow one to bundle a set of Templates with a meaningful name. This is an elegant way to present complex options in your forms.
Work efficiently with single Services
Last Director releases usually came with a bunch of new configuration tricks. Especially so-called “Variable Overrides” are widely used, often without even noticing that you’re doing so. They allow to override thresholds for single Hosts, even in cases where the related Service is just a virtual result of a defined Apply Rule.
Version v1.4.0 instead puts focus on allowing you to work faster with single Services. There is a new Overview table showing all single Services that have been defined for your Hosts. From here you can optionally use SHIFT/CTRL-clicks to choose multiple Services and to modify their properties at once. It also allows one to delete them. Same story but the other way round works also fine for hosts: select multiple ones, “Add a Service” (or Service Set), choose one, store:
Our new auto-completion mechanism obsoleted some legacy drop-down boxes and will be the base for more tasks in the near future.
Especially forms linking a bunch of different objects and object types will now be friendlier to your web browser in large environments.
New Dashboards and Dashlets
As you might have noticed on the introductory screen-shot: our Dashboard has been reorganized. Tabs now fit our Dashlets, when switching context the related dashlet will be highlighted. It doesn’t stop here, many new sub-dashboards have been added. And there is a new hidden feature in combination with Tabs: in two-column mode you can enlarge the related column via a double-click on the related tab.
We switched the Layout to equal width columns for wide screens, this used to be 33/66. Mobile layout got many improvements. Dashboards are now more comfortable and forms have been optimized for mobile use:
It’s all about Inheritance
Bugs in the internal Template Tree have been fixed, and it’s visualization now better fits our UI.
Based on this, a completely new template usage overview has been added:
Thanks to a long time community member we’re now also offering support for Dependencies. He has been forced to completely rebase his pull request following our fast-changing code base multiple times. But Marc DeTrano from Gridshield (an Icinga Partner) had a lot of patience with me, thank you very much for this!
Permissions and Restrictions
This leads me to our next topic. Now that we’re able to resolve inheritance and Apply Rules, we are finally able to release another bunch of possible restrictions. We initiated with restrictions based on Hostgroup membership, various prefix-based filters, even single entries in Data Lists can now be limited to specific Roles.
Self Service API
The REST API has been extended and provides new features. Documentation still lacks behind, we’ll ship an upgrade soon. I promise. One of the most helpful new features is the new Self Service API.
It allows one to completely automate self-registration for Icinga 2 Agents in a secure way:
Christian Stein dedicated a lot of time to implement this feature for Windows Agents in his Icinga PowerShell module. It covers upgrades, downgrades, certificate signing – all steps required to get you up and running. Other implementations will follow. Christian (he work as a Senior Sales(!) Engineer at Netways) did a fantastic job here.
We’ll try to publish more information explaining all the details of this feature soon. Most of it should be self-explaining, the “Agent” tab of your Host Templates gives more information and links to related documentation.
Custom Variable usage
A new feature targeting Director Administrators shows an overview of all Custom Variables in use combined with all their variants:
In future we’d like to also offer the possibility to apply mass-changes to clean up your configuration right here in place.
The Inspect functionality also got some attention. Who wants to dig deeper into the Icinga core will now find details about available properties and methods of the various object types. Also the current health state of the single components can be shown. It still lacks nice formatting, but the information is there. How to get there? All this is hidden behind the Inspect tab of your Deployment Endpoint.
VMware vSphere/ESXi import
This sponsored functionality has been developed as a dedicated Icinga Web 2 module.
While developing this we strictly avoided using any of the available VMware SDKs, as over the last years we didn’t have the best experience with those. Upgrade problems, incompatibilites with system libraries, deprecations and more didn’t make life easy.
So with this module we went a completely different way by using 100% custom code. Obviously this doesn’t cover the full API – but it gives us everything we need. Talking directly to the SOAP API we are able to cover a broad range of vSphere and ESXi versions. For our users this means that it is as simple as: Download, Activate, Use.
It definitively doesn’t get boring at all. And now, please have fun with our shiny new Director v1.4.0!