Post on 04-Jul-2015
Einführung einer NetzwerkEinführung einer NetzwerkEinführung einer NetzwerkEinführung einer Netzwerk----
MonMonMonMoniiiittttoringoringoringoring----Lösung im Lösung im Lösung im Lösung im
firmeninternen LANfirmeninternen LANfirmeninternen LANfirmeninternen LAN
Projektdokumentation der betrieblichen Projektarbeit von
Admin
Prüf-Nr. 66666
Betrieb: IT GROUP
Musterstadt
Projektbetreuer: Trapp Trapp
Ausführungszeit: 15. Oktober 2007 bis 05. November 2007
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 2 von 27
Inhaltsverzeichnis
1. Projektbeschreibung........................................................................................... 3 1.1 Überblick Gesamtprojekt ........................................................................................................3
1.2 Problembeschreibung des Projekts und Zielsetzung .............................................................3
1.3 Projektumfang.........................................................................................................................4
2. Projektplanung .................................................................................................... 4 2.1 Zeitansatz ...............................................................................................................................4
2.2 Ressourcenplanung................................................................................................................5
3. Produktphase ...................................................................................................... 5 3.1 Auswahl des Betriebssystem des Servers .............................................................................5
3.2 Auswahl der Hardware für den Server ...................................................................................5
3.3 Auswahl der Software für den Server .....................................................................................5
4. Realisierungsphase ............................................................................................ 6 4.1 Installation des Nagios Servers ..............................................................................................6
4.2 Installation der Nagios Plugins ...............................................................................................7
4.3 Einrichten des Webinterface...................................................................................................7
4.4 Nagios Grundkonfiguration ...................................................................................................10
4.4.1 Nagios.cfg...................................................................................................................10
4.4.2 Timeperiods.cfg ..........................................................................................................10
4.4.3 Contactgroups.cfg....................................................................................................... 11
4.4.4 Contacts.cfg................................................................................................................ 11
4.4.5 Hostgroups.cfg............................................................................................................12
4.4.6 Servicegroups.cfg.......................................................................................................12
4.4.7 Resource.cfg ..............................................................................................................12
4.4.8 Host Definition ...........................................................................................................12
4.4.9 Service Definition........................................................................................................13
4.4.10 Abschließen der Grundkonfiguration..........................................................................14
4.5 Erweiterte Konfiguration .......................................................................................................15
4.5.1 Performancedaten grafisch darstellen mittels PNP....................................................15
4.5.2 SMS Benachrichtigung über HTTP-Gateway.............................................................17
4.5.3 Konfiguration von NRPE.............................................................................................18
5. Projektbewertung.............................................................................................. 21 5.1 Fazit ......................................................................................................................................21
6. Anhang: ........................................................................................................... 23 6.1 Dodekatex.de PHP Script zur Übermittlung der Nagios Notifions an den HTTP-Gateway
von Mobilant.net: ..................................................................................................................23
6.2 Abbildungsverzeichniss ........................................................................................................24
6.3 Quellenverzeichnis ...............................................................................................................25
6.4 Glossar..................................................................................................................................26
6.4.1 Compiler .....................................................................................................................26
6.4.2 OpenSSL ....................................................................................................................26
6.4.3 Webserver ..................................................................................................................26
6.4.4 OpenSuSE..................................................................................................................26
6.4.5 PHP ............................................................................................................................26
6.4.6 Host ............................................................................................................................26
6.4.7 Service........................................................................................................................26
6.4.8 HTTP-Gateway...........................................................................................................26
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 3 von 27
1. Projektbeschreibung
1.1 Überblick Gesamtprojekt Im Rahmen meiner Ausbildung zum Fachinformatiker für Systemintegration in der Firma IT GmbH bin ich zurzeit in der Abteilung Support für die Anwender in der Friedrichshofener Straße 1s tätig.
Als Teil eines zweiköpfigen Teams sind wir für die Instandhaltung des firmeninternen Netzwerkes, sowie den Endanwendersupport verantwortlich. Aufgrund der rasch wachsenden Mitarbeiterzahl nimmt das firmeninterne Netzwerk an Umfang und Komplexität stark zu. Das Tagesgeschäft sieht vor Anwender zu unterstützen, gleichzeitig soll jedoch das Netzwerk sowie die verbauten aktiven Komponenten überwacht und gewartet werden. Mir wurde übertragen eine Lösung zu erarbeiten, die möglichst alle relevanten Geräte überwacht und bei einem Ausfall oder einer Störung die Administratoren zeitnah darüber unterrichtet. Ziel ist, die Dauer zwischen Störungsauftritt und Beseitigung der Störung zu reduzieren. Außerdem sollen Performance Daten aufgezeichnet werden, um die Systeme besser skalieren zu können. Angedacht ist systemspezifische Daten, wie z.B Festplattenauslastung bei Fileservern, zu überwachen oder die CPU- und Arbeitsspeicherauslastung bei Webservern. Nach Recherche im Internet und Fachpublikationen fiel die Wahl auf das OpenSource Produkt Nagios. Diese Lösung wird bei unserem Großkunden eingesetzt und von der Serverbetreuung der IT GmbH gepflegt. Die Entscheidung Nagios einzusetzen beruht auf drei Eckpunkten:
- Nagios bietet alle gewünschten Features und lässt sich leicht erweitern.
- Keine Plattformbeschränkung: Nagios kann Dank seiner großen Anzahl an Schnittstellen nicht nur Windows oder Linux Maschinen überwachen.
- Nagios wird von der IT GmbH schon eingesetzt.
1.2 Problembeschreibung des Projekts und Zielsetzung Zu diesem Zeitpunkt wird in den Büroräumen der IT GmbH in der Friedrichshofener Straße kein Monitoring eingesetzt. Eine Störung wird vom Support Team erst durch Anrufe oder Emails der Anwender erkannt. Nachdem eine Störung festgestellt wurde, versucht das Team das Problem zu lokalisieren. Fällt zum Beispiel ein Server aus, muss festgestellt werden, ob der Server selbst das Problem darstellt oder ob ein Switch oder Router der Auslöser der Störung ist. Funktionieren beide Geräte jedoch korrekt, muss herausgefunden werden, ob ein Problem am Arbeitsplatz des Anwenders vorliegt oder ein Netzwerkproblem.
Zur Lösung des Problems sollen alle aktiven Netzwerkkomponenten überwacht werden. Fällt ein Switch aus erhält ein Administrator eine Benachrichtigung, dass der Switch ausgefallen ist und der in Abhängigkeit zu diesem stehende Server somit obsolet ist. Der Administrator soll die Möglichkeit haben den Ausfall zu beheben, bevor ein Anwender auf diesen aufmerksam wird. Zum einen soll so die Zeit für die
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 4 von 27
Fehlersuche reduziert werden, zum anderem soll ein unterbrechungsfreies Tagesgeschäft für die vom Funktionieren der Infrastruktur abhängigen Anwender sichergestellt werden.
1.3 Projektumfang Das Projekt als Teil der Abschlussprüfung besteht darin, nach Planung und Konzeption einen Nagios Server zu installieren und zu konfigurieren. Der Schwerpunkt liegt auf der Grundkonfiguration des Servers. Es sollen die wesentlichen Merkmale eingepflegt werden. Dazu gehören: Monitoren der Komponenten, Benachrichtigungssystem per Email/SMS, grafisches Aufbereiten der Performancedaten.
Es sollen Windowsserver, Linuxserver, Printserver, Switches, Netzwerkdrucker sowie Router und Accesspoints überwacht werden.
Der Nagios Server soll später durch das Support Team stetig erweiterbar und an das Wachstum des Netzwerks und der verwendeten Komponenten anpassbar sein.
2. Projektplanung
2.1 Zeitansatz Die Durchführung findet im Zeitraum vom 15.10.2007 bis zum 05.11.2007 statt. Die tägliche Bearbeitungszeit muss an das Tagesgeschäft angepasst werden.
Für die einzelnen Projektschritte ist folgender Zeitplan vorgesehen, der sich mit dem Konzept deckt:
- Projektvorfeld - - - - - - - - - - - - - - - - - ca. 7 Std.
- Problembeschreibung ca. 1 Std.
- Projektziele (Soll-Konzept) ca. 2 Std.
- Analyse der Netzwerkumgebung ca. 2 Std.
- Mögliche Softwarelösungen ca. 2 Std.
- Produktphase - - - - - - - - - - - - - - - - - ca. 6 Std.
- Auswahl des Betriebssystems für den Server ca. 1 Std.
- Auswahl der Hardware für den Server ca. 1 Std.
- Auswahl der Software für den Server ca. 4 Std.
- Realisierungsphase - - - - - - - - - - - - - - - ca. 10 Std.
- Installation und Konfiguration der erforderlichen Komponenten ca. 10 Std.
- Testphase - - - - - - - - - - - - - - - - - - ca. 6 Std.
- Ausführlicher Test aller Komponenten in einer Testumgebung ca. 6 Std.
- Ausarbeitung der Projektdokumentation - - - - - - - - ca. 6 Std.
Geplanter Zeitaufwand ca. 35 Std.
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 5 von 27
2.2 Ressourcenplanung Zur Realisierung des Projekts wird ein Server benötigt auf dem der Nagios Server installiert werden kann. Dieser Server sollte autark von der restlichen IT-Infrastruktur sein.
Installations- und Konfigurationsarbeiten werden von einem Standard Arbeitsplatz der IT GmbH erledigt (Intel Pentium D 3,0 GHz, 2048MB RAM).
3. Produktphase
3.1 Auswahl des Betriebssystem des Servers Nagios wurde für Linuxsysteme entwickelt, eine Portierung für Windows ist mir derzeit nicht bekannt. Die Vorraussetzung zum Betrieb und der Installation eines Nagios Servers sind gering gehalten:
- Ein Compiler zum Übersetzen des Quelltextes
- Libgd eine Grafikbibliothek
- OpenSSL
- Ein SnmpClient
- Ein Webserver der CGI Scripte verarbeiten kann
Jede aktuelle Linux Distribution bringt diese Vorraussetzungen mit, für dieses Projekt kommt die Distribution OpenSuSe 10.2 zum Einsatz. Die gute Paketverwaltung und die Tatsache, dass in vorausgegangen Projekten auch OpenSuSe 10.x zum Einsatz kam, begünstigen diese Entscheidung.
3.2 Auswahl der Hardware für den Server Die zu erwartende Last des Nagios Servers zu Beginn der Einführung ist als gering einzuschätzen. Die verursachte Last richtet sich nach der Anzahl der überwachten Hosts und die Anzahl der auf den Hosts ausgeführten Dienste. Das System soll auf maximal 50 Hosts und ca. 200 Services skaliert werden. Hierfür wurde folgende Hardwarekonfiguration als ausreichend befunden: Intel Pentium 4 2,8 GHz, 1024 MB RAM. Des Weiteren kommt ein Raid 1 Verbund aus zwei 36 GB SCSI Festplatten zum Einsatz um die Verfügbarkeit bei einem Festplattenschaden zu gewährleisten. Der Server konnte dem Bestand der IT GmbH entnommen werden.
3.3 Auswahl der Software für den Server Nachdem als Betriebssystem OpenSuSE 10.2 festgelegt wurde, mussten die Software Vorraussetzungen für eine Nagios Installation geschaffen werden. OpenSuSE wurde im Minimalmodus ohne grafische Oberfläche installiert. Als Compiler kommt gcc in der Version 4.1.2 zum Einsatz. Für die Anzeige des Webinterfaces wurde der HTTP Server Apache 2.2.3 installiert, um später die Performance Graphen erzeugen zu können wird php5 mit den Modulen zlib, gd und curl nachinstalliert.
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 6 von 27
4. Realisierungsphase
4.1 Installation des Nagios Servers Zuerst muss ein User und eine Gruppe für den Nagios Dienst angelegt werden. Unter diesem User läuft später der Nagios Dienst:
Anlegen der Gruppen „nagios“ und „nagcmd“:
nagios:/tmp # groupadd -g 9000 nagios
nagios:/tmp # groupadd -g 9001 nagcmd
Anlegen des Users „nagios“, der Mitglied in beiden Gruppen ist mit dem Home Verzeichnis „/usr/local/nagios“:
nagios:/tmp # useradd -u 9000 -g nagios -G nagcmd -d /usr/local/nagios -c "Nagios Admin" nagios
Damit der Webserver später auf die von Nagios erzeugten Daten (z.b Konfigurationsdateien) zugreifen kann, wird der User unter dem der Webserver läuft, in die Gruppe „nagcmd“ aufgenommen:
nagios:/tmp # usermod -G nagcmd wwwrun
Durch das Anlegen des Users wurden keine Ordner erzeugt in denen Nagios seine Konfigurationsdateien und Logdateien speichern kann. Dies wird nun händisch vorgenommen:
nagios:/tmp # mkdir /usr/local/nagios /etc/nagios /var/nagios
nagios:/tmp # chown nagios.nagios /usr/local/nagios/ /etc/nagios/ /var/nagios/
Nach dem Herunterladen und Entpacken des Sourcecodes in „/tmp“ beginnt die Installation des Nagios Servers:
nagios:/tmp/nagios-2.9 # ./configure --sysconfdir=/etc/nagios --localstatedir=/var/nagios --with-command-group=nagcmd
Beim Configure werden die nötigen Parameter übergeben um sicher zu stellen, dass alle Dateien im richtigen Verzeichnis initialisiert werden und Nagios der richtigen Gruppe zugeordnet wird. Das Configure Script bestätigt die erfolgreiche Verarbeitung mit einem Übersichtsscreen (siehe Abbildung 1).
Abbildung 1: Zusammenfassungsscreen des Configure Scripts
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 7 von 27
Durch das Übergeben der nötigen Parameter im Configure Script waren alle Vorgaben korrekt und die Installation konnte mittels der folgenden Befehle beendet werden:
nagios:/tmp/nagios-2.9 # make all (Übersetzen des Source Codes)
nagios:/tmp/nagios-2.9 # make install (Kopieren der Daten in die vorgegebenen Verzeichnisse)
nagios:/tmp/nagios-2.9 # make install-init (Kopieren des Init Scripts nach /etc/init.d/nagios)
nagios:/tmp/nagios-2.9 # make install-config (Installieren einer Grundkonfiguration)
4.2 Installation der Nagios Plugins Ohne die Installation der Plugins bringt der Nagios Server selbst keinen Nutzen. Plugins sind kleine Programme oder Shell Scripte (perl, cgi, bash), die mit Parametern von Nagios ausgeführt werden und verschiedene Zustände zurückgeben. Über die Plugins werden die Dienste des zu Überwachenden Rechners geprüft. Im Nagios Umfeld heißen diese Dienste „Services“.
Die Plugins wurden wieder nach „/tmp“ herunter geladen und entpackt. Analog zur Nagios Server Installation werden dem Configure Script Parameter übergeben, der Quellcode übersetzt und die kompilierten Dateien in den richtigen Ordner kopiert:
nagios:/tmp/nagios-plugins-1.4.10 # ./configure --sysconfdir=/etc/nagios/ --localstatedir=/var/nagios/
nagios:/tmp/nagios-plugins-1.4.10 # make
nagios:/tmp/nagios-plugins-1.4.10 # make install
4.3 Einrichten des Webinterface Die Weboberfläche von Nagios ist optional, hilft den Administratoren jedoch den Überblick zu bewahren und die Zusammenhänge der Komponenten zu verdeutlichen. Des Weiteren kann hier z.B eine „Downtime“ für Wartungsarbeiten festgelegt werden.
Der Apache Webserver wurde so konfiguriert, dass die Weboberfläche unter http://dnsname/nagios aufgerufen werden kann, dies geschah über ein Alias.
Dazu muss in die Konfigurationsdatei des Webservers (httpd.conf) folgendes eingefügt werden:
ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin
<Directory "/usr/local/nagios/sbin">
AllowOverride AuthConfig
Options ExecCGI
SetHandler cgi-script
Order allow,deny
Allow from ALL
</Directory>
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 8 von 27
Alias /nagios /usr/local/nagios/share
<Directory "/usr/local/nagios/share">
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from ALL
</Directory>
Nagios beinhaltet eine rudimentäre Rechteverwaltung, um diese zu verwenden muss eine Authentifizierung am Webserver über .htaccess erfolgen. So können sich Anwender im Webinterface anmelden und die Hosts und Services überwachen, für die sie als Contact definiert sind.
Dazu wurde unter „/usr/local/nagios/sbin“ die .htaccess Datei, mit folgendem Inhalt, angelegt:
nagios:/usr/local/nagios/sbin # touch .htaccess
AuthName "IT GmbH Nagios Monitoring"
AuthType Basic
AuthUserFile /etc/nagios/htpasswd
require valid-user
In die Datei „/etc/htpasswd“ wird der Benutzername, analog zur Definition in der Nagios Konfiguration, und das verschlüsselte Passwort eingetragen:
nagios:/etc/nagios # touch htpasswd
admin:$1$7QPT8hFG$XCiLYnzo6Ce2nFwBPFNMh.
Nagios musste noch mitgeteilt werden, dass eine Benutzerauthentifizierung verwendet werden soll. Dazu wurden die sample Konfigurations- Dateien, die beim Kompilieren mittels make install-config erstellt wurden, umbenannt und die Standard Einstellungen angepasst:
nagios:/etc/nagios # mv cgi.cfg-sample cgi.cfg
nagios:/etc/nagios # mv commands.cfg-sample commands.cfg
nagios:/etc/nagios # mv localhost.cfg-sample localhost.cfg
nagios:/etc/nagios # mv nagios.cfg-sample nagios.cfg
nagios:/etc/nagios # mv resource.cfg-sample resource.cfg
Änderungen in der cgi.cfg:
authorized_for_all_services=admin
authorized_for_all_hosts=admin
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 9 von 27
authorized_for_all_service_commands=admin
authorized_for_all_host_commands=admin
authorized_for_all_services=admin
authorized_for_all_hosts=admin
authorized_for_system_commands=admin
authorized_for_configuration_information=admin
authorized_for_system_information=admin
Nach dem ersten Start von Nagios über „/etc/init.d/nagios start“ wurde die Authentifizierung getestet, indem das Webinterface aufgerufen wurde (siehe Abbildung 2).
(Abbildung 2: Aufforderung zum Login per .htaccess)
Nach dem erfolgreichen Login zeigt das Webinterface einen Host und 5 Services an. Dies beruht auf der Standard Konfiguration und zeigt, dass der Nagios Server funktioniert (siehe Abbildung 3).
(Abbildung 3: Ansicht des Webinterfaces nachdem erstem erfolgreichem Login)
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 10 von 27
4.4 Nagios Grundkonfiguration Nagios wird komplett über .cfg Dateien gesteuert. Nagios bietet sehr viele individuelle und umfangreiche Möglichkeiten, das Monitoring auf spezielle Bedürfnisse abzustimmen. Bei dieser Installation wurden wenige Abweichungen von einer „Standard Konfiguration“ vorgenommen. Die folgenden Unterpunkte erklären zusammenfassend, wie die Konfigurationen ineinander greifen und was grundsätzlich bezweckt wird. Es wird nicht auf jede Option explizit eingegangen.
4.4.1 Nagios.cfg
Im ersten Schritt wurde Nagios mitgeteilt, welche Konfigurationsdateien eingelesen werden sollen. Dies dient dazu die Konfiguration übersichtlich zu halten.
Dazu müssen die Dateipfade der einzelnen .cfg Files in die „nagios.cfg“ eingetragen werden. Diese Datei wird zuerst eingelesen und von dort aus werden weitere Konfigurationen inkludiert:
cfg_file=/etc/nagios/contactgroups.cfg � Kontaktgruppen, mehrere Benutzer können zu einer Kontaktgruppe zusammengefasst werden, z.b „Linux-Admins“.
cfg_file=/etc/nagios/contacts.cfg � Kontakte, beinhaltet die Definition der einzelnen Mitarbeiter an die Benachrichtigungen geschickt werden sollen.
cfg_file=/etc/nagios/timeperiods.cfg � Checkperioden, für jeden Host und Service kann definiert werden in welchem Zeitraum er überwacht werden soll.
cfg_file=/etc/nagios/hostgroups.cfg � Gruppen der Hosts, wurde zur Strukturierung der Geräte verwendet, z.b „Printserver“.
cfg_file=/etc/nagios/servicegroups.cfg � Gruppen der Services, wurde zur Strukturierung der Services verwendet, z.b „FTP“.
cfg_file=/etc/nagios/checkcommands.cfg � Definition der Befehle wie Nagios einen Service oder Host überprüft.
cfg_dir=/etc/nagios/IT/hosts � Hosts Definitionen, Einbinden eines Ordners, in diesem wurde pro Gerät eine .cfg für jeden Host angelegt
cfg_dir=/etc/nagios/IT/services � Service Definitionen, Einbinden eines Ordners, in diesem wurde pro Gerät eine .cfg für jeden Host angelegt
cfg_dir=/etc/nagios/IT/serviceextinfo � Extensions Definitionen, hier wurden Erweiterungen für das Webinterface eingepflegt.
#cfg_file=/etc/nagios/localhost.cfg � Auskommentieren
4.4.2 Timeperiods.cfg
In dieser Phase des Projekts wurde beschlossen alle Geräte 24 Stunden 7 Tage die Woche zu überwachen. Es gibt keine Geräte die zum Beispiel am Wochenende herunter gefahren werden. Weiterhin bietet sich so die Möglichkeit frühzeitig zu reagieren, sollte ein Gerät am Wochenende ausfallen. Der einzige Eintrag in dieser Datei definiert eine Zeitperiode die 24x7 heißt und Montag bis Sonntag 24 Stunden überwacht:
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 11 von 27
define timeperiod {
timeperiod_name 24x7
alias 24 Stunden, 7 Tage die Woche
sunday 00:00-24:00
monday 00:00-24:00
tuesday 00:00-24:00
wednesday 00:00-24:00
thursday 00:00-24:00
friday 00:00-24:00
saturday 00:00-24:00
}
4.4.3 Contactgroups.cfg
Auch hier reicht für den aktuellen Konfigurationsumfang eine Kontaktgruppe. in die die Mitglieder des Support Teams eingetragen werden:
define contactgroup {
contactgroup_name admin
alias admin
members admin
}
4.4.4 Contacts.cfg
In dieser Datei wurden alle Benutzer angelegt, die benachrichtigt werden oder Zugriff auf das Webinterface haben sollten. Definiert wird, in welcher „Timeperiod“, über welche Zustände und über welches Medium der User benachrichtigt werden soll:
define contact {
contact_name Admin
alias Andreas Admin
host_notifiion_period 24x7
service_notifiion_period 24x7
host_notifiion_options d,u,r
service_notifiion_options w,u,c,r
host_notifiion_commands host-notify-by-email,host-notify-by-mobilant
service_notifiion_commands notify-by-email,notify-by-mobilant
email admin@IT-.de
pager 00491776666666
}
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 12 von 27
4.4.5 Hostgroups.cfg
Es wurde für jede Gerätegattung eine Hostgruppe definiert. (Server, Printserver, Drucker, Swichtes, etc..). Als Beispiel hier die Definition für die Router:
define hostgroup {
hostgroup_name router
alias Router
members FVL328
}
4.4.6 Servicegroups.cfg
Analog wurden für die zu überwachenden Services Gruppen definiert um die Services strukturiert anzeigen zu können. Beispiel http Gruppe:
define servicegroup {
servicegroup_name all-http
alias ALL HTTP
}
4.4.7 Resource.cfg
In dieser Datei wurden Parameter definiert, die später global von Nagios verwendet werden können. Vorerst wurde hier nur der Pfad definiert, indem die Plugins zum überwachen eines Services liegen:
$USER1$=/usr/local/nagios/libexec
4.4.8 Host Definition
Für jeden Host wurde unter „/etc/nagios/IT/hosts“ eine eigene CFG angelegt. Der Dateiname gibt den Namen des Geräts wieder, als Beispiel wird hier wieder der Router FVL328 aufgeführt:
define host {
host_name FVL328 � Gerätname.
alias DSL Router � Beschreibung.
address 10.197.147.1 � IP Adresse (DNS Name möglich).
hostgroups router � zu welcher Gruppe das Gerät gehört.
check_command check-host-alive � Befehl zum Ausführen des Host Checks, wurde in checkcommands.cfg vordefiniert.
max_check_attempts 6 � Wie oft soll der Check bei einem Fehlschlag wiederholt werden bis
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 13 von 27
eine Benachrichtigung ausgelöst wird.
check_period 24x7 � Zeitraum in dem überwacht werden soll.
flap_detection_enabled 1 � Nagios versucht schnell wechselnde Zustände zu erkennen.
process_perf_data 1 � Performance Daten werden aufgezeichnet, werden später durch PNP weiterverarbeitet.
contact_groups admin � Gruppe die für diesen Host zuständig ist.
notifiion_interval 60 � Es wird jede Stunde neu benachrichtigt.
notifiion_period 24x7 � Zeitraum in dem benachrichtigt werden soll.
notifiion_options d,u,r,f � Es soll bei „down“, „unrechable“, „recovery“ sowie „flapping“ Benachrichtigt werden.
notifiions_enabled 1 � Aktivieren der Benachrichtigung.
}
4.4.9 Service Definition
Jeder Service, der überwacht werden soll, muss unter Nagios konfiguriert werden. Es gibt die Möglichkeit in einer Service Definition mehrere Hosts aufzunehmen. Analog zu den Hosts wurde jedoch unter „/etc/nagios/IT“ ein Verzeichnis „services“ angelegt. In diesem Verzeichnis wurde für jeden Host eine separate Konfiguration angelegt. Auch hier wurde auf die Übersichtlichkeit Wert gelegt, weswegen auf die Verschachtelung der Konfiguration verzichtet wurde. Als Beispiel soll hier die Konfiguration zur Überwachung eines http Servers gezeigt werden:
define service {
host_name FVL328 � bezieht sich auf den definierten Hostnamen in der zugehörigen Host-Definition.
service_description http � Servicebeschreibung.
servicegroups all-http � Gruppenzugehörigkeit.
check_command check_http � Checkcommand, definiert in der Checkcommands.cfg.
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 14 von 27
max_check_attempts 5 � Maximale Anzahl an Checks bis zum Statuswechsel des Services.
normal_check_interval 5 � Zeit zwischen den Checks bei keinem Problem.
retry_check_interval 4 � Abstand der Durchführung des Checks nach Änderung des Zustands (Bsp. OK zu Critical).
check_period 24x7 � Zeitraum in dem der Service überwacht werden soll.
parallelize_check 1 � ermöglicht parallele Checks.
event_handler_enabled 1 � der Eventhandler wird aktiviert, dieser kann nach definierten Zuständen selbständig eingreifen und z.b Dienste neustarten.
flap_detection_enabled 1 � Nagios versucht schnell wechselnde Zustände zu erkennen.
process_perf_data 1 � Mitschneiden der Performancedaten für PNP.
contact_groups admin � Zu benachrichtigende Gruppe.
notifiion_interval 720 � Abstand nach dem wiederholt Benachrichtigungen verschickt werden.
notifiion_period 24x7 � Zeitraum in dem benachrichtigt wird
notifiion_options w,u,c,r,f � Es soll bei „down“, „unrechable“, „recovery“ sowie „flapping“ benachrichtigt werden.
notifiions_enabled 1 � Aktivieren der Benachrichtigung.
}
4.4.10 Abschließen der Grundkonfiguration
Nach dem Anlegen der oben beschriebenen Konfigurationsdateien kann Nagios gestartet werden. In der Konfiguration wurde zuerst nur ein Host eingebunden mit den zwei Services „http“ und „icmp“. Weiterhin wurde die von Nagios mitgelieferte Konfigurationsdatei checkcommands.cfg nicht verändert. Sie enthielt zu Beginn der Testphase alle nötigen check commands und wurde erst später angepasst. Das Webinterface zeigte wie konfiguriert einen Host mit zwei aktiven Services (siehe Abbildung 4).
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 15 von 27
(Abbildung 4: Nagios Webinterface nachdem ersten Start mit der Grundkonfiguration)
4.5 Erweiterte Konfiguration Nach der Grundkonfiguration und dem erfolgreichen Test wurde mit der Konfiguration der Zusatzanforderungen begonnen. Darunter fallen das Benachrichtigungsscript für den SMS Versand, die grafische Aufbereitung der von Nagios aufgezeichneten Performancedaten sowie die erweiterte Überwachung von lokalen Systemeigenschaften mittels NRPE.
4.5.1 Performancedaten grafisch darstellen mittels PNP
PNP basiert auf dem „rrdtool“, das über yast nachinstalliert wurde. Anschließend wurde der Quellcode von PNP herunter geladen und entpackt:
cd /usr/local/src/
nagios:/usr/local/src # wget http://ovh.dl.sourceforge.net/sourceforge/pnp4nagios/pnp-0.4.3.tar.gz
nagios:/usr/local/src # tar xzvf pnp-0.4.3.tar.gz
nagios:/usr/local/src # cd pnp-0.4.3/
Die bei der Nagios Kompilierung angewandten Daten werden auch in das Configure Script von PNP übernommen. Mittels einem „make all“ sowie dem anschließendem „make install“ wurde die Installation abgeschlossen:
nagios:/usr/local/src/pnp-0.4.3 # ./configure --with-nagios-use=nagios --with-nagios-group=nagios --with-rrdtool --with-perfdata-dir=/usr/local/nagios/share/perfdata --with-rrdtool=/usr/bin/rrdtool
make all
make install
In der nagios.cfg unter „/etc/nagios“ musste das Performance Data Handling aktiviert werden. Dazu wurden folgende Parameter für die vordefinierten Variablen gesetzt:
process_performance_data=1
service_perfdata_command=process-service-perfdata
In die Datei „/etc/nagios/checkcommands.cfg“ wurde folgende Definition zur Verarbeitung der Daten eingefügt:
define command{
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 16 von 27
command_name process-service-perfdata
command_line /usr/local/nagios/libexec/process_perfdata.pl
}
Zuletzt wurde unter „/etc/nagios/IT/serviceextinfo“ für jeden Host, dessen Performancedaten aufgezeichnet werden sollen, eine Konfigurationsdatei angelegt. Über diese Definition wird im Nagios Webinterface ein Button eingefügt. Dieser verlinkt auf die PNP Graphen. Der Dateiname ist analog zu den Dateinamen in „/etc/nagios/hosts“ sowie „/etc/nagios/services“. In der unter „serviceextinfo“ abgelegten Datei wird für jeden Service separat definiert, wo die Grafiken zu finden sind:
define serviceextinfo{
host_name webserver � Hostname
service_description HTTP � Servicename
action_url /nagios/pnp/index.php?host=webserver&srv=http � Als URL wird die index.php Datei im PNP Verzeichnis angegeben, welches unterhalb des Nagios Webinterface Verzeichnis liegt. Als Parameter werden der Hostname und der Servicename übergeben.
}
Nachdem die Nagios Konfiguration neu eingelesen wurde, konnte ein erster Test durchgeführt werden, beim aufrufen der URL meldete PNP „HTTP rrd not found“ was darauf zurück zu führen war, dass noch keine Daten aufgezeichnet wurden. Bei einem späterem Test zeigte sich eine erste Messung (siehe Abbildung 5).
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 17 von 27
(Abbildung 5: PNP Grafiken nach einigen Servicechecks)
4.5.2 SMS Benachrichtigung über HTTP-Gateway
Nagios soll zusätzlich zur Email Benachrichtigung auch per SMS mitteilen, falls ein Problem auftritt. Zu dieser Phase des Projekts wurde beschlossen, die SMS über einen externen Anbieter zu versenden. Die Nachricht wird von Nagios generiert und an ein PHP Script übergeben. Anschließend wird die Nachricht an einen HTTP-Gateway verschickt, welches die Eingabe abfängt und als SMS verschickt. Das PHP Skript stammt nicht von mir und ist in der Quellenangabe hinterlegt (siehe Quelle 5).
Das PHP Skript wird unter „/etc/nagios/notify_mobilant.php“ abgelegt (siehe Anhang 6.1 ). Die „checkcommands.cfg“ musste um die Definition zum SMS Versand erweitert werden:
define command {
command_name host-notify-by-mobilant
command_line /etc/nagios/notify_mobilant.php "$CONTACTPAGER$" "Host '$HOSTALIAS$' is $HOSTSTATE$ Info: $HOSTOUTPUT$ Time: $LONGDATETIME$" >> /tmp/test
}
define command {
command_name notify-by-mobilant
command_line /etc/nagios/notify_mobilant.php "$CONTACTPAGER$" "Service: $SERVICEDESC$ Host: $HOSTNAME$ Address: $HOSTADDRESS$ State:
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 18 von 27
$SERVICESTATE$ Info: $SERVICEOUTPUT$ Date: $LONGDATETIME$" >> /tmp/test
}
Der erste Eintrag dient zur Benachrichtigung bei Host Fehlern, der zweite für die Services. Die Parameter konnten bei den vordefinierten Email Versand Definitionen entnommen werden. Zuletzt wurde in der „contacts.cfg“ noch die Handynummer des Empfängers definiert. Dazu wurde die Zeile „pager 00491773640599“ eingefügt. Nach einem mutwillig herbeigeführten „Down“ des Hosts „webserver“ konnte das Funktionieren des SMS Versands festgestellt werden (siehe Abbildung 6).
(Abbildung 6: Beispiel einer von Nagios versendeten Benachrichtigung)
4.5.3 Konfiguration von NRPE.
In den Anforderungen an das Netzwerk Monitoring Tool wurde definiert, dass lokale Systemeigenschaften ebenfalls überwacht werden sollen. Dazu gehören zum einen Performance Eigenschaften wie CPU-Last, Arbeitsspeicherverbrauch oder Festplatten Kapazitäten. Zum anderen soll Nagios aber auch überwachen, ob z.b der Prozess des Backupprogramms läuft.
Die IT GmbH verfügt über ein heterogenes Netz, d.h es kommen Windows und Linux Maschinen zum Einsatz die überwacht werden sollen. Um lokale Prozesse und Systemeigenschaften überwachen zu können, muss Nagios Zugriff auf die Maschine gewährt werden. Nagios bietet hierfür verschiedene Möglichkeiten an. Die Wahl fiel auf die NRPE Lösung, da es diesen Client für Windows und Linux Systeme gibt.
Alternativen wären für Linux Systeme „check_by_ssh“ und für Windows Maschinen „NC_Net“.
4.5.3.1 NRPE Installation am Nagios Server.
NRPE setzt das OpenSSL Development Packet voraus. Dieses wurde per „yast“ nachinstalliert, anschließend der Source Code von NRPE herunter geladen, entpackt, konfiguriert und übersetzt:
nagios:/usr/local/src # tar xzvf nrpe-2.0.tar.gz
nagios:/usr/local/src # cd nrpe-2.0/
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 19 von 27
nagios:/usr/local/src/nrpe-2.0 # ./configure --sysconfdir=/etc/nagios/ --enable-ssl
make all
Das so erzeugte Plugin „check_nrpe“ wurde in das Nagios Plugins Verzeichnis kopiert, womit die Konfiguration vorerst am Nagios Server selbst abgeschlossen wurde.
4.5.3.2 NRPE Installation am Linux Client.
Zuerst wurde ein Verzeichnis „nagios“ unter „/etc“ angelegt, analog zum Nagios Server.
Vom Server wurde die ausführbare NRPE Datei und die zugehörige Konfigurationsdatei auf den Client kopiert:
nagios:/usr/local/src/nrpe-2.0/src # scp nrpe root@webserver:/usr/local/sbin/
nrpe 100% 83KB 83.4KB/s 00:00
nagios:/usr/local/src/nrpe-2.0/src # scp ../nrpe.cfg root@webserver:/etc/nagios/
nrpe.cfg 100% 5051 4.9KB/s 00:00
Der NRPE Client wurde mittels xinetd in das System integriert:
webserver:~ # cd /etc/xinetd.d/
webserver:/etc/xinetd.d # touch nrpe
Inhalt der Datei „/etc/xinetd.d/nrpe“:
# /etc/xinetd.d/nrpe
# description: NRPE
# default: on
service nrpe
{
flags = REUSE
socket_type = stream
wait = no
user = nobody
group = nogroup
server = /usr/local/sbin/nrpe
server_args = -c /etc/nagios/nrpe.cfg --inetd
log_on_failure += USERID
disable = no
only_from = 127.0.0.1 10.197.147.50
}
Neustarten des xinetd Dämons zum aktiveren von NRPE:
webserver:~ # /etc/init.d/xinetd restart
Shutting down xinetd: done
Starting INET services. (xinetd) done
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 20 von 27
Das Script startet den NRPE Client mit dem User „nobody“ und der Konfigurationsdatei unter „/etc/nagios/nrpe.cfg“.
4.5.3.3 NRPE Installation am Windows Client
Nachdem der aktuelle Windows Client (siehe Quelle 6) und die zugehörigen Windows Plugins (siehe Quelle 7) heruntergeladen wurden, wurde der Client nach „C:\Windows\NRPE“ und die Plugins nach „C:\Windows\NRPE\bin“ entpackt. Als nächstes wurde NRPE als Dienst installiert (siehe Abbildung 7).
(Abbildung 7: Installation des NRPE Dienstes)
Unter „C:\NRPE\bin\“ findet sich die Datei „nrpe.cfg“ in der die Pfade zu den Check Plugins angepasst wurden:
allowed_hosts=10.10.9.100,10.10.9.101,192.168.1.100,10.197.147.50
command[nt_check_disk_c]=C:\NRPE\bin\diskspace_nrpe_nt.exe c: 70 90
command[nt_check_disk_d]=C:\NRPE\bin\diskspace_nrpe_nt.exe d: 70 90
command[nt_check_disk_e]=C:\NRPE\bin\bin\diskspace_nrpe_nt.exe e: 70 90
command[nt_cpuload]=C:\NRPE\bin\cpuload_nrpe_nt.exe 50 80
command[nt_memload]=C:\NRPE\bin\memload_nrpe_nt.exe 70 90
command[nt_service]=C:\NRPE\bin\service_nrpe_nt.exe "Event Log,DNS Client"
command[nt_eventlog]=C:\NRPE\bin\eventlog_nrpe_nt.exe -m 7200 -s "Service Control Manager"
Nach dem Start des NRPE Plugins ist der Client einsatzbereit (siehe Abbildung 8).
(Abbildung 8: Erfolgreicher Start des NRPE Clients)
4.5.3.4 Test und abschließende Konfiguration am Nagios Server.
Bevor ein Service und ein Checkcommand für Nagios definiert wurde, wurde überprüft ob der NRPE Client die Anfragen vom Nagios Server annimmt. Dazu wurde das „check_nrpe“ Plugin manuell aufgerufen:
nagios:/usr/local/nagios/libexec # ./check_nrpe -H webserver -c check_load
OK - load average: 0.61, 0.54, 0.22|load1=0.610;15.000;30.000;0; load5=0.540;10.000;25.000;0; load15=0.220;5.000;20.000;0;
Da der Test erfolgreich war, wurde ein neuer Service definiert, analog zur vorangegangenen Service Definitionen. Lediglich der Paramater “check_command” lautet: „check_command check_nrpe!check_load“.
Unter „/etc/nagios/checkcommands.cfg“ wurde für das NRPE Plugin folgender Command definiert:
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 21 von 27
# 'check_nrpe' command definition
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1"
}
Dem NRPE Plugin wird nur übergeben, welchen Check es auszuführen hat. Weitere Parameter, wie die Warnschwellen, ließt der NRPE Client aus der lokalen Datei „nrpe.cfg“ Datei aus. Nur wenn ein Check in der „nrpe.cfg“ auf dem Client definiert, ist kann er vom Nagios Server aufgerufen werden. Aus Sicherheitsgründen werden keine weiteren Parameter übergeben, da es sonst unter Umständen möglich wäre dem Plugin beliebige Parameter und ausführbaren Code „unterzuschieben“. In der „nrpe.cfg“ wurden mehrere, nicht in der Standard-Konfiguration enthaltene Services, definiert. Als Beispiel hier die Definition zum Überwachen der Auslagerungsdatei:
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 10% -c 5%
Die Service Definitonen am Nagios Server sind für Windows sowie Linux Maschienen identisch, einzig die auf dem zu überwachendem Rechner liegende NRPE.cfg unterscheidet sich.
5. Projektbewertung
5.1 Fazit Das Projekt konnte im vorgegeben Zeitrahmen erfolgreich abgeschlossen werden. Alle Anforderungen konnten umgesetzt werden. Während des Projektes wurden neue Anforderungen diskutiert und beschlossen, diese Erweiterungen werden aber zu einem späteren Zeitpunkt realisiert. Nachdem analog zur oben beschriebenen Konfiguration weitere Hosts und Services eingepflegt wurden, wurde der Nagios Server produktiv gesetzt. Aufgrund der leichten Erweiterbarkeit wird der aktuelle Status wie er in dieser Dokumentation beschrieben ist, vorerst beibehalten. Im Laufe der nächsten Wochen will das Support Team Erfahrungen sammeln und feststellen, ob die Konfiguration optimiert werden muss. Nach dieser Phase sollen dann Erweiterungen eingepflegt werden. Darunter fallen z.B Escalations oder der Event Handler. Die ersten Rückmeldungen sind positiv. Probleme und Engpässe werden in Echtzeit erfasst und die Reaktionszeit hat sich drastisch verkürzt. Auch die Problemlösungsphase hat sich nahezu halbiert.
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 22 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 23 von 27
6. Anhang:
6.1 Dodekatex.de PHP Script zur Übermittlung der Nagios Notifions an den HTTP-Gateway von Mobilant.net:
#!/usr/bin/php5
/*
Dieses Skript von Philipp Neuhaus (neuhaus@dodekatex.de) steht unter der GPL
*/
<?php
// phpinfo(); // (DEBUG)
// Dieses Skript steht unter der GPL
// Geschrieben von Philipp Neuhaus, neuhaus@dodekatex.de
// Key fuer mobilant:
$key="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
// URL von Mobilant:
$hosturl = "http://gateway.mobilant.net/";
// weitere Mobilant-Argumente (Absenderadresse, Service etc)
// in der Form: "&service=foo&absender=0000"
$mobilantoptionen="";
$handynr=$_SERVER['argv'][1];
$smstext=$_SERVER['argv'][2];
//Nun wird die Handynummer ueberprueft:
//Am Anfang zwei Nullen
// dann 3 Ziffern,die nicht 0 sein duerfen
// Dann mindestens 5 Zeichen, wobei dies Ziffern sein muessen
// Nach den Ziffern das Ende des Strings
// (Keine Leerzeichen erlaubt)
if (preg_match("/^00[1-9]{3}[0-9]{5,}$/m", $handynr) == 0) {
die ("Falsches Format der Handynumer\n");
}
//Den String auf 155 Zeichen kuerzen, damit keine zwei SMS verschickt werden
$smstext = substr($smstext, 0, 155);
//Den Text URL-Encoden
$smsurltext = urlencode($smstext);
$hosturl = $hosturl."?key=".$key."&handynr=".$handynr.$mobilantopionen."&text=".$smsurltext;
//Ab jetzt: Curl-anfrage spezifizieren
$curlanfrage = curl_init();
//URL setzen
curl_setopt($curlanfrage, CURLOPT_URL,$hosturl);
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 24 von 27
//Damit nicht die Rueckgabe ausgegeben wird:
curl_setopt($curlanfrage, CURLOPT_RETURNTRANSFER, 1);
$curlresponse = curl_exec($curlanfrage);
//Zu DEBUG-Zecken letzte Zeile auskommentieren und naechste Zeile aktivieren, dann kostet es nicht so viel ;-)
//$curlresponse = "100";
if ($curlresponse=="100") {
if ($abrechnen==true){
$anfrage="INSERT into $abrechnung_tabelle ( nummer, text, datum ) values ( '$handynr', '$smsurltext', '".mktime()."')";
$link = mysql_connect( $abrechnung_host, $abrechnung_benutzer, $abrechnung_kennwort);
if (!$link) die ("Verbindung zu mySQL nicht moeglich, SMS trotzdem verschickt");
mysql_select_db ($abrechnung_db, $link) or die ("mySQL-select-DB nicht moeglich, SMS trotzdem verschickt\n".mysql_error()."\n");
mysql_query ($anfrage) or die ("mySQL-Eintragung nicht moeglich, SMS trotzdem verschickt\n".mysql_error()."\n");
mysql_close ($link);
}
} else {
print("FEHLER:\n");
print("mobilant-Response:\n".$curlresponse."curl_error:\n");
print(curl_error($curlanfrage));
}
curl_close($curlanfrage);
print("\n");
6.2 Abbildungsverzeichniss Abbildung 1: Zusammenfassungsscreen des Configure Scripts…………………………………6
Abbildung 2: Aufforderung zum Login per .htaccess………………………………………………9
Abbildung 3: Ansicht des Webinterfaces nach erstem erfolgreichem Login…………………….9
Abbildung 4: Nagios Webinterface nach dem ersten Start mit der Grundkonfiguration………15
Abbildung 5: PNP Grafiken nach einigen Servicechecks………………………………………...16
Abbildung 6: Beispiel einer von Nagios versendeten Benachrichtigung………………………..17
Abbildung 7: Installation des NRPE Dienstes……………………………………………………...19
Abbildung 8: Erfolgreicher Start des NRPE Clients………………………………………………..19
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 25 von 27
6.3 Quellenverzeichnis (1) Nagios Dokumentation : http://nagios.sourceforge.net/docs/2_0/toc.html
(2) Nagios Portal : http://www.nagios-portal.de
(3) Nagios Wiki : http://www.nagios-wiki.de/
(4) Nagios Exchange : http://www.nagiosexchange.org/
(5) Dodekatex.de SMS Script : http://dodekatex.de/index.php?id=38
(6) NRPE_NT Client für Windows: http://www.miwi-dv.com/nrpent/
(7) NRPE_NT Windows Plugins: http://www.nagiosexchange.org/NRPE_Plugins.66.0.html?&tx_netnagext_pi1[p_view]=62
(8) OpenSuSE: http://de.opensuse.org
(9) Wikipedia: http://de.wikipedia.org/wiki/
(10) OpenSSL: http://de.wikipedia.org/wiki/OpenSSL
(11) Compiler: http://de.wikipedia.org/wiki/Compiler
(12) Barth, Wolfgang.: Nagios. System- und Netzwerk-Monitoring
Open Source Press; Auflage: 1 (November 2005), ISBN 3937514090
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 26 von 27
6.4 Glossar
6.4.1 Compiler
Ein Compiler ist ein Computerprogramm, das ein in einer Quellsprache geschriebenes Programm in eine Zielsprache (Zielprogramm) umwandelt. Üblicherweise handelt es sich dabei um die Übersetzung eines von einem Programmierer in einer Programmiersprache geschriebenen Quelltextes in Assemblersprache, Bytecode oder Maschinensprache. Das Übersetzen eines Quellprogramms in ein Zielprogramm durch einen Compiler wird auch als Kompilierung bezeichnet. (siehe Quelle 11)
6.4.2 OpenSSL
OpenSSL ist eine Open-Source-Implementierung des SSL/TLS-Protokolls und bietet darüber hinaus weitergehende Funktionen zur Zertifikatsverwaltung und zu unterschiedlichen kryptographischen Funktionen. (siehe Quelle 10)
6.4.3 Webserver
Ein Webserver ist ein Computerprogramm das auf einem Server ausgeführt wird, es dient dazu über das http Protokoll Informationen zur Verfügung zu stellen. Die zwei bekanntesten Webserver sind Apache und der Internet Information Server.
6.4.4 OpenSuSE
OpenSuSE ist eine freie Linux Distribution die von Novell gefördert wird.
6.4.5 PHP
PHP bedeutet Hypertext Preprocessor und ist eine an C beziehungsweise C++ angelegte Skriptsprache die im Webbereich zum Einsatz kommt
6.4.6 Host
Im Nagios Chargon wird ein physikalischer Rechner als Host definiert.
6.4.7 Service
Im Nagios Chargon wird ein Dienst als Service definiert.
6.4.8 HTTP-Gateway
Bei einem HTTP Gateway wird über die aufgerufene Adresse ein Programm aufgerufen, die Paramter werden in der URL mitübergeben.
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.
Admin 05.11.2007 Seite 27 von 27
Selbsterklärung
Ich versichere durch meine Unterschrift, dass ich das zugrunde liegende Projekt und diesen
Bericht zur betrieblichen Projektarbeit (Projektbericht) selbstständig und ohne fremde Hilfe
angefertigt habe.
Alle fremden Quellen wie:
Softwaremodule,
Veröffentlichungen,
Andere Projektberichte
und Zuarbeiten,
die ich funktionsmäßig, wörtlich oder auch nur sinngemäß übernommen habe, sind von mir als
solche gekennzeichnet worden.
Die Arbeit hat in dieser Form keiner anderen Prüfungssituation vorgelegen!
Ort, Datum Unterschrift
Das Projekt wurde
� abgenommen
� nicht abgenommen
_______________ ___________________ ________________
Ort, Datum Projektverantwortlicher Stempel des Betriebs