Forking Nagios: Behold Icinga
Published 11:11, 06 May 09
One of the unique features of free software is that it can be forked. Indeed, it is one of the most powerful incentives for projects to hew close to their users. If they stray too far, someone might decide that enough is enough, and fork the project to produce something closer to their needs.
Whether that project thrives is a matter of support: if it meets a genuine need in the community, it will pick up users and coders. If it does not, it will wither.
Against that background, the following news is rather exciting:
A group of leading Nagios protagonists including members of the Nagios Community Advisory board and creators of multiple Nagios Addons have launched ICINGA - a fork of Nagios, the prevalent open source monitoring system. This independent project strives to be more responsive to user requests and faster in software development through the support of a broader developer community.
The new open source monitoring system will be fully compatible with its predecessor, retaining all the existing Nagios features while adding new features requested by the Nagios user community.
Long standing bugs will be removed and improvements will be made, especially for the database integration alongside a standardised API to simplify the integration of 3rd party addons. ICINGA will also be developed to include an improved functionality in large and complex environments.
If you were wondering about the name:
ICINGA is a Zulu word meaning ‘it looks for’, ‘it browses’, ‘it examines’. As far as we can tell, it is pronounced with one of the famous Zulu click consonants. So it should be almost impossible for Non-Zulu people to pronounce it correct. So the best answer probably is: You can pronounce it any way you like.
Fair enough – but perhaps we could drop the caps, eh?
Conscious that forking is not something to be undertaken lightly – after all, it potentially splits the devleopment community, and could even fatally wound the entire ecosystem around the code – the Icinga team has this to say on their motivation:
In recent years, Nagios’ popularity as an open source monitoring solution has seen it evolve into a quasi open source industry standard. Its extensive monitoring capabilities and high adaptability have attracted organisations of all sizes, including Amazon, BMW, Google, T-Mobile, Siemens, and many others.
Many of the features that have made Nagios so effective are extensions of the actual software written by numerous developers worldwide.
In contrast, the core of this system – the Nagios software itself- is maintained by a single developer in the United States and hence is developed at a slower pace. The Nagios community has previously attempted to clear this bottleneck with suggestions to broaden the developer base.
Long awaited improvements such as the regular integration of community patches, the connection to databases or the web interface were hoped to be accelerated. Unfortunately, these attempts came to little success and effective community commitment has gradually deflated.
Over the past 6 months, the situation has escalated with Nagios Enterprises LLC requesting several long term community projects to state that they are not officially connected to Nagios. In a few cases the companies were requested to change their open source project names or transfer their domains over. This combination of reduced visible software development and disproportionate actions against long time Nagios supporters has irritated many active community members.
To overcome these obstacles and to ensure above all, the continuous development of this popular monitoring software, a group of active, long standing Nagios community supporters have resolved to fork Nagios and open its development to a broader base.
This team currently consists of members of the previous Nagios community advisory board, developers of numerous Nagios extensions and NETWAYS, the organiser of the Nagios Conference and provider of the NagiosExchange platform. Under the new name ‘ICINGA’, fork supporters have now opened a new project. In the first release of this new software, some enduring bugs will be removed and database connections will be improved.
A new web interface and a standardised API will be introduced to simplify the integration of addons. The main addons for performance charts, visualisation or business process monitoring will also be available in a version adapted for the final ICINGA release.
Because forks are such a serious step, they are relatively rare in the open source world. Often, they are used more as a way of obtaining some radical shift in a project – as happened during the famous “Linus does not scale” incident, when leading developers came close to forking the Linux kernel as a result of inefficiencies in patch management.
That was averted when Linus agreed to changes that took some of the management burden from his shoulders, not least by using a dedicated program to manage the software development (initially with BitKeeper, and ultimately with Git).
It will therefore be interesting to see how the main Nagios team responds to this move – whether some accommodation is reached, or whether we will see two independent branches evolve.
In either case, it's a privilege to watch this manifestation of a seldom-used but critically-important software freedom – one never granted to those in the world of proprietary software.
Follow me on Twitter @glynmoody.