Nagios Fork No More: Icinga 2 v0.0.1 Released

The Icinga Project released a technology preview of its new open source monitoring solution Icinga 2, breaking away from the Nagios code base and constraints as a fork. Developed in parallel to Icinga 1.x.; the core framework replacement takes a new approach to configuration, check execution, interoperability and scaling in large environments.

Santa Rosa, CA, October 25, 2012 --(PR.com)-- The Icinga Project released a technology preview of its new open source monitoring solution Icinga 2, breaking away from the Nagios code base and constraints as a fork. Developed in parallel to Icinga 1.x.; the core framework replacement takes a new approach to configuration, check execution, interoperability and scaling in large environments.

Written entirely independent of Nagios code and predominantly in C++, Icinga 2 no longer falls under the typical definitions of a fork. “We made the conscious decision not to copy any code from the Icinga 1.x branch or Nagios. So Icinga 2 is being built completely from scratch. This allows us to design a new ‘component loader’ style core– a visionary, modular architecture,” clarified Michael Friedrich, Icinga Core developer.

Essentially a core framework replacement, the developers seek to build on the success of Icinga 1.x and deal with shortcomings inherited from Nagios as a fork. Such limitations included: scalability problems in large monitoring environments; complicated configuration that required dozens of makeshift tweaks and confusing methods in defining services; as well as limited access to the runtime state of the Icinga 1.x / Nagios core given its lack of a proper API.

To address inherited weaknesses while preventing complications between Icinga 1.x versions and existing extensions, the Icinga Project currently maintains two active development branches. “We will continue to improve on the existing forked code base in the Icinga 1.x branch. Our commitment is clear, and we have two further Icinga 1.x releases planned for 2013,” assured Bernd Erk, Icinga co-founder and project organizer. Parallel to this, development on Icinga 2 is underway in a separate branch.

With explicit goals for interoperability, Icinga 2 will run on both current and older *NIX platforms as well as Windows. Legacy interfaces to ensure easy migration from Icinga 1.x and Nagios will also be integrated. Most significantly, a single unified RPC interface to Icinga 2 internal states is currently under development. Designed to receive events in real-time, the interface will allow Icinga 2 to efficiently export data to Icinga compatible addons on performance (RRD, Graphite, etc.) and logs (Logstash, Graylog2, etc.).

In response to a common community complaint, Icinga 2 will introduce a new object-based configuration format. With templates and user-friendly features such as freely definable macros, the new format will offer clear, “one best way” configuration rules. This should avoid confusion experienced by Nagios and Icinga 1.x users, due to their multiple configuration methods.

The execution of monitoring checks is also being remodeled in Icinga 2. The only objects to be queried will be services, which will then combine to give hosts’ calculated states. To maintain compatibility with the multitude of Nagios and Icinga 1.x plugins, an interface to support Nagios-style monitoring is also being integrated. “This new monitoring model will allow the core to delegate the execution of service checks based on the availability of remote Icinga 2 instances, and enables us to build in replication among instances. In turn, we expect significant performance gains in large, distributed environments and much less maintenance work,” added Gunnar Beutner, Icinga core developer.

Furthermore, Icinga 2 will provide NRPE and NSCA-like remote check execution out of the box, through agent-based monitoring. A cross-platform agent (*NIX and Windows) that uses the same configuration format as Icinga 2 itself, and tightens security through SSL as well as IPv4/IPv6 communication, is on the drawing board. Coupled with compartmentalized loading of independent tasks (e.g. service check executions, notifications, database updates) to each monitoring instance, and automatic replication of configuration and program states- Icinga 2 will be easy to scale and cluster for large, distributed environments.

Beyond these new features, plans are underway to implement business process monitoring, dynamic notifications and auto-discovery features out of the box. With development still in its early stages, the Icinga Project looks to the community for feedback and participation:

“For the time being Icinga 2 is intended only for testing purposes; we welcome users to download our first technology preview - see what its already capable of, test, share ideas and even commit some code,” encouraged Michael Lübben, Icinga co-founder and developer.

Licensed under GPL v2, Icinga 2 is free to be used, distributed and modified. A stable release is planned for the end of 2013, with development milestones published on an online roadmap alongside updates on the Icinga website.

For more information, Icinga 2 and the Icinga Project is found at: www.icinga.org

(Images, logos and photos available. Reprints free of charge. Reference copy requested.)

- Notes To The Editor -

For more information on Icinga 2 see:
Icinga 2 Web Pages - https://www.icinga.org/about/icinga2/
Icinga 2 Development Roadmap – https://dev.icinga.org/projects/i2/roadmap
Icinga 2 Development Docs – https://wiki.icinga.org/display/icinga2/Home
Contact
ICINGA - Open Source Monitoring
Amanda Mailer
+49 911 9288512
www.icinga.org
About Icinga
Icinga is an enterprise grade open source monitoring system which keeps watch over a network and any conceivable network resource, notifies the user of errors and recoveries, and generates performance data for reporting.
ContactContact
Categories