Icinga

Icinga Version 1.3 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.02.16

Revision History
Revision 1.3 2011-02-16
1.3 Icinga Documentation
Revision 0.1 2009-08-12
First Release

Table of Contents

1. About
About Icinga
What's New in Icinga 1.3
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
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
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 (up to 1.2.x)
Introduction to Icinga Web (>= 1.3.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 MRTG
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
Index

List of Figures

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 misc cronks
6.9. Icinga Web live search
6.10. Icinga Web log
6.11. Icinga Web cronk bar
6.12. Icinga Web cronk bar
6.13. Icinga Web host commands
6.14. Icinga Web service commands
6.15. Icinga Web filter restriction
6.16. Icinga Web filter condition
6.17. Icinga Web filter active
6.18. Icinga Web top menu admin
6.19. Icinga Web user admin
6.20. Icinga Web edit user
6.21. Icinga Web group admin
6.22. Icinga Web groups
6.23. Icinga Web principals
6.24. Icinga Web logs
6.25. Icinga Web login screen
6.26. Icinga Web overview
6.27. Icinga Web main screen
6.28. Icinga Web status cronk
6.29. Icinga Web top menu
6.30. Icinga Web data cronks
6.31. Icinga Web tactical overview cronks
6.32. Icinga Web misc cronks
6.33. Icinga Web live search
6.34. Icinga Web log
6.35. Icinga Web cronk bar
6.36. Icinga Web cronk bar
6.37. Icinga Web host commands
6.38. Icinga Web service commands
6.39. Icinga Web filter restriction
6.40. Icinga Web filter condition
6.41. Icinga Web filter active
6.42. Icinga Web top menu admin
6.43. Icinga Web user admin
6.44. Icinga Web edit user
6.45. Icinga Web group admin
6.46. Icinga Web groups
6.47. Icinga Web principals
6.48. Icinga Web logs
6.49. Icinga Web Tasks
6.50. PNP4Nagios integrated in Icinga Web
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