8.04

Big Brother im eigenen Netzwerk

Posted in 8.04, Monitoring, Ubuntu on November 18th, 2009 by Patrick – 9 Comments

Nein, hier geht es nicht um die steigende Überwachung durch Vater Staat, hier geht es um das Monitoring von Servern, Computern, Diensten und vieles mehr.

Ich habe vor längerer Zeit mal Nagios, ein sehr komplexes Überwachungstool, aufgesetzt, aber aus Zeitmangel habe ich mich nie wirklich mit der raffinierten, aber doch sehr komplizierten Konfiguration beschäftigt.

Nun aber ist mir das ganze wieder in die Hände gefallen und ich habe mich mal aufgemacht und wollte Nagios nicht nur zum laufen bringen, sondern auch richtig konfigurieren und überwachen lassen.

Im uu.de-Wiki, welches sonst meistens meine erste Anlaufstelle für so Fragen ist, gibt es leider nur ein unfertiger Artikel. (Wenn ich die Zeit finde, werde ich mich da dann mal ran machen) Also habe ich mir meine Informationen selbst zusammengesucht.

Die Installation von Nagios ist relativ einfach. Nagios2 gibt es sogar in den Paketquellen, Nagios3 lässt sich problemlos selbst kompilieren.

Für mich reicht aber Nagios2 voll und ganz und somit habe ich mittels der Paketverwaltung mal die Pakete installiert:

sudo apt-get install apache2, nagios2, nagios2-common, nagios-plugins

Für die Installation war es das eigentlich schon! Doch ganz so einfach ist es dann doch wieder nicht. :)
Unter http://localhost/nagios2 ist jetzt schon die Weboberfläche zu sehen. Jedoch fehlt noch die gesamte Konfiguration, also weiter im Konzept.

Da mein Webinterface natürlich nicht für jeden Zugänglich sein soll, habe ich mir noch ein Passwortschutz angelegt:

htpasswd -bc /etc/nagios2/htpasswd.users

Nun gilt es noch den Apache neu zu starteten, damit die Änderung auch wirksam werden:

sudo /etc/init.d/apache2 restart

Nun sollte man bereits beim Aufrufen von Nagios, immer noch unter http://localhost/nagios2, nach einem Benutzernamen und einem Passwort gefragt werden.

Nun geht es los mit der Konfiguration.
Dabei sollte ich vielleicht noch ein paar Worte über das Konzept verlieren.
Wenn man den Aufbau mal verstanden hat ist es eigentlich gar nicht mehr so kompliziert :)

Für meine Server habe ich ein neuer Ordner angelegt:

sudo mkdir /etc/nagios2/meinnetzwerk/
cd /etc/nagios2/meinnetzwerk/

Darin werden nun alle Dateien angelegt.
Die wichtigsten Dateien, auf welche Nagios zurückgreift, sind hosts.cfg, templates.cfg, services.cfg und hostgroups.cfg.

Besonders die templates.cfg spielt in grösseren Netzwerken mit vielen Servern eine besondere Rolle. Doch dazu später.

Wir beginnen erstmal mit dem formellen Teil. Die Datei contacts.cfg birgt den Namen und die eMail-Adresse des Systemadministrators.
Dazu erstellen wir die Datei erst neu:

sudo touch contacts.cfg

Diese füllen wir mit folgendem Inhalt:

define contact{
contact_name administrator
alias DEIN-NAME
service_notification_period 24×7
host_notification_period 24×7
service_notification_options w,u,c,r
host_notification_options d,r
service_notification_commands notify-by-email
host_notification_commands host-notify-by-email
email DEINE@EMAIL.ADRESSE
}

define contactgroup{
contactgroup_name admins
alias Nagios Administrators
members administrator
}

Nun können wir unsere ersten Server hinzufügen.
Diese werden in der hosts.cfg aufgelistet. Doch einfach die IP-Adressen einzutragen wäre natürlich viel zu einfach :D

define host{
host_name SERVERNAME
alias BESCHREIBUNG
address IP.ADRESSE.HIER.EINGEBEN
use generic-host
}

Hier muss für jeden Host ein neuer “define host{}” angelegt werden.

Bis auf use sind eigentlich alle Punkte selbst erklärend. Und damit kommen wir auch schon zum gut durchdachten Konzept von Nagios.
Wir könnten jede einzelne Option wie Prüfintervalle, verwendete Kommandos, Benachrichtigungen, Maximale Überprüfungen etc für jeden Host einzelne definieren. Das wären dann pro Host alleine schon 40 Zeilen.
Nun kann man sich mal überlegen, was passiert wenn ich 20 oder sogar 100 Server eintragen und überwachen will – die Komplexität steigt und es wird schnell mal unübersichtlich.

read more »

Erfahrungen mit neuem DL380 g3

Posted in 8.04, OS, Server on September 28th, 2009 by Patrick – 14 Comments

Seit kurzem bin ich stolzer Besitzer eines laut surrenden, 27 Kilo schweren HP DL380 g3.

In der Hoffnung möglichst viel aus dem Server herauszuholen, habe ich mich für ein ESXi als Betriebssystem entschieden.

Die Wahl viel eigentlich relativ schnell, da ich so mehrere Server betreiben kann. Ein weiterer Vorteil von ESXi gegenüber allen anderen Virtualisierungssystemen die ich kenne ist, dass man mehr einer vMaschine mehr Ressourcen zuordnen kann als eigentlich vorhanden ist. Und da ich “nur” 2x 2.8Ghz und 4GB Ram (soll bald auf 6GB aufgerüstet werden) zur Verfügung habe, kann dies noch ganz praktisch sein.

Doch bevor ich das OS installierte, wollte ich erst noch das RAID einrichten. (Vorab; im Server stecken zwei 18GB und zwei 72GB Platten.)

Aufgrund der Konstellation der Platten fiel meine Wahl recht schnell. So wurden die beiden 18GB Platten mittels RAID 1 und die 72GB Platten zu einem RAID 0 zusammengefasst.

So war das Betriebssystem, welches auf den 18er beherbergt wurde durch ein RAID geschützt.

Doch zurück zur Installation: So schnell die Wahl auch viel, umso länger dauerte die Installation. Begonnen habe ich mit dem normalen ESXi 4.0 von der VMware-Seite.

Als ich mich nach einem erfolglosen Installationsversuch weiter umgesehen habe, bin ich auf ein ESXi 4.0 for HP gestossen. Doch auch dies wollte den modifizierten  Linuxkernel, welcher die Basis von ESX und ESXi bildet nicht booten lassen.

Nach erneuter Suche habe ich ganz am unteren Ende der VMware-Seite einen unscheinbaren Link ausgemacht:

“VMware ESXi 4.0 is certified to run on a broad range of 64-bit hardware. For 32-bit hardware support, download the previous version, VMware ESXi 3.5.”

Also habe ich auch noch ESXi 3.5 auf CD gebrannt und gebootet. Und siehe da!! Nach gerade mal 15 Minuten war das Betriebssystem installiert und konnte gestartet werden.

Einrichten und Konfigurieren des ganzen geht problemlos über die ein bisschen farblose Oberfläche. Und viel mehr als eine statische IP muss man hier auch nicht tun. Praktisch hierbei war für mich, dass ich, dank dem iLO Port (ähnlich einer Remote Management Karte), das ganze ohne weiteren Bildschirm und Tastatur managen konnte.

ilo

Dann war es endlich soweit!

read more »