Difference between revisions of "Icinga"

From Amahi Wiki
Jump to: navigation, search
Line 17: Line 17:
 
* Amahi set up and running
 
* Amahi set up and running
 
* and the following packages installed
 
* and the following packages installed
{{Code|yum groupinstall "Development Tools" "Legacy Software Development"}}
+
<pre>yum groupinstall "Development Tools" "Legacy Software Development"</pre>
  
 
== Installation ==
 
== Installation ==
Line 28: Line 28:
 
Anyway, go to http://hda/setup?sub=webapps&tab=app and create a new webapp and call it icinga.
 
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.
+
Now it's time to go into the terminal.  All commands will be run as root.
{{Code|ls /etc/httpd/conf.d/ | grep icinga}}
+
<pre>ls /etc/httpd/conf.d/ | grep icinga</pre>
 
You should see two files.  Something like 1007-icinga.conf and icinga.conf
 
You should see two files.  Something like 1007-icinga.conf and icinga.conf
{{Code|cat /etc/httpd/conf.d/icinga.conf >> /etc/httpd/conf.d/1007-icinga.conf}}
+
<pre>cat /etc/httpd/conf.d/icinga.conf >> /etc/httpd/conf.d/1007-icinga.conf</pre>
 
Now edit /etc/httpd/conf.d/1007-icinga.conf
 
Now edit /etc/httpd/conf.d/1007-icinga.conf
{{Code|vim /etc/httpd/conf.d/1007-icinga.conf}}
+
<pre>vim /etc/httpd/conf.d/1007-icinga.conf</pre>
 
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.
 
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.
{{Code|rm /etc/httpd/conf.d/icinga.conf}}
+
<pre>rm /etc/httpd/conf.d/icinga.conf</pre>
 
Now you should have a 1007-icinga.conf file similar to the following (not exact)
 
Now you should have a 1007-icinga.conf file similar to the following (not exact)
{{Code|
+
<pre>
<VirtualHost *:80>
+
&lt;VirtualHost *:80&gt;
  
 
ServerName icinga
 
ServerName icinga
Line 45: Line 45:
 
DocumentRoot /var/hda/web-apps/icinga/html
 
DocumentRoot /var/hda/web-apps/icinga/html
  
<Directory "/var/hda/web-apps/icinga/html">
+
&lt;Directory &quot;/var/hda/web-apps/icinga/html&quot;&gt;
 
Options Indexes FollowSymLinks +ExecCGI
 
Options Indexes FollowSymLinks +ExecCGI
 
AddHandler fcgid-script .fcg
 
AddHandler fcgid-script .fcg
Line 52: Line 52:
 
Allow from all
 
Allow from all
 
 
</Directory>
+
&lt;/Directory&gt;
  
 
ErrorLog  /var/hda/web-apps/Icinga/logs/error_log
 
ErrorLog  /var/hda/web-apps/Icinga/logs/error_log
Line 58: Line 58:
  
 
#this is the beginning of the part from icinga.conf
 
#this is the beginning of the part from icinga.conf
ScriptAlias /icinga/cgi-bin "/usr/local/icinga/sbin"
+
ScriptAlias /icinga/cgi-bin &quot;/usr/local/icinga/sbin&quot;
<Directory "/usr/local/icinga/sbin">
+
&lt;Directory &quot;/usr/local/icinga/sbin&quot;&gt;
 
  Options ExecCGI
 
  Options ExecCGI
 
  AllowOverride None
 
  AllowOverride None
 
  Order allow,deny
 
  Order allow,deny
 
  Allow from all
 
  Allow from all
  AuthName "Icinga Access"
+
  AuthName &quot;Icinga Access&quot;
 
  AuthType Basic
 
  AuthType Basic
 
  AuthUserFile /usr/local/icinga/etc/htpasswd.users
 
  AuthUserFile /usr/local/icinga/etc/htpasswd.users
 
  Require valid-user
 
  Require valid-user
</Directory>
+
&lt;/Directory&gt;
Alias /icinga "/usr/local/icinga/share/"
+
Alias /icinga &quot;/usr/local/icinga/share/&quot;
<Directory "/usr/local/icinga/share/">
+
&lt;Directory &quot;/usr/local/icinga/share/&quot;&gt;
 
  Options None
 
  Options None
 
  AllowOverride None
 
  AllowOverride None
 
  Order allow,deny
 
  Order allow,deny
 
  Allow from all
 
  Allow from all
  AuthName "Icinga Access"
+
  AuthName &quot;Icinga Access&quot;
 
  AuthType Basic
 
  AuthType Basic
 
  AuthUserFile /usr/local/icinga/etc/htpasswd.users
 
  AuthUserFile /usr/local/icinga/etc/htpasswd.users
 
  Require valid-user
 
  Require valid-user
</Directory>
+
&lt;/Directory&gt;
</VirtualHost>
+
&lt;/VirtualHost&gt;
}}
+
</pre>
  
 
NOTE: The Icinga instructions should be rewritten so that it conforms to the icinga app path for Amahi standards.
 
NOTE: The Icinga instructions should be rewritten so that it conforms to the icinga app path for Amahi standards.

Revision as of 04:02, 11 June 2011


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?

Icinga is a fork of 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
yum groupinstall "Development Tools" "Legacy Software Development"

Installation

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

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)

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