From 8980924567056750e223b7eff41400833b82a866 Mon Sep 17 00:00:00 2001 From: Michael Friedrich Date: Thu, 22 May 2014 18:17:39 +0200 Subject: [PATCH] Documentation: Update what's new for 2.0.0 Beta 1. Fixes #5820 --- doc/1-about.md | 119 ++++++++++++++++++++++++++++++---- doc/3-monitoring-basics.md | 2 +- doc/5-configuring-icinga-2.md | 7 +- 3 files changed, 111 insertions(+), 17 deletions(-) diff --git a/doc/1-about.md b/doc/1-about.md index c623d81e2..3393c9b37 100644 --- a/doc/1-about.md +++ b/doc/1-about.md @@ -33,26 +33,117 @@ Icinga 2 is available as [Vagrant Demo VM](#vagrant). ## What's new -### What's New in Version 0.0.11 +### What's New in Version 2.0.0 Beta 1 -* Redesigned cluster stack. #6192 -* Support for conditional command arguments. #5933 -* IDO: is_reachable attribute for hosts and services. #6094 -* IDO: Add missing events for service/host state changes. #6151 -* Lots of documentation updates. #6010, #6115, #6149, #6163, #6184, #6198, #6114, #6128, #5485 -* Plenty of bug fixes. #6179, #6148, #6111, #6131, and many more +Lots of things. Please read [Icinga 2 in a nutshell](#icinga2-in-a-nutshell). #### Changes -> **Note** -> -> Configuration updates required! - -* Configuration Changes. For a detailed list of changes check out [#5909](https://dev.icinga.org/issues/5909) -* DB IDO schema upgrade required. - ### Archive Please check the `ChangeLog` file. +## Icinga 2 in a Nutshell + +* Use [Packages](#getting-started) + +Look for available packages on [http://packages.icinga.org] or ask your distribution's maintainer. +Compiling from source is not recommended, and not the default either. + +* Real Distributed Architecture + +[Cluster](#distributed-monitoring-high-availability) model for distributed setups, load balancing +and High-Availability installations. Secured by SSL x509 certificates, supporting IPv4 and IPv6. + +* High Performance + +Multithreaded and scalable for small embedded systems as well as large scale environments. +Running checks every second - not an issue anymore. + +* Modular & flexible [features](#features) + +Enable only the features required for the local installation. Using Icinga Web 2 and requiring +DB IDO, but no status data? No problem, just enable ido-mysql and disable statusdata. +Another example: Graphite should be enabled on a dedicated cluster node. Enable it over there +and point it to the carbon cache socket. + +* Native support for the [Livestatus protocol](#setting-up-livestatus) + +Next to the Icinga 1.x status and log files and the IDO database backend the commonly used +Livestatus protocol is available with Icinga 2. Either as unix or tcp socket. + +* Native support for [Graphite](#graphite-carbon-cache-writer) + +Icinga 2 still supports writing performance data files for graphing addons, but also adds the +capability of writing performance data directly onto a Graphite tcp socket simplifying realtime +monitoring graphs. + +* Dynamic configuration language + +Simple [apply](#using-apply) and [assign](#group-assign) rules for creating configuration object +relationships based on patterns. Supported with [duration literals](#duration-literals) for interval +attributes, [expression operators](#expression-operators), [function calls](#function-calls) for +pattern and regex matching and (global) [constants](#constants). +Sample configuration for common plugins is shipped with Icinga 2 as +part of the [Icinga Template Library](#itl). + +* Revamped Commands + +One command to rule them all - supporting optional and conditional [command arguments](#commands-arguments). +[Environment variables](#command-environment-variables) exported on-demand populated with +runtime evaluated macros. +Three types of commands used for different actions: checks, notifications and events. +Check timeout for commands instead of a global option. Command custom attributes allowing +you to specify default values for the command. + +* Custom Runtime Macros + +Access [custom attributes](#custom-attributes) with their short name, for example $mysql_user$, +or any object attribute, for example $host.notes$. Additional macros with runtime and statistic +information are available as well. Use these [runtime macros](#runtime-custom-attributes) in +the command line, environment variables and custom attribute assignments. + +* Notifications simplified + +Multiple [notifications](#notifications) for one host or service with existing users +and notification commands. No more duplicated contacts for different notification types. +Telling notification filters by state and type, even more fine-grained than Icinga 1.x. +[Escalation notifications](#notification-escalations) and [delayed notifications](#first-notification-delay) +are just notifications with additional begin and/or end time attribute. + +* Dependencies between Hosts and Services + +Classic [dependencies](#dependencies) between host and parent hosts, and services and parent services work the +same way as "mixed" dependencies from a service to a parent host and vice versa. Host checks +depending on an upstream link port (as service) are not a problem anymore. +No more additional parents settings - host dependencies already define the host parent relationship +required for network reachability calculations. + +* [Recurring Downtimes](#recurring-downtimes) + +Forget the external cronjob scheduling downtimes on-demand. Configure them right away as Icinga 2 +configuration objects and set their active time window. + +* Embedded Health Checks + +No more external statistic tool but an [instance](#itl-icinga) and [cluster](#itl-cluster) health +check providing direct statistics as performance data for your graphing addon, for example Graphite. + +* Compatibility with Icinga 1.x + +All known interfaces are optional available: [status files](#status-data), [logs](#compat-logging), +[DB IDO](#configuring-ido) MySQL/PostgreSQL, [performance data](#performance-data), +[external command pipe](#external-commands) and for migration reasons a +[checkresult file reader](#check-result-files) too. +All [Monitoring Plugins](#setting-up-check-plugins) can be integrated into Icinga 2 with +newly created check command configuration if not already provided. +[Configuration migration](#configuration-migration) is possible through the Icinga Web 2 CLI tool. +Additional information on the differences is documented in the [migration](#differences-1x-2) chapter. + +* [Vagrant Demo VM](#vagrant) + +Used for demo cases and development tests. Get Icinga 2 running within minutes and spread the #monitoringlove +to your friends and partners. + + diff --git a/doc/3-monitoring-basics.md b/doc/3-monitoring-basics.md index 90c688110..09e2548e1 100644 --- a/doc/3-monitoring-basics.md +++ b/doc/3-monitoring-basics.md @@ -204,7 +204,7 @@ the user groups are associated as attributes in `Notification` objects. email = "ops@example.com" } -### Group Membership Assign +### Group Membership Assign If there is a certain number of hosts, services or users matching a pattern it's reasonable to assign the group object to these members. diff --git a/doc/5-configuring-icinga-2.md b/doc/5-configuring-icinga-2.md index 650dc8bbc..44894110d 100644 --- a/doc/5-configuring-icinga-2.md +++ b/doc/5-configuring-icinga-2.md @@ -212,7 +212,7 @@ Constants may be used in expressions: check_interval = MyCheckInterval / 2.5 } -#### Function Calls +#### Function Calls Functions can be called using the `()` operator: @@ -236,7 +236,7 @@ log(value) | Writes a message to the log. Non-string values log(severity, facility, value) | Writes a message to the log. `severity` can be one of `LogDebug`, `LogNotice`, `LogInformation`, `LogWarning` and `LogCritical`. Non-string values are converted to a JSON string. exit(integer) | Terminates the application. -### Dictionary Operators +### Dictionary Operators In addition to the `=` operator shown above a number of other operators to manipulate dictionary elements are supported. Here's a list of all @@ -386,6 +386,9 @@ Global constants can be set using the `const` keyword: Once defined a constant can be access from any file. Constants cannot be changed once they are set. +There is a defined set of [global constants](#global-constants) which allow +you to specify application settings. + ### Apply The `apply` keyword can be used to create new objects which are associated with -- 2.40.0