Nagios wie folgt kompiliert: ./configure --prefix=/usr/local/nagios --with-cgiurl=/cgi-bin --with-htmurl=/nagios --with-nagios-user=nagios --with-nagios-grp=nagios --disable-statuswrl --with-gdlib=/usr/lib/ --with-gd-inc=/usr/include/ --enable-embedded-perl --with-perlcache -with-default-perfdata make all Installieren: make make make make install install-init Startscript wird in /etc/rc.d/init.d installiert install-commandmode install-config Perfparse Installation: PerfParse ist ein Tool zur Darstellung von Graphen, basierend auf den Outputs der Nagios Plugins. Das Tool benutzt zur Speicherung der Werte eine MySQL Datenbank. MySQL Benutzer anlegen Man muss einen Benutzer mit den erforderlichen Rechten anlegen, damit dieser in die MySQL Datenbank schreiben darf. /usr/local/mysql/bin/mysql -u root -p - D mysql Jetzt ist man im Befehlsmodus für mysql. mysql>GRANT ALL PRIVILEGES ON *.* TO nagios@localhost IDENTIFIED BY 'nagios'; WITH GRANT OPTION; hier wird der Benutzer nagios mit dem mysql>quit Passwort nagios angelegt Es wurde ein Benutzer nagios mit dem Passwort nagios angelegt. Als dieser Benutzer einloggen. /usr/local/mysql/bin/mysql -u nagios –p mysql mit dem Benutzer nagios und seinem mysql>CREATE DATABASE perfparse; mysql>quit Passwort ’nagios’ starten Datenbank für perfparse erstellen PerParse muss nun installiert und kompiliert werden, damit es genutzt werden kann. Dazu muss es als erstes entpackt werden. tar -xzf perfparse-x.xxx.x Anschließend den Ordner ins Nagios Verzeichnis (/usr/local/nagios) kopieren, so, dass er unter /usr/local/nagios/perfparse- x.xxx.x liegt. cp perfparse- x.xxx.x /usr / local /nagios/ perfparse ins angegebene Verzeichnis kopieren cd /usr /local /nagios/perfparse- x.xxx.x ins Verzeichnis wechseln und kompilieren ./configure --prefix=/usr/local/nagios --withimagedir=/usr/local/nagios/share/images/ --with-cgidir=/usr/local/nagios/sbin -with-http_image_path=/images … make make install-strip perfparse wird installiert eventuell muss das Paket gd-devel nachinstalliert werden. (http://www.rpmseek.com) Dateien und Tabellen anlegen Folgende Dateien ändern: cp /usr/local/nagios/etc/perfparse.cfg-sample /usr/local/nagios/etc/perfparse.cfg cp /usr /local /nagios/bin/perfparse.sh-example /usr/local/nagios/bin/perfparse.sh so bleibt die sample Datei erhalten und kann bei Bedarf einfach wieder eingesetzt werden In den Ordner von perfparse wechseln cd /usr /local /nagios/perfparse- x.xxx.x ins perfparse und anschließend cd scripts in scripts Verzeichnis wechseln cat mysql_create.sql | /usr/local/mysql/bin/mysql -u nagios -p -D nagios mit dem obigen Befehl wird die zuvor erstellte Datenbank, mit Namen perfparse, mit Inhalten gefüllt Das Passwort ist in diesem Fall 'nagios', es sollte keine Fehlermeldung kommen. Dieser Befehl hat die Datenbanken für PerfParse angelegt, zum Überprüfen ob alles geklappt hat: /usr/local/mysql/bin/mysql mysql wird aufgerufen und dann wird mittels use und show überprüft, ob der vorhergehende Befehl funktioniert hat; die Datenbank perfparse soll verwendet werden USE perfparse; SHOW tables; auf jeden Fall sollten jetzt Daten angezeigt werden Werden Daten angezeigt, dann war alles bisher erfolgreich. quit; nagios.cfg aufrufen und folgende Dinge hinzufügen bzw. verändern: vi /usr/local/nagios/etc/nagios.cfg process_performance_data=1 cfg_file=/usr/local/nagios/etc/nagios_perfparse.cfg host_perfdata_command=process-host-perfdata service_perfdata_command=process-service-perfdata resource.cfg aufrufen und folgendes verändern (der USER2 Pfad sollte zu nagios zeigen): vi /usr/local/nagios/etc/resource.cfg $USER2$=/usr/local/nagios misccommands.cfg aufrufen und folgende Einträge auskommentieren: vi /usr/local/nagios/etc/misccommands.cfg #define command{ #command_name process- host - perfdata #define command{ #command_name process- service- perfdata nagios_perfparse.cfg aufrufen und folgenden Eintrag verändern: vi /usr/local/nagios/etc/nagios_perfparse.cfg diesen Eintrag perfparse_nagios_command.pl durch diesen ersetzen perfparse_nagios_pipe_command.pl nagios_perfparse.cfg define command{ command_name process-service-perfdata command_line /usr/local/nagios/bin/perfparse_nagios_pipe_command.pl /usr/local/nagios/var/perfdataservice.log "$TIMET$" "$HOSTNAME$" "$SERVICEDESC$" "$SERVICEOUTPUT$" "$SERVICESTATE$" "$SERVICEPERFDATA$" } define command{ command_name process-host-perfdata command_line /usr/local/nagios/bin/perfparse_nagios_pipe_command.pl /usr/local/nagios/var/var/perfdatahost.log "$TIMET$" "$HOSTNAME$" "$SERVICEDESC$" "$SERVICEOUTPUT$" "$SERVICEPERFDATA$" } perfparse.cfg aufrufen und diese Pfade setzen: nagios@rzvlabwks:~>vi /usr/local/nagios/etc/perfparse.cfg Service_Log = "|/opt /nagios/var /perfdata- service.log" Service_Log_Position_Mark_Path = "/opt /nagios/var" # Änderungen wie unten! No_Raw_Data = "no" No_Bin_Data = "no" von ‚yes’ auf ‚no’ ändern! von ‚yes’ auf ‚no’ ändern! # Database Authentication DB_User = "nagios" DB_Name = "nagios" DB_Pass = "nagios" DB_Host = "localhost" zu Beginn des Pfades steht ein | command (pipe) !!! Name vom User, der für die DB angelegt wurde Name der Datenbank, die angelegt wurde das Passwort, das für den DB- User festgelegt wurde der Host, von dem der User kommt Die Datei perfparse_nagios_pipe_command.pl ändern vi /usr/local /nagios/bin/perfparse_nagios_pipe_command.pl Am Ende diese Zeile anfügen: system ('/usr/local/nagios/bin/perfparse-log2mysql --serviceperf-log /usr/local/nagios/var/perfdataservice.log'); - service.log Dateien anlegen: touch /usr/local/nagios/var/perfdata-service.log eine neue Datei wird angelegt chown nagios.nagios /usr/local/nagios/var/perfdata-service.log die Besitzerechte chmod 660 /usr/local/nagios/var/perfdata-service.log werden geändert die Zugriffsberechtigungen werden geändert touch /usr/local/nagios/var/perfdata_log.perfdata-service.log.mark chown nagios.nagios /usr/local/nagios/var/perfdata_log.perfdataservice.log.mark chmod 660 /usr/local/nagios/var/perfdata_log.perfdata-service.log.mark Nun die crontab ändern bzw. folgende Zeilen hinzufügen (die Datenbank wird alle zwei Minuten aktualisiert: (Ist allerdings nicht zwingend notwendig!) vi /etc/crontab als root!!! # Run PerfParse every 2 minutes to update Nagios graphs. 2 * * * * root /usr / local /nagios/bin/per fparse.sh Link im Nagios Navigationsmenü zu Perfparse anlegen, dazu folgende Zeilen in die side.html einfügen: vi /usr/local/nagios/share/side.html <tr> <td width=13> <img src="images/greendot.gif" width="13" height="14" name ="perfparse- dot"> </ td> <td nowrap> <a href=" /nagios/cgi - bin/perfparse.cgi?all_bin=1" target="main" onMouseOver="switchdot('perfparse- dot',1)" onMouseOut="switchdot ('perfparse- dot',0)" class="NavBarItem">PerfData Graphs</a> </ td> </ t r> diesen Eintrag einfach in die side.html einfügen. Dieses kann nach belieben getan werden, jedoch sollte man darauf achten, dass es am Ende ist und nicht eine vorhandene Tabelle unterbricht Nun sollte man Nagios neu starten und am Rand der Website sollte der Link zu Perfparse sein und auch funktionieren! Daraufklicken, oben auf 'Return to main menu', dann auf 'Administration menu', auf 'View/edit hostgroup', dann die Gruppe eintragen, die es auch unter Nagios in der hostgroup.cfg gibt eintragen, auf 'Enter', dann auf 'edit' in der Tabelle, und bei 'Add neu Host to Group' einen Rechner auswählen. Dann oben auf 'Return to main menu', auf 'Graph binary data', einen Rechner und den Rest auswählen.