Icinga

Icinga Version 1.0.2 Documentation

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 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.

2010.06.30

Revision History
Revision 1.0.2 Stable 2010-06-30
1.0.2 Icinga Documentation
Revision 1.0.1 Stable 2010-03-03
1.0.1 Icinga Documentation
Revision 1.0 Stable 2009-12-16
1.0 Stable Icinga Documentation
Revision 1.0 RC1 2009-10-28
1.0 RC1 Icinga Documentation
Revision 0.1 2009-08-12
First Release

Table of Contents

1. About
About Icinga
What's New in Icinga Core 1.0.2 and Icinga Web 1.0.1
Changelog of the Icinga Core
Changelog of the Icinga Web
2. Getting Started
Advice for beginners
Quickstart Installation Guides
Icinga Quickstart
Icinga Quickstart FreeBSD
Icinga with IDOUtils Quickstart
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
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
Information On The CGIs
6. 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
7. 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
8. Integration With Other Software
Integration Overview
SNMP Trap Integration
TCP Wrapper Integration
MKLiveStatus Integration
9. Icinga Addons
Icinga Addons
10. Development
Icinga Plugin API
Developing Plugins For Use With Embedded Perl
Installation of the Icinga Web Frontend
Installation and use of the Icinga API
11. 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

11.1. Multiple instances
11.2. Future development: One Instance, multiple databases
11.3. Instance names based on geographical locations
11.4. Instance names based on their purpose
11.5. Loaded IDOMOD Event broker Module
11.6. IDOMOD Capabilities
11.7. LOG2IDO Utility
11.8. FILE2SOCK Utility
11.9. IDO2DB Daemon
11.10. IDO2DB with multiple Clients
11.11. Single Server, Single Instance Setup
11.12. Single Server, Multiple Instance Setup
11.13. Single Server, Single Instance Log File Import
11.14. Relationship of Central Tables
11.15. Relationship of Debugging Tables
11.16. Relationship of Historical Tables
11.17. Relationship of Current Status Tables
11.18. Relationship of Configuration Tables