Inhaltsverzeichnis
NagiosQL
Voraussetzungen
Als Voraussetzung für die Installation von Nagios ist folgende Komponente erforderlich:
- Lauffähiger Web-Server z.B. Apache HTTP Server
- PHP ab Version 4.3 PHP
- PHP mit Erweiterung
gettext
- PHP mit Erweiterung
mysql
- PHP mit Erweiterung
ftp
- MySQL ab Version 4.1 MySQL
- Nagios 2.x oder Nagios 3.x Nagios
- PEAR Module: HTML_Template_IT ab Version 1.1 PEAR
Herunterladen
NagiosQL kann unter folgendem Link heruntergeladen werden:
Installation
Nach dem herunterladen einer Version von NagiosQL in z.B. das Verzeichnis /tmp
auf den lokalen Rechner, sollte sich folgende Datei
nagiosql303.tar.gz
im Verzeichnis /tmp
befinden.
Das heruntergeladene Archiv mit dem Namen nagiosql303.tar.gz
kann mit folgendem Befehl entpackt werden:
$ tar xvfz nagiosql303.tar.gz
Anschließend sollte sich ein Verzeichnis mit dem Namen nagiosql3
im Verzeichnis /tmp
befinden:
Daraufhin wird das Verzeichnis /tmp/nagiosql3
in das DocumentRoot
-Verzeichnis des Apache HTTP Server's mit folgendem Befehl verschoben:
$ mv /tmp/nagiosql3 /var/www/html/nagiosql
Abschliessend kann das heruntergeladene Archiv nagiosql303.tar.gz
mit folgendem Befehl gelöscht werden:
$ rm /tmp/nagiosql303.tar.gz
Ab hier werden root
-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um root
zu werden geben Sie bitte folgenden Befehl ein:
$ su - Password:
HTML_Template_IT-1.2.1
Um das benötigte PEAR-Module zu installieren kann nachfolgender Befehl genutzt werden:
# pear install HTML_Template_IT downloading HTML_Template_IT-1.2.1.tgz ... Starting to download HTML_Template_IT-1.2.1.tgz (21,565 bytes) ........done: 21,565 bytes install ok: channel://pear.php.net/HTML_Template_IT-1.2.1
Zur Überprüfung, ob das installiert wurde kann folgender Befehl ausgeführt werden (nur relevanter Ausschnitt):
# pear list Installed packages, channel pear.php.net: ========================================= Package Version State ... HTML_Template_IT 1.2.1 stable ...
NagiosQL Konfiguration Webserver
Hier soll die Konfiguration eines virtuellen Host für den Apache HTTP Server beschrieben werden. Der Aufruf von NagiosQL soll über die URL
ermöglicht werden.
Falls Sie noch keine Erfahrungen mit virtuellen Hosts in Verbindung mit dem Apache HTTP Server haben sollten, lesen Sie bitte die Dokumentation des Apache HTTP Server Projektes, da hier nur die grundlegenden Schritte erläutert werden.
Falls noch nicht geschehen wird im Verzeichnis /etc/httpd/conf.d
eine Datei mit dem Namen vhosts.conf
erstellt. Der Inhalt dieser Datei sollte minimal für einen virtuellen Host für NagiosQL wie folgt aussehen:
# This configuration file enables the vhosts to this # Server # NameVirtualHost *:80 # # nagiosql.tachtler.net # <VirtualHost *:80> ServerAdmin webmaster@tachtler.net ServerName nagiosql.tachtler.net ServerAlias www.nagiosql.tachtler.net ServerPath / DocumentRoot "/var/www/html/nagiosql" <Directory "/var/www/html/nagiosql"> AllowOverride AuthConfig Order allow,deny Allow from all </Directory> DirectoryIndex index.php ErrorLog logs/nagiosql_error.log CustomLog logs/nagiosql_access.log combined </VirtualHost>
Die Besitzrechte für das Verzeichnis /var/www/html/nagiosql
müssen noch korrigiert werden, was mit folgendem Befehl durchgeführt wird:
# chown -R apache.apache /var/www/html/nagiosql
Ein erneuter oder erster Start des Apache HTTP Server mit folgenden Befehl für eine erstmaligen Start
# service httpd start
oder einen erneuten Start des Apache HTTP Server mit folgendem Befehl
# service httpd restart
macht die oben beschriebenen Konfigurationen für den Apache HTTP Server wirksam.
NagiosQL Web-Konfiguration
Durch einen erfolgreichen Aufruf von
sollte folgender Bildschirm erscheinen:
WICHTIG - Falls die in rot am Bildschirm dargestellte Fehlermeldung erscheinen sollte, sind nachfolgende Schritte zur Behebung des Fehlers notwendig!
Zur Lösung der Fehlermeldung „ENABLE_INSTALLER existiert nicht!“ sind folgende zwei Schritte notwendig:
1. Schritt
Anlegen einer leeren Datei mit dem Namen ENABLE_INSTALLER
im Verzeichnis /var/www/html/nagiosql/install
mit nachfolgendem Befehl:
# touch /var/www/html/nagiosql/install/ENABLE_INSTALLER
2. Schritt
Setzen der richtigen Besitzrechte mit nachfolgendem Befehl:
# chown apache.apache /var/www/html/nagiosql/install/ENABLE_INSTALLER
Durch einen erneuten Aufruf von
sollte dann folgender Bildschirm erscheinen:
Durch einen Klick mit der linken Maustaste auf die Schaltfläche „Starte neue Installation“ sollte dann folgender Bildschirm erscheinen:
Durch einen Klick mit der linken Maustaste auf die Schaltfläche „Weiter“ sollte dann folgender Bildschirm erscheinen:
Durch einen Klick mit der linken Maustaste auf die Schaltfläche „Weiter“ sollte dann folgender Bildschirm erscheinen:
WICHTIG - Bevor mit der Installtion fortgefahren werden kann, ist es, wie am Bildschirm angezeigt erforderlich den - Installtionsordner zu löschen!
Mit nachfolgendem Befehl, kann der Installationsordner gelöscht werden:
# rm /var/www/html/nagiosql/install -rf
Durch einen Klick mit der linken Maustaste auf die Schaltfläche „Weiter“ sollte dann folgender Bildschirm erscheinen:
Nach Eingabe des Benutzernamens - hier Admin
wird dann die NagiosQL-Hauptseite angezeigt:
NagiosQL Shell-Konfiguration
Es ist notwendig Nagios mitzuteilen, wo sich die Konfigurationsdateien befinden, welche durch NagiosQL erstellt werden.
Zusätzlich müssen noch Verzeichnisse angelegt werden, um die Konfigurationsdateien durch NagiosQL erstellen zu können und es müssen noch die Dateirechte und Zugriffsrechte für die neu erstellten Verzeichnisse entsprechend gesetzt werden.
Der Web-Server hier z.B. Apache HTTP Server benötigt das Ausführungsrecht für bestimmte Programme.
/etc/nagios/nagios.cfg
Folgende Änderungen müssen an der Konfigurationsdatei /etc/nagios/nagios.cfg
durchgeführt werden (nur relevanter Ausschnitt):
... # OBJECT CONFIGURATION FILE(S) # These are the object configuration files in which you define hosts, # host groups, contacts, contact groups, services, etc. # You can split your object definitions across several config files # if you wish (as shown below), or keep them all in a single config file. # You can specify individual object config files as shown below: # Tachtler #cfg_file=/etc/nagios/objects/commands.cfg # Tachtler #cfg_file=/etc/nagios/objects/contacts.cfg # Tachtler #cfg_file=/etc/nagios/objects/timeperiods.cfg # Tachtler #cfg_file=/etc/nagios/objects/templates.cfg # Definitions for monitoring the local (Linux) host # Tachtler #cfg_file=/etc/nagios/objects/localhost.cfg # Definitions for monitoring a Windows machine #cfg_file=/etc/nagios/objects/windows.cfg # Definitions for monitoring a router/switch #cfg_file=/etc/nagios/objects/switch.cfg # Definitions for monitoring a network printer #cfg_file=/etc/nagios/objects/printer.cfg # You can also tell Nagios to process all config files (with a .cfg # extension) in a particular directory by using the cfg_dir # directive as shown below: #cfg_dir=/etc/nagios/servers #cfg_dir=/etc/nagios/printers #cfg_dir=/etc/nagios/switches #cfg_dir=/etc/nagios/routers # Tachtler - NagiosQL cfg_dir=/etc/nagiosql ...
Ist-Aufnahme: Nagios
Mit nachfolgendem Befehl, können die aktuellen Zugriffs- und Dateirechte aufgelistet werden:
# ll /etc/nagios total 120 -rw-rw-r-- 1 nagios nagios 11256 May 28 14:04 cgi.cfg -rw-r--r-- 1 nagios nagios 15760 Dec 29 16:50 command-plugins.cfg -rw------- 1 apache apache 26 Feb 13 14:46 htpasswd.users -rw-rw-r-- 1 nagios nagios 42631 May 29 17:16 nagios.cfg drwxr-xr-x 2 nagios nagios 4096 May 28 17:20 objects -rw-rw---- 1 nagios nagios 1336 Dec 2 18:05 resource.cfg
und
# ll /var/nagios/spool/ total 4 drwxr-xr-x 2 nagios nagios 4096 May 29 18:05 checkresults
Zugriffsrechte: Nagios
Folgende Zugriffsrechte müssen mit nachfolgenden Befehlen gesetzt werden:
# chgrp apache /etc/nagios # chgrp apache /etc/nagios/nagios.cfg # chgrp apache /etc/nagios/cgi.cfg # chgrp apache /var/nagios/spool/checkresults
Dateirechte: Nagios
Folgende Dateirechte müssen mit nachfolgenden Befehlen gesetzt werden:
# chmod 775 /etc/nagios # chmod 664 /etc/nagios/nagios.cfg # chmod 664 /etc/nagios/cgi.cfg # chmod 775 /var/nagios/spool/checkresults
Ist-Aufnahme: /usr/bin/nagios
Mit nachfolgendem Befehl, können die aktuellen Zugriffs- und Dateirechte aufgelistet werden:
# ll /usr/bin/nagios -rwxrwxr-- 1 root root 623208 Dec 2 18:05 /usr/bin/nagios
Ausführungsrecht: Nagios
Das Programm /usr/bin/nagios
muss durch den Web-Server hier z.B. Apache HTTP Server ausführbar sein, was mit folgenden Befehlen erreicht werden kann:
# chgrp apache /usr/bin/nagios # chmod 750 /usr/bin/nagios
HINWEIS - Falls dieses Programm vorhanden sein sollte !
Das Programm /var/nagios/rw/nagios.cmd
muss durch den Web-Server hier z.B. Apache HTTP Server ausführbar sein, was mit folgenden Befehlen erreicht werden kann:
# chown nagios.apache /var/nagios/rw/nagios.cmd # chmod 660 /var/nagios/rw/nagios.cmd
Verzeichnisstruktur: NagiosQL
Folgende sechs Verzeichnisse müssen mit nachfolgenden Befehlen erstellt werden:
# mkdir /etc/nagiosql # mkdir /etc/nagiosql/hosts # mkdir /etc/nagiosql/services # mkdir /etc/nagiosql/backup # mkdir /etc/nagiosql/backup/hosts # mkdir /etc/nagiosql/backup/services
Zugriffsrechte: NagiosQL
Folgende Zugriffsrechte müssen mit nachfolgendem Befehl gesetzt werden:
# chown -R apache.nagios /etc/nagiosql
Dateirechte: NagiosQL
Folgende Dateirechte müssen mit nachfolgenden Befehlen gesetzt werden:
# chmod 6755 /etc/nagiosql # chmod 6755 /etc/nagiosql/hosts # chmod 6755 /etc/nagiosql/services # chmod 6755 /etc/nagiosql/backup # chmod 6755 /etc/nagiosql/backup/hosts # chmod 6755 /etc/nagiosql/backup/services # chmod 644 /etc/nagiosql/*.cfg # chmod 644 /etc/nagiosql/hosts/*.cfg # chmod 644 /etc/nagiosql/services/*.cfg # chmod 644 /etc/nagiosql/backup/*.cfg # chmod 644 /etc/nagiosql/backup/hosts/*.cfg # chmod 644 /etc/nagiosql/backup/services/*.cfg