Table of Contents

Icinga Install Process

following on centos http://docs.icinga.org/1.0/en/quickstart-icinga.html see icinga_rules for a yet unfinished paste of the configuration.

## some debian deps
sudo aptitude install libdbi-dev fcgiwrap
cd
mkdir src
cd src
git clone git://git.icinga.org/icinga-core.git
cd icinga-core/
./configure
make
make all
sudo useradd -r icinga
sudo make fullinstall
sudo make install-config
sudo make install-webconf
sudo vim /usr/local/icinga/etc/objects/contacts.cfg
sudo htpasswd -c /usr/local/icinga/etc/htpasswd.users icingaadmin
sudo service httpd restart
sudo chkconfig httpd on
cd ~/src/
wget https://nagios-plugins.org/download/snapshot/nagios-plugins-master.tar.gz
tar tfvz nagios-plugins-master.tar.gz
tar xfvz nagios-plugins-master.tar.gz
rm nagios-plugins-master.tar.gz
cd nagios-plugins-*/
./configure --prefix=/usr/local/icinga --with-nagios-user=icinga
make
sudo make install

nginx config

## Icinga Classic - Configuration                                                                                                                  location /icinga {                                                                                                                                   alias   /usr/local/icinga/share;
      index  index.html;
      auth_basic              "Icinga Access";
      auth_basic_user_file    /usr/local/icinga/etc/htpasswd.users;
  }
 
  location ~ /icinga/(.*)\.cgi$ {
      root /usr/local/icinga/sbin;
      rewrite ^/icinga/cgi-bin/(.*)\.cgi /$1.cgi break;
      include /etc/nginx/fastcgi_params;
      fastcgi_pass  unix:/var/run/fcgiwrap.socket;
      fastcgi_index index.php;
      fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
      auth_basic              "Icinga Access";
      auth_basic_user_file    /usr/local/icinga/etc/htpasswd.users;
      fastcgi_param  AUTH_USER          $remote_user;
      fastcgi_param  REMOTE_USER        $remote_user;
  }

distributed services

uses active and passive checks, rest is timing.

     
define service{
 #use                     distributed-service   ; template to inherit from
 use generic-service
 name                    distributed-service   ; name of this template
 ;active_checks_enabled   0                 ; no active checks
 check_command               service-is-stale
 passive_checks_enabled  1                 ; allow passive checks
 check_period            24x7              ; check active all the time
 check_freshness         1
 register                0                 ; this is a template, not a real service
 }