When you come to join us you can expect working with cool people in an environment that makes developers happy.
Sounds interesting to you? That’s what it takes to work with us:
- Experience with MySQL or PostgreSQL a huge plus
- Good knowledge in Zend and jQuery or other frameworks
- Source code control with Git
- Hands-on experience with Vagrant and Puppet a plus
The only thing we need is your resume and PLEASE only by email to info(at)icinga.org. See you soon!
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.
While you may have seen a lot of updates in our 2.x development head, Icinga 1.x is still alive and being patched and bug-fixed. Some smaller features have also been incorporated into 1.13.0 so consider upgrading your existing installation.
- Remove deprecated event_profiling_enabled from icinga.cfg
- Remove deprecated broker_module from icinga.cfg (use module object configuration instead)
- Add module config examples in modules/ directory (livestatus, mod_gearman, pnp4nagios, flapjack)
- Move contrib/downtimes to tools/downtimes and add ‘make install-downtimes’
- Feature #1867: Recurring Downtimes
- Feature #6353: deprecate icinga.cfg:broker_module; add more module examples
- Feature #8007: Implement an option to disable transactions
- Feature #8139: Add functions for registering file descriptors closed on fork()
- Feature #8140: Add Check Result List Mutex for NEB modules
- Feature #8426: Remove constraint from *dependencies tables
- Feature #8440: Enhance idomod logging
- Bug #6263: Race condition in init.d scripts’ stop
- Bug #6762: Icinga crashes when “args” attribute is not specified for modules
- Bug #7004: GET form param has no effect on cmd.cgi acks (again)
- Bug #8202: Cool tip text for refresh of hosts and services says “I’m so lonely up here. Where should I go?”
- Bug #8441: require the ‘config_file’ argument in idomod modules configuration
- Bug #8445: cmd.cgi use_ack_end_time param does not enable tickbox in form
Download icinga-1.13.0 here.
- Ewoud Kohl van Wijngaarden found a way for an SQL injection in Icinga Web’s API. An authenticated user could inject SQL code via a crafted JSON filter (#7924, CVE-2015-2685)
We recommend to update your installation to 1.13.0 as the features are minimal invasive.
Notable changes and features
- The log now contains the ip address of a user login failed, or the user just logged in and out (#7357)
- We implemented a command log that contains any command that is send to the Icinga core by an user – written to a separate log file command-20XX-XX-XX.log (#7893)
- (Bug) Acknowledgments where sent without a proper sticky declaration. This problem has been fixed and host or service acknowledgments are now sticky by default – what it should and was intended to be. (#5838 #7003) Please review our documentation if you are not sure what sticky means.
- Grids can now display customvariables. Because customvariables are customised on every installation, this feature is disabled by default. See doc/grids_and_customvars.md for further information.
- When using Kerberos authentication in a web server a user could receive all credentials when he had a role that had no credentials set (#7892) In our tests that only happens with Kerberos users.
- When a user could not be imported during login the database exception was not generated correctly (#8301)
- Don’t contact more authentication providers than necessary during login. Thanks to Victor Hahn (#8341)
- Fixed the irritating error during application state reset (#8523) The state was always cleared, but an error popped up for the user.
Download icinga-web-1.13.0 here.
It’s been a while that we’ve written about new team members, but you may have seen new faces on community events and also names inside the git commits recently. Icinga is a community project after all, but some of us want to do more. Getting access to Icinga’s infrastructure, working on existing tasks and finally tagging a release being proud of your work is enjoyable & fun at once. Contact us if you feel the same!
Carlos Cesario | Core Developer
A sys admin of 8+ years, Carlos’ joins us from Brazil to bring much virtualisation and monitoring experience. The man behind Icinga 2 Vim and Nano syntax highlighting, Carlos has been an avid Icinga user since Icinga 1.2. On board since June 2014.
Tobias von der Krone | Core Developer, QA & Support
Tobias is a long-term Icinga user managing distributed setups with Icinga 2 clusters & Saltstack formulas at ProfitBricks. Whilst learning C++ he takes care of QA, documentation and community support. On the team since January 2015.
Johannes Meyer | Icinga Web 2 Developer
Johannes started working on Icinga Web 1.x and is now responsible for Icinga Web 2 development. One of his babies is the Icinga Web 2 Setup Wizard paving the way for all the exciting modules and views he’s also been building. On the team since June 2013.
Matthias Jentsch | Icinga Web 2 Developer
Using the newest web technologies & frameworks, Matthias has proven his expertise in many ways. He’s the main author of NETRP and contributes to Icinga Web 2 development with a love of charts for reporting & auth backend integration. On the team since June 2013.
Alexander Fuhr | Icinga Web 2 Developer
With more than 10 years of web development experience, Alexander knows how to deal with ExtJS in Icinga Web 1.x and LConf. His main contribution area is the all new shiny Icinga Web 2 and its responsiveness. On the team since August 2014.
Valentino Gagliardi | Ansible Role Developer
A freelance system administrator, in love with monitoring and logging, Valentino uses Icinga to monitor hundreds of Linux servers. IT automation fanatic, is responsible for Icinga 2 Ansible role. Onboard since June 2014.
Nick Chappell | Puppet Module Developer
Nick is located in Portland, OR and working as a sysadmin. Icinga is his first open source project and so he was brave and chose a hard one: Nick is the creator and maintainer of the official puppet-icinga2 Puppet module. Onboard since August 2014.
Bernd Ahlers | Graylog2 Vagrant Maintainer
Bernd is a Graylog developer and is located in Hamburg. During his journey of log processing and connecting monitoring cores like Icinga 2, he recently joined the Icinga team helping in maintaining the Vagrant boxes, specifically the icinga2x-graylog2 demo box. Onboard since October 2014.
Virender Khatri | Chef Cookbook Developer
Virender works as Senior DevOps Engineer at BSB and has 7+ years of experience with AWS, Open Source technologies and automation tooling. He is the lead maintainer of the official Icinga 2 Chef Cookbook paving the way for config management tool intergration. On the team since January 2015.
Tom de Vylder | Puppet Module Developer
Tom is working at Inuits and is an experienced Puppet developerincluding officially approved modules. He’s putting his effort into thePuppet module for Icinga Web 2, but also ensures that the Icinga 2 module passes Q&A and unit tests. On the team since January 2015.
Dirk Götz | RPM Packager & SELinux Master
Dirk is working as Senior Consultant at NETWAYS. His main tasks are monitoring with and around Icinga as well as configuration management with Puppet. He’s an RHCE and helps mastering the Icinga RPMs especially focusing on SELinux. On the team since February 2015.
Every little or big contribution counts – but if there is no time left for Icinga, and other things in life become more important, it’s truly understandable.
You know Jannis as the brain behind Icinga Mobile whilst developing Icinga Web 1.x and its modules. He also kicked off the development of Icinga Web 2 together with Tom. Thank you Jannis for remarkable 5 years making Icinga great! All the best for your future – salute to him on Twitter, if you like 🙂
Today I want to introduce an interface improvement we’ve made in Icinga Web 2: the new multi-selection. In previous versions of Icinga Web, you had to select objects by ticking a checkbox, selecting the action and then pressing on apply. With Icinga Web 2 we have simplified this process, so that one single mouse click on each row will select it and also immediately show you additional information in the detail area.
If you want to select multiple objects at once, you can now do that by pressing CTRL or Shift like in any desktop application. To see how this works in practice, lets take a look at the following example:
1. We recognize on the dashboard that there are several hosts down and unhandled.
2. Now we select a range of 10 hosts at once, by clicking shift and selecting the first and the last host of the range. This causes the detail view to open, which will then show all actions that are available on the selected objects.
3. In the detail view, we can acknowledge those problems by clicking on “Acknowledge Unhandled Problem Hosts”. Once the command is finished, we will immediately see the effect on the dashboard.
While you can use Shift to select ranges, it is also possible to use CTRL to select multiple objects individually.