Icinga
Icinga
|
|
---|---|
![]() |
|
Basic data
|
|
Current version | 2.11.4 (June 18, 2020) |
operating system | Unix derivatives |
category | Network monitoring |
License | GPLv2 |
German speaking | Yes |
www.icinga.com |
Icinga is an open source application for system and network monitoring. It was originally created as a fork of the Nagios system monitoring application in 2009.
Numerous modifications were intended to correct defects in the Nagios development process and to integrate new features such as the Icinga Web2 web interface and additional database connectors for MySQL , Oracle and PostgreSQL , a REST API . The Icinga developers also aim to better take into account the needs of the community and to integrate patches more quickly. The first stable version 1.0 was released in December 2009.
"Icinga" is a Zulu word that means "seeks", "searched" or "examined" and is pronounced with a click consonant .
history
Dissatisfied with the then stagnating development of Nagios, also with the desire to broaden the development, a group of developers from the Nagios community announced the Icinga fork in May 2009.
In their first year, Icinga developers released separate versions of the Core, API and Web and celebrated their 10,000th anniversary. Download.
In the second year, the Icinga project brought out a uniform and stable core and web, added dual-stack IPv6 / IPv4 support, optimized the database connection, revised the Icinga web user interface Icinga Web2 and integrated various community add-ons. ons (PNP4Nagios, LConf, Heatmap and Business Process Add-on). The project reached more than 70,000 downloads and grew to 23 team members.
In the second year, Icinga celebrated the 100,000. Download, integrated the Icinga API component into Icinga Web, improved SLA reports, opened an official Freenode IRC group and extended the Icinga virtual appliances to the Debian, OpenSUSE and CentOS operating systems.
In October 2012, the Icinga project released a technology preview of a core framework replacement and parallel development branch, Icinga 2. The developers expressed an intention to rewrite the core to correct deficiencies such as complicated configuration and scalability limitations in large implementations.
The project outlined plans to write the Icinga 2 core primarily in C ++, design a new component loader architecture, and redesign the process of performing monitoring and auditing.
In June 2014, the Icinga project released the first stable version of Icinga 2.
history
date | Release | Remarks |
---|---|---|
June 18, 2020 | Icinga 2 v2.11.4 | Bugfix release. Fixes errors in the unknown service status after reload, fixes Segfault errors during the heartbeat timeout. |
March 3, 2020 | Icinga 2 v2.11.3 | Bugfix release. Fixes JSON-RPC crashes in large environments. |
October 24, 2019 | Icinga 2 v2.11.2 | Bugfix release. Fixes errors in Cluster-Config-Sync, especially long reloads in large environments. |
17th October 2019 | Icinga 2 v2.11.1 | Bugfix release. Fixes critical errors in Cluster-Config-Sync. |
19th September 2019 | Icinga 2 v2.11.0 | Feature and bug fix release. Fixes missing notification after downtime, most of the network stack was rewritten, REST-API improved, stability improved. |
23 May 2019 | Icinga 2 v2.10.5 | Bugfix release. Fixes problems with logrotate, API improvements, IDO DB reload mechanism and documentation |
19th March 2019 | Icinga 2 v2.10.4 | Bugfix release. TLS connections for InfluxDB / Elasticsearch. Performance for HA cluster communication |
26th February 2019 | Icinga 2 v2.10.3 | Bugfix release. Problems with TLS connections with master and agents with reload and “Connection: close” headers with Ruby clients fixed. In addition, problems with (scheduled) downtimes in the HA-enabled cluster environments have been fixed.
2.10.3 also solves a problem with future time offsets and check results. |
November 14, 2018 | Icinga 2 v2.10.2 | Bugfix release. Fixed TLS connection errors in the cluster, increased stability, fixed API errors, optimized IDO. |
October 18, 2018 | Icinga 2 v2.10.1 | Bugfix release. Problems of namespace support and reload / restart of the application fixed. |
October 11, 2018 | Icinga 2 v2.10 | Feature release with support for own namespaces. Optimization of notifications, improved syntax highlighting with vim.
Improvement of the connection handling. Extension of the ITL commands. |
July 24, 2018 | Icinga 2 v2.9.1 | Bugfix release. Fixed a bug when using the daemonize option or an init system other than systemd.
Fixes a bug in the SELinux guideline and the sourcing in the init script on non-Posix systems. |
17th July 2018 | Icinga 2 v2.9.0 | Feature release with Elasticsearch 6 support, TLS support for IDO PostgreSQL and improvements
for the setup wizard, check scheduling, downtime notification handling and memory handling. |
April 25, 2018 | Icinga 2 v2.8.4 | Bugfix release. Fixed a regression where running the check resulted in a crash. |
March 22, 2018 | Icinga 2 v2.8.2 | Bugfix release. Various security issues have been fixed. |
17th January 2018 | Icinga 2 v2.8.1 | Bugfix release. Fixed a bug in the API when creating an object at runtime.
Fixed installation problems on Windows with missing DLLs. Documentation updates. |
17th November 2017 | Icinga 2 v2.8.0 | Feature release with new CA proxy function. New beat detection algorithm. ElasticsearchWriter function with HTTP proxy support.
CORS support for the REST API. The "bottom-up" cluster mode and the Classic UI package have been removed. |
9th November 2017 | Icinga 2 v2.7.2 | Bugfix release. Invalid attribute names in the systemd unit file and incorrect unique restriction for IDO DB fixed.
Documentation update |
September 21, 2017 | Icinga 2 v2.7.1 | Bugfix release. Problem with DB IDO, Livestatus, Notifications fixed. Update of the notification scripts. Documentation update. |
2nd August 2017 | Icinga 2 v2.7.0 | Feature release with new notification scripts, work queues, check plugin for NSClient ++ API & stability improvements & fixes |
December 13, 2016 | Icinga 2 v2.6.0 | Feature release with bundled NSClient ++ & stability improvements & fixes |
23rd August 2016 | Icinga 2 v2.5.0 | Feature release with InfluxDB, IDO Performance, Timeperiod Excludes & Fixes |
November 16, 2015 | Icinga 2 v2.4.0 | Feature release with new API (REST API) |
March 13, 2015 | 1.14 | corrections |
March 9, 2015 | Icinga 2 v2.3.0 | Feature release with configuration extensions (functions, loops, conditionals, object access, time-dependent threshold values, etc.),
OpenTSDB support and troubleshooting client command |
19th November 2014 | 1.12 | Classic UI enhancements and corrections |
17th November 2014 | Icinga 2 v2.2.0 | Feature release with remote clients, CSR auto-signature, cli, arrays / dictionaries in their own attributes |
29th August 2014 | Icinga 2 v2.1.0 | Feature release with extended configuration analysis, logging, cluster high availability features |
June 16, 2014 | Icinga 2 v2.0.0 | First stable version Icinga 2 |
May 16, 2014 | Icinga 2 v0.0.11 | Revised cluster feature with high availability and load balancing zones, command arguments & conditionals |
April 29, 2014 | Icinga 2 v0.0.10 | Extension applies rules for notifications, dependencies, custom attributes, etc. |
March 31, 2014 | Icinga 2 v0.0.9 | Rule-based 'apply' logic, user-friendliness of the configuration, update of the database schema (MySQL, PostgreSQL) |
March 13, 2014 | 1.11 | Interoperability (with Solaris, Oracle, IE) and user interface improvements |
March 11, 2014 | Icinga 2 v0.0.8 | Dependencies as in-line dictionaries, cluster health checks, recursive 'config includes' |
February 7, 2014 | Icinga 2 v0.0.7 | Automated tests in Vagrant, database IDO stability |
19th December 2013 | Icinga 2 v0.0.6 | Recurring downtimes, log command arguments, latency statistics |
3rd December 2013 | Icinga 2 v0.0.5 | Performance improvements & bug fixes |
November 12, 2013 | Icinga 2 v0.0.4 | IDO PostgreSQL , Livestatus History |
October 24, 2013 | Icinga 2 v0.0.3 | IDO MySQL , Livestatus, graphite, cluster structure, documentation |
October 24, 2013 | 1.10 | Classic UI live search and on-demand filter selection, performance improvements |
2nd of July 2013 | Icinga 2 v0.0.2 | Technology preview with Core 1.x compatibility layer |
May 7, 2013 1.9 | 1.9 | Performance improvements and usability fixes |
October 25, 2012 | Icinga 2 v0.0.1 | Technology preview of the replacement of the core framework |
October 18, 2012 | 1.8 | Community based improvements to the optional user interfaces and Icinga reporting |
May 15, 2012 | 1.7 | Packaging simplified |
November 30, 2011 | 1.6 | SLA extension (optional) |
August 24, 2011 | 1.5 | Icinga reporting integrated into the Icinga web interface |
May 11, 2011 | 1.4 | Improvements to both optional user interfaces |
February 16, 2011 | 1.3 | Dual-stack IPv4 and IPv6 support |
October 13, 2010 | Icinga Mobile user interface for smartphones and tablets | |
October 6, 2010 | 1.2 | Uniform stable version |
August 18, 2010 | 1.0.3 | Uniform version, unstable Icinga Web |
July 30, 2010 | 1.0.2 Core, 1.0.1 Web | Performance improvements |
March 3, 2010 | 1.0.1 | Web beta performance improvements, Icinga web enhancements |
December 16, 2009 | 1.0 Core, 0.9.1 Web Alpha | Stable Core, Oracle and PostgreSQL database support |
October 28, 2009 | 1.0 RC core | Initial Oracle database support |
September 15, 2009 | 0.8.4 | IDOUtils bug fixes |
September 2, 2009 | 0.8.3 | First support of the PostgreSQL database |
August 12, 2009 | 0.8.2 | Icinga API integration |
June 16, 2009 | 0.8.1 | Core bug fix |
May 15, 2009 | 0.8 | Initial release |
Features
As a fork of Nagios, Icinga offers the functions of Nagios as well as some extensions such as the optional reporting module with improved SLA accuracy, additional database connectors for PostgreSQL and Oracle and distributed systems for redundant monitoring.
Basically Icinga in version 1 retains the configuration and plug-in compatibility with Nagios, which makes the migration between the two monitoring programs easier. Icinga2, on the other hand, has been completely rewritten, the configuration syntax changed here. The plugin compatibility, however, has remained.
monitoring
- Monitoring of network services (SMTP, POP3, HTTP, NNTP, ping etc.)
- Monitoring of host resources (CPU usage, hard disk usage, etc.)
- Monitoring of server components (switches, routers, temperature and humidity sensors, etc.)
- Simple plug-in design that enables users to develop their own service checks
- Parallelized service checks
- Possibility to define a network host hierarchy with the help of "higher-level" hosts, which enables the detection and differentiation between failed and unreachable hosts
- Ability to define event handlers to be executed during service or host events for proactive problem resolution
Notification
- Notification of contacts when service or host problems arise and are resolved (via email, pager, instant message, or custom method)
- Escalation of alerts to other users or communication channels
Visualization & reporting
- User interface (Icinga Web2) for the visualization of host and service status, network maps, reports, logs etc.
- Template-based reports (e.g. top 10 problematic hosts or services, summary of the complete monitoring environment, availability reports, etc.)
- Report repository with different access levels and automatic report generation and distribution
- Optional extension based on the Icingaweb2 reporting module for SLA reporting, which differentiates between critical events and planned and unplanned downtimes and confirmation periods
- Capacity utilization reporting
- Performance graph via add-ons such as PNP4Nagios, Graphite and Grafana
architecture
The Icinga Core is written in C and has a modular architecture with its own core, user interface and database on which users can integrate various add-ons and plug-ins.
The latter communicate via Icinga's Doctrine Abstraction Layer, REST and plug-in APIs - which mediate between the external data and internal structures. This bundling of the components enables the users to distribute the Icinga system for redundant monitoring. It also gives the user the freedom to customize Icinga to suit their needs.
Icinga core
The Icinga Core manages monitoring tasks and receives test results from various plug-ins. These results are then transmitted to the IDODB (Icinga Data Out Database) via the IDOMOD interface (Icinga Data Out Module) and the IDO2DB service daemon (Icinga Data Out to Database) via SSL encrypted TCP sockets. Although both are supplied together with the core (also known as IDOUtils), they are individual standing components that can be separated to distribute the data and processes across multiple servers to monitor distributed systems.
The Icinga Classic user interface was also delivered with Icinga Core up to version 2.7.2 and up to then could be used as a replacement for the PHP-based Icinga web interface.
Icinga 2
Icinga 2 manages monitoring tasks, performs reviews, and sends alarm notifications. The functions of Icinga 2 can be activated if necessary, be it the standard functions such as the “checker” or “notification” component or external interfaces that are compatible with Icinga 1.x and its user interfaces, for example the IDODB (Icinga Data Out Database ). Icinga 2 ships a built-in cluster stack that is secured by SSL x509 certificates and attempts to simplify distributed monitoring setups.
The configuration syntax differs from Icinga Core 1.x and Nagios and requires migration when upgrading.
Icinga user interface
The GUI intended for Icinga2 is Icingaweb2, development is also ongoing here.
Icingaweb2 is a comprehensive "PHP framework" for web applications, which also allows the development of your own modules. The Icinga Classic UI was removed from Icinga 2, but is still available as source code or in older packages, but is no longer actively supported.
Icinga Web 2 modules
Monitoring module
This is the main module that comes with the Icinga Web2 package. It represents an intuitive user interface for monitoring with Icinga 2. The so-called views can be sorted and placed in their own dashboards. An integrated user administration with possible MySQL or AD integration is also available and regulates the possible access to the monitoring. Communication to the Icinga 2 Core takes place via the Icinga-2-REST-API. All possible actions can be applied to the monitoring objects here.
Icinga Web2 is barrier-free and can therefore also be operated with screen readers. The color schemes can also be adjusted accordingly for people with visual impairment.
Jira module
A module was developed for the "Jira Service Desk" ticket system. It enables integration into the Icingaweb2 interface and the Icingaweb2 Director module.
Director module
A database-supported GUI for the administration and automation of Icinga 2. Communication with Icinga 2 takes place via the Icinga 2 API. Using so-called “templates” for host and service objects, it is possible to standardize monitoring.
A connection to external sources (databases, CSV, XLS) is also possible, these enable the fully automatic import of host and service objects.
Business process tools
This allows processes and their dependencies to be displayed graphically. The process statuses can be escalated to the mail or trouble ticket system.
Cube
Visualization of hosts and services in a separate view.
PNP
Visualization of performance data using graphs, based on RRDtool . The PNP module integrates the data from pnp4nagios, which is its own software development.
Elasticsearch
Connection to an Elastic instance to display host data (e.g. event log) requires a functioning Elasticsearch server.
Icinga data out database
The Icinga Data Out Database (IDODB) is a storage space for historical monitoring data for add-ons or the Icinga web interface. In contrast to its predecessor Nagios, Icinga also supports PostgreSQL and Oracle databases in addition to MySQL. The Icinga Web2 GUI accesses this database and displays the host and service status graphically.
Icinga reporting
The Icinga project offers an optional Icinga reporting module; it replaces the previous "Jasper Reports" solution.
Extended functionality
Checks
All checks that were also written for Nagios can be used for Icinga. In addition, Icinga now maintains its own website for checks and extensions in order to be independent in development.
Performance data
Almost all checks can also write so-called performance data. These would have to be processed with an appropriate program. Icinga 2 works with the following programs, among others, to make performance data evaluable for a longer period of time:
- Graphite
- PNP4Nagios (module is not actively developed further)
Log files
- There is a separate Icinga 2 output plugin for Elasticsearch , which enables certain events to be sent to the Icinga 2 REST API.
- Graylog
Individual evidence
- ↑ https://icinga.com/2020/06/18/icinga-2-11-4/
- ↑ Open-source working as advertised: ICINGA forks Nagios . In: CNET . May 6, 2009 ( online [accessed August 17, 2018]).
- ↑ a b Why a fork? - Icinga: Open Source Monitoring . In: archive.li . April 23, 2013 ( online [accessed August 17, 2018]).
- ↑ SOpenSource. Retrieved August 17, 2018 .
- ↑ Icinga Web 2 . In: Icinga . November 30, 2015 ( online [accessed August 17, 2018]).
- ^ Falko Benthin: Icinga »ADMIN Magazine. Retrieved August 17, 2018 .
- ↑ A lesson in Zulu: “Icinga” . In: Icinga . November 3, 2010 ( online [accessed August 17, 2018]).
- ↑ Nagios Vs. Icinga: the real story of one of the most heated forks in free software. Retrieved August 17, 2018 .
- ↑ 3 years old & 100,000 downloads! In: Icinga . May 6, 2012 ( online [accessed August 17, 2018]).
- ↑ Icinga 2 v.0.0.1 released! In: Icinga . October 25, 2012 ( online [accessed August 17, 2018]).
- ↑ Icinga 2.0 has arrived . In: Icinga . June 16, 2014 ( online [accessed August 17, 2018]).
- ↑ Michael Friedrich: Icinga 2.10.2 bugfix release. In: Icinga. November 14, 2018. Retrieved December 13, 2018 (American English).
- ↑ Icinga 2.10 released: Namespaces, Notifications, TLS Performance . In: Icinga . October 11, 2018 ( online [accessed October 12, 2018]).
- ↑ Icinga | NETWAYS GmbH. Accessed August 27, 2018 (English).
- ↑ Migrating From Icinga 1x - Icinga 2. Retrieved on August 27, 2018 (English).
- ↑ Feu Mourek: Icinga Reporting - Hands On. In: Icinga. June 17, 2019, Retrieved November 12, 2019 (American English).
- ↑ About - Icinga 2. Retrieved August 17, 2018 (English).
- ↑ Icinga 2 v2.8.0 released . In: Icinga . November 17, 2017 ( online [accessed August 17, 2018]).
- ↑ Upgrading Icinga 2 - Icinga 2. Accessed September 24, 2019 .
- ↑ Johannes Meyer: Icinga Web 2 - Everyone can do that. In: netways.de. January 15, 2015, accessed September 24, 2019 .
- ↑ Blerim Sheqa: Releasing Icinga Module for Jira. In: Icinga. November 7, 2019. Retrieved November 12, 2019 (American English).
- ↑ start [PNP4Nagios Docs]. Retrieved September 24, 2019 .
- ↑ Search results for "monitoring-plugins" | Icinga. Retrieved August 17, 2018 (American English).
- ^ Michael Friedrich: Flexible and easy log management with Graylog. Netways.de, June 1, 2017, accessed on December 3, 2019 .