3,929 bytes added
, 03:50, 11 June 2011
[[Category:Apps]]
This is for intermediate to advanced users of Linux and Amahi. Understand that without a web interface to do the configuration of objects the learning curve is large to configure Icinga for the first time.
= What is Icinga? =
[http://www.icinga.org/ Icinga] is a [https://www.icinga.org/faq/why-a-fork/ fork] of [http://www.nagios.org/ Nagios]. It is network monitoring software designed to monitor the overall status of your network through a polling system. This way when computers go down you know before anyone else because it will show up in Icinga.
In my Amahi HDA, I use Icinga to monitor: file share servers, network printers, router, internet modem, different internet websites. The reason why I monitor my router, internet mode and internet websites is because when my internet goes down I want to know if it's my router that is the problem or my ISP.
Icinga will also track statistics so you can measure how much downtime your computers have (or downtime of the internet) so you have exact statistics of your network monitored in realtime.
Now on to the good stuff.
= How to install Icinga =
== Prerequisites ==
* Fedora 14
* Amahi set up and running
* and the following packages installed
{{Code|yum groupinstall "Development Tools" "Legacy Software Development"}}
== Installation ==
Follow the [http://docs.icinga.org/1.4.0/en/quickstart-icinga.html Quickstart Installation Guide for Icinga] to compile and install Icinga and common Nagios plugins.
Once you have Icinga running when you attempt to access the web interface you should get permission denied. That is okay because we're going to fix that now.
Visit your hda at http://hda because now you have to set up a webapp. I know that this is in reverse order and that it should be compiled for the webapp directory but I'm still new to Amahi and not new to other things. So more detailed and correct instructions will come later.
Anyway, go to http://hda/setup?sub=webapps&tab=app and create a new webapp and call it icinga.
Now it's time to go into the terminal. All commands will be run as root and lines that start with # are comments.
{{Code|
ls /etc/httpd/conf.d/ | grep icinga
#you should see two files. Something like 1007-icinga.conf and icinga.conf
cat /etc/httpd/conf.d/icinga.conf >> /etc/httpd/conf.d/1007-icinga.conf
#Now edit /etc/httpd/conf.d/1007-icinga.conf
vim /etc/httpd/conf.d/1007-icinga.conf
#and move </VirtualHost> from the middle of the file to the end.
#be sure to confirm that the contents of icinga.conf are within 1007-icinga.conf before removing it
rm /etc/httpd/conf.d/icinga.conf
}}
Now you should have a 1007-icinga.conf file similar to the following (not exact)
{{Code|
<VirtualHost *:80>
ServerName icinga
ServerAlias icinga.home
DocumentRoot /var/hda/web-apps/icinga/html
<Directory "/var/hda/web-apps/icinga/html">
Options Indexes FollowSymLinks +ExecCGI
AddHandler fcgid-script .fcg
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/hda/web-apps/Icinga/logs/error_log
CustomLog /var/hda/web-apps/Icinga/logs/access_log combined env=!dontlog
#this is the beginning of the part from icinga.conf
ScriptAlias /icinga/cgi-bin "/usr/local/icinga/sbin"
<Directory "/usr/local/icinga/sbin">
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Icinga Access"
AuthType Basic
AuthUserFile /usr/local/icinga/etc/htpasswd.users
Require valid-user
</Directory>
Alias /icinga "/usr/local/icinga/share/"
<Directory "/usr/local/icinga/share/">
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "Icinga Access"
AuthType Basic
AuthUserFile /usr/local/icinga/etc/htpasswd.users
Require valid-user
</Directory>
</VirtualHost>
}}
NOTE: The Icinga instructions should be rewritten so that it conforms to the icinga app path for Amahi standards.