]> granicus.if.org Git - icinga2/blob - doc/1-about.md
3393c9b37b9358895588c0804138887f4e7c0cab
[icinga2] / doc / 1-about.md
1 # <a id="about-icinga2"></a> About Icinga 2
2
3 ## <a id="what-is-icinga2"></a> What is Icinga 2?
4
5 Icinga 2 is an open source monitoring system which checks the availability of your
6 network resources, notifies users of outages and generates performance data for reporting.
7
8 Scalable and extensible, Icinga 2 can monitor complex, large environments across
9 multiple locations.
10
11 ## <a id="licensing"></a> Licensing
12
13 Icinga 2 and the Icinga 2 documentation are licensed under the terms of the GNU
14 General Public License Version 2, you will find a copy of this license in the
15 LICENSE file included in the source package.
16
17 ## <a id="support"></a> Support
18
19 Support for Icinga 2 is available in a number of ways. Please have a look at
20 the support overview page at [https://support.icinga.org].
21
22 ## <a id="contribute"></a> Contribute
23
24 There are many ways to contribute to Icinga - be it by sending patches, testing and
25 reporting bugs, reviewing and updating the documentation. Every contribution
26 is appreciated!
27
28 Please get in touch with the Icinga team at [https://www.icinga.org/ecosystem/].
29
30 ## <a id="demo-vm"></a> Demo VM
31
32 Icinga 2 is available as [Vagrant Demo VM](#vagrant).
33
34 ## <a id="whats-new"></a> What's new
35
36 ### What's New in Version 2.0.0 Beta 1
37
38 Lots of things. Please read [Icinga 2 in a nutshell](#icinga2-in-a-nutshell).
39
40 #### Changes
41
42 ### Archive
43
44 Please check the `ChangeLog` file.
45
46 ## <a id="icinga2-in-a-nutshell"></a> Icinga 2 in a Nutshell
47
48 * Use [Packages](#getting-started)
49
50 Look for available packages on [http://packages.icinga.org] or ask your distribution's maintainer.
51 Compiling from source is not recommended, and not the default either.
52
53 * Real Distributed Architecture
54
55 [Cluster](#distributed-monitoring-high-availability) model for distributed setups, load balancing
56 and High-Availability installations. Secured by SSL x509 certificates, supporting IPv4 and IPv6.
57
58 * High Performance
59
60 Multithreaded and scalable for small embedded systems as well as large scale environments.
61 Running checks every second - not an issue anymore.
62
63 * Modular & flexible [features](#features)
64
65 Enable only the features required for the local installation. Using Icinga Web 2 and requiring
66 DB IDO, but no status data? No problem, just enable ido-mysql and disable statusdata.
67 Another example: Graphite should be enabled on a dedicated cluster node. Enable it over there
68 and point it to the carbon cache socket.
69
70 * Native support for the [Livestatus protocol](#setting-up-livestatus)
71
72 Next to the Icinga 1.x status and log files and the IDO database backend the commonly used
73 Livestatus protocol is available with Icinga 2. Either as unix or tcp socket.
74
75 * Native support for [Graphite](#graphite-carbon-cache-writer)
76
77 Icinga 2 still supports writing performance data files for graphing addons, but also adds the
78 capability of writing performance data directly onto a Graphite tcp socket simplifying realtime
79 monitoring graphs.
80
81 * Dynamic configuration language
82
83 Simple [apply](#using-apply) and [assign](#group-assign) rules for creating configuration object
84 relationships based on patterns. Supported with [duration literals](#duration-literals) for interval
85 attributes, [expression operators](#expression-operators), [function calls](#function-calls) for
86 pattern and regex matching and (global) [constants](#constants).
87 Sample configuration for common plugins is shipped with Icinga 2 as
88 part of the [Icinga Template Library](#itl).
89
90 * Revamped Commands
91
92 One command to rule them all - supporting optional and conditional [command arguments](#commands-arguments).
93 [Environment variables](#command-environment-variables) exported on-demand populated with
94 runtime evaluated macros.
95 Three types of commands used for different actions: checks, notifications and events.
96 Check timeout for commands instead of a global option. Command custom attributes allowing
97 you to specify default values for the command.
98
99 * Custom Runtime Macros
100
101 Access [custom attributes](#custom-attributes) with their short name, for example $mysql_user$,
102 or any object attribute, for example $host.notes$. Additional macros with runtime and statistic
103 information are available as well. Use these [runtime macros](#runtime-custom-attributes) in
104 the command line, environment variables and custom attribute assignments.
105
106 * Notifications simplified
107
108 Multiple [notifications](#notifications) for one host or service with existing users
109 and notification commands. No more duplicated contacts for different notification types.
110 Telling notification filters by state and type, even more fine-grained than Icinga 1.x.
111 [Escalation notifications](#notification-escalations) and [delayed notifications](#first-notification-delay)
112 are just notifications with additional begin and/or end time attribute.
113
114 * Dependencies between Hosts and Services
115
116 Classic [dependencies](#dependencies) between host and parent hosts, and services and parent services work the
117 same way as "mixed" dependencies from a service to a parent host and vice versa. Host checks
118 depending on an upstream link port (as service) are not a problem anymore.
119 No more additional parents settings - host dependencies already define the host parent relationship
120 required for network reachability calculations.
121
122 * [Recurring Downtimes](#recurring-downtimes)
123
124 Forget the external cronjob scheduling downtimes on-demand. Configure them right away as Icinga 2
125 configuration objects and set their active time window.
126
127 * Embedded Health Checks
128
129 No more external statistic tool but an [instance](#itl-icinga) and [cluster](#itl-cluster) health
130 check providing direct statistics as performance data for your graphing addon, for example Graphite.
131
132 * Compatibility with Icinga 1.x
133
134 All known interfaces are optional available: [status files](#status-data), [logs](#compat-logging),
135 [DB IDO](#configuring-ido) MySQL/PostgreSQL, [performance data](#performance-data),
136 [external command pipe](#external-commands) and for migration reasons a
137 [checkresult file reader](#check-result-files) too.
138 All [Monitoring Plugins](#setting-up-check-plugins) can be integrated into Icinga 2 with
139 newly created check command configuration if not already provided.
140 [Configuration migration](#configuration-migration) is possible through the Icinga Web 2 CLI tool.
141 Additional information on the differences is documented in the [migration](#differences-1x-2) chapter.
142
143 * [Vagrant Demo VM](#vagrant)
144
145 Used for demo cases and development tests. Get Icinga 2 running within minutes and spread the #monitoringlove
146 to your friends and partners.
147
148
149