Icinga

Icinga Version 1.5 Documentation

Copyright 2009-2011 Icinga Development Team.

Portions copyright © by Nagios/Icinga community members - see the THANKS file in the Icinga core sources for more information..

Credits to Yoann LAMY for creating the Vautour Style we use for the Icinga Classic UI

Icinga is licensed under the terms of the GNU General Public License Version 2 as published by the Free Software Foundation. This gives you legal permission to copy, distribute and/or modify Icinga under certain conditions. Read the 'LICENSE' file in the Icinga distribution or read the online version of the license for more details.

Icinga is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.

Nagios is licensed under the terms of the GNU General Public License Version 2 as published by the Free Software Foundation. This gives you legal permission to copy, distribute and/or modify Nagios under certain conditions. Read the 'LICENSE' file in the Nagios distribution or read the online version of the license for more details.

Nagios and the Nagios logo are registered trademarks of Ethan Galstad. All other trademarks, servicemarks, registered trademarks, and registered servicemarks mentioned herein may be the property of their respective owner(s). The information contained herein is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.

2011.08.24

Revision History
Revision 1.5 2011-08-24
1.5 Icinga Documentation
Revision 1.x 2010/2011
1.x Icinga Documentation
Revision 0.1 2009-08-12
First Release

Table of Contents

1. About
About Icinga
What's New in Icinga 1.5
2. Getting Started
Advice for beginners
Quickstart Installation Guides
Icinga Quickstart
Icinga Quickstart FreeBSD
Icinga with IDOUtils Quickstart
Icinga and IDOUtils Quickstart on FreeBSD
Links to other published Howtos
Upgrading (to) Icinga
Upgrading IDOUtils Database
Monitoring Windows Machines
Monitoring Linux/Unix Machines
Monitoring Netware Servers
Monitoring Network Printers
Monitoring Routers and Switches
Monitoring Publicly Available Services
3. Configuring Icinga
Configuration Overview
Main Configuration File Options
Object Configuration Overview
Object Definitions
Host definition
Hostgroup Definition
Service Definition
Servicegroup Definition
Contact Definition
Contactgroup Definition
Timeperiod Definition
Command Definition
Servicedependency Definition
Serviceescalation Definition
Hostdependency Definition
Hostescalation Definition
Hostextinfo Definition
Serviceextinfo Definition
Module Definition
Custom Object Variables
CGI Configuration File Options
Authentication And Authorization In The CGIs
4. Running Icinga
Verifying Your Configuration
Starting and Stopping Icinga
5. The Basics
Icinga Plugins
Understanding Macros and How They Work
Standard Macros in Icinga
Host Checks
Service Checks
Active Checks
Passive Checks
State Types
Time Periods
Determining Status and Reachability of Network Hosts
Notifications
6. User Interfaces
Icinga Classic UI: Information On The CGIs
Information On CGI parameters
Executing CGIs on the command line
Installation of the Icinga-Web Frontend
Upgrading Icinga-Web and Icinga-Web Database
Configuration Overview of Icinga-Web
Introduction to Icinga-Web
Introduction to Icinga-Web (>= 1.5.x)
Introduction to Icinga-Web (>= 1.3.x)
Introduction to Icinga-Web (up to 1.2.x)
Integration of PNP4Nagios into Icinga-Web
7. Advanced Topics
External Commands
Event Handlers
Volatile Services
Service and Host Freshness Checks
Distributed Monitoring
Redundant and Failover Network Monitoring
Detection and Handling of State Flapping
Notification Escalations
Escalation Condition
On-Call Rotations
Monitoring Service and Host Clusters
Host and Service Dependencies
State Stalking
Performance Data
Scheduled Downtime
Using The Embedded Perl Interpreter
Adaptive Monitoring
Predictive Dependency Checks
Cached Checks
Passive Host State Translation
Service and Host Check Scheduling
Custom CGI Headers and Footers
Object Inheritance
Time-Saving Tricks For Object Definitions
8. Security and Performance Tuning
Security Considerations
Enhanced CGI Security and Authentication
Tuning Icinga For Maximum Performance
Fast Startup Options
Large Installation Tweaks
Using The Icingastats Utility
Graphing Performance Info With PNP4Nagios
Temporary Data
9. Integration With Other Software
Integration Overview
SNMP Trap Integration
TCP Wrapper Integration
MKLiveStatus Integration
Installation of the Icinga-Reporting with JasperServer
10. Additional software
Icinga Addons
NRPE
NSCA
11. Development
Icinga Plugin API
Developing Plugins For Use With Embedded Perl
List of External Commands
Installation and use of the Icinga API
The Icinga-Web REST API
12. IDOUtils
Introduction
Purpose
Design Overview
Instances
Installation
Components
Overview
IDOMOD
LOG2IDO
FILE2SOCK
IDO2DB. IDO2DB
Example Configurations
Single Server, Single Instance Setup
Single Server, Multiple Instance Setup
Single Server, Single Instance Log File Import
IDOUtils Database Model
Central Tables
Debugging Tables
Historical Tables
Current Status Tables
Configuration Tables
Database changes/alterations
Index

List of Figures

3.1. Example of new header
6.1. Icinga-Web login screen
6.2. Icinga-Web overview
6.3. Icinga-Web main screen
6.4. Icinga-Web status cronk
6.5. Icinga-Web top menu
6.6. Icinga-Web data cronks
6.7. Icinga-Web tactical overview cronks
6.8. Icinga-Web reporting cronk
6.9. Icinga-Web misc cronks
6.10. Icinga-Web live search
6.11. Icinga-Web host status
6.12. Icinga-Web service status
6.13. Icinga-Web hostgroup status
6.14. Icinga-Web log
6.15. Icinga-Web cronk bar
6.16. Icinga-Web cronk bar
6.17. Icinga-Web host commands
6.18. Icinga-Web service commands
6.19. Icinga-Web filter restriction
6.20. Icinga-Web filter condition
6.21. Icinga-Web filter active
6.22. Icinga-Web top menu admin
6.23. Icinga-Web user admin
6.24. Icinga-Web edit user
6.25. Icinga-Web group admin
6.26. Icinga-Web groups
6.27. Icinga-Web principals
6.28. Icinga-Web logs
6.29. Icinga-Web Tasks
6.30. Icinga-Web login screen
6.31. Icinga-Web overview
6.32. Icinga-Web main screen
6.33. Icinga-Web status cronk
6.34. Icinga-Web top menu
6.35. Icinga-Web data cronks
6.36. Icinga-Web tactical overview cronks
6.37. Icinga-Web misc cronks
6.38. Icinga-Web live search
6.39. Icinga-Web log
6.40. Icinga-Web cronk bar
6.41. Icinga-Web cronk bar
6.42. Icinga-Web host commands
6.43. Icinga-Web service commands
6.44. Icinga-Web filter restriction
6.45. Icinga-Web filter condition
6.46. Icinga-Web filter active
6.47. Icinga-Web top menu admin
6.48. Icinga-Web user admin
6.49. Icinga-Web edit user
6.50. Icinga-Web group admin
6.51. Icinga-Web groups
6.52. Icinga-Web principals
6.53. Icinga-Web logs
6.54. Icinga-Web Tasks
6.55. Icinga-Web login screen
6.56. Icinga-Web overview
6.57. Icinga-Web main screen
6.58. Icinga-Web status cronk
6.59. Icinga-Web top menu
6.60. Icinga-Web data cronks
6.61. Icinga-Web tactical overview cronks
6.62. Icinga-Web misc cronks
6.63. Icinga-Web live search
6.64. Icinga-Web log
6.65. Icinga-Web cronk bar
6.66. Icinga-Web cronk bar
6.67. Icinga-Web host commands
6.68. Icinga-Web service commands
6.69. Icinga-Web filter restriction
6.70. Icinga-Web filter condition
6.71. Icinga-Web filter active
6.72. Icinga-Web top menu admin
6.73. Icinga-Web user admin
6.74. Icinga-Web edit user
6.75. Icinga-Web group admin
6.76. Icinga-Web groups
6.77. Icinga-Web principals
6.78. Icinga-Web logs
6.79. PNP4Nagios integrated in Icinga-Web
7.1. Cached checks
8.1. Average Host / Service Check Latency
8.2. Service Statistics
8.3. Host Statistics
8.4. Average Execution Times
8.5. External Commands
8.6. External Command Buffers
8.7. Cached Host and Service Checks
8.8. Average State Changes
9.1. Icinga-Reporting in Icinga-Web
9.2. Icinga-Reporting TOP10 in Icinga-Web
10.1. NRPE
10.2. NRPE remote
10.3. NSCA
12.1. Multiple instances
12.2. Future development: One Instance, multiple databases
12.3. Instance names based on geographical locations
12.4. Instance names based on their purpose
12.5. Loaded IDOMOD Event broker Module
12.6. IDOMOD Capabilities
12.7. LOG2IDO Utility
12.8. FILE2SOCK Utility
12.9. IDO2DB Daemon
12.10. IDO2DB with multiple Clients
12.11. Single Server, Single Instance Setup
12.12. Single Server, Multiple Instance Setup
12.13. Single Server, Single Instance Log File Import
12.14. Relationship of Central Tables
12.15. Relationship of Debugging Tables
12.16. Relationship of Historical Tables
12.17. Relationship of Current Status Tables
12.18. Relationship of Configuration Tables