Schlagwort-Archiv: Server

Nagios zur Server Überwachung

Hauptsächlich für mich selbst, aber vielleicht hilft es ja auch jemand anderem, habe ich zusammengefasst, was ich in meiner Nagios-Installation wie überwache.
Dies sind Auszüge aus der command.cfg und aus meiner devices.cfg. Zuerst folgt die Beschreibung, dann auf Linie 1 das Kommando aus der command.cfg und auf Linie 2 der Befehl aus der devices.cfg:

Prüft eine Webseite URL mit dem Unterordner SUBFOLDER ob ein bestimmtes Wort KEYWORD vorhanden ist:

$USER1$/check_http -H $ARG1$ -u $ARG2$ -s $ARG3$ -w 10 -c 20 -t 30
check_website!URL!/SUBFOLDER/!KEYWORD

Prüft die Verbindung via RDP auf eine Windows Maschine:

$USER1$/check_x224 -H $HOSTADDRESS$ -p 3389 $ARG1$
check_rdp!-w 10 -c 50

Prüft den Health-Zustand eines ESX-Servers:

/usr/bin/python $USER1$/check_esx_wbem.py https:\/\/$HOSTADDRESS$:5989 $USER3$ $USER4$
check_esx

Prüft eine Sharepoint-Installation auf dessen Erreichbarkeit:

$USER1$/check_sharepoint $HOSTADDRESS$
check_sharepoint

Weiterlesen

moodle_Logo

Installation von Moodle unter Debian

Moodle ist eine Lernplattform auf Basis von Opensource, welche bereits an einigen Schulen eingesetzt und komplett in den Unterricht integriert wurde.
So können darüber Dokumente von Schüler und Lehrer hochgeladen und anderen zur Verfügung gestellt und Wikis eingerichtet werden. Oder es können gleich ganze Tests aus einem Fragenpool zusammengestellt werden und diese dann auch mehr oder weniger automatisch vom System korrigieren lassen.

Vor kurzem habe ich auch versucht auf einem Debian Server die Lernplattform zu installieren, und war angenehm überrascht: Es gibt sogar ein Eintrag in den Paketquellen!

Also einfach mal dieses Paket installieren und schauen was passiert:

apt-get update
apt-get install moodle

Leider gab es bei mir einige Probleme bei der automatischen Installation und Konfiguration von MySQL, weshalb ich das Paket zuerst alleine und erst dann Moodle installieren konnte:

apt-get update
apt-get install mysql-server
apt-get install moodle

Während der Installation muss man ein paar Fragen zu URL und mehr beantworten. Ich habe mich dabei meist auf die Vorgaben verlassen – ein Fehler wie sich später zeigen wird.

Nachdem die Installation durchgelaufen war habe ich versucht das ganze aufzurufen, jedoch meldete sich nur ein leerer Apache2.
Also habe ich mich auf die Suche nach einem Virtualhost-File gemacht und wurde unter /etc/moodle/apache.vhost.conf fündig. Diese Datei habe ich an den passenden Ort kopiert:

cp  /etc/moodle/apache.vhost.conf /etc/apache2/sites-available/
mv apache.vhost.conf moodle

Dann habe ich auch gleich noch den Default-Virtualhost von Apache2 de- und mein neuer aktiviert:

a2dissite 000-default
a2ensite moodle
/etc/init.d/apache2 restart

Dann musste ich mich noch mit der Konfigurationsdatei von Apache befassen, welche Moodle mitliefert.
Diese verbietet standardmässig den Zugriff von allem ausser localhost, was für meinen Fall nicht sehr hilfreich ist. Also musste ich die Datei /etc/moodle/apache.conf wie folgt anpassen:

Weiterlesen

Was bedeutet Load unter Linux?

Heute morgen war ich mit einem Cluster-Node beschäftigt, welcher sehr viel seiner Rechenkraft mit Systemarbeiten belegt, was im Idealfall natürlich nicht sein sollte.
Also habe ich mich auf die Suche gemacht und die Last der Maschine mit uptime, vmstat oder top analysiert.
Und dabei ist mir etwas sehr seltsames aufgefallen: vmstat und top haben beide angezeigt, dass die CPU (2x 4 Kerne) der Maschine zu 99% mit Idle, also keiner Arbeit belegt ist.
Komischerweise aber zeigt uptime für den Load average einen Wert von 1.7.

1
load average: 1.70, 1.40, 1.30

Doch nun die grosse Frage: Wofür steht Load denn überhaupt?

Die drei Werte stehen für die Last der Maschine zu einem bestimmten Zeitpunkt, jeweils für die aktuelle Minute, über 5 und über 15 Minuten.

Um zu verstehen, was der Load aber tatsächlich darstellt, gehen wir von einer Maschine mit einem Single-Core aus. Diesen kann man gleichsetzen mit einer Brücke mit einer Spur.

Zeigt der Load 1.0 an, so ist die Brücke optimal belastet:

Es kommen genau so viele Autos durch, wie vorgesehen und keines muss warten.

Wir ein Load von unter 1, zum Beispiel 0.5 angezeigt, so hätten nochmals so viele Autos platz, die Brücke ist also nicht voll ausgelastet:

Der weitaus kritischere Fall aber ist dann ein Wert über 1.0, zum Beispiel 1.7:

Die bedeutet, dass die Brücke überlastet ist. Die Spur der Brücke ist also nicht nur voll ausgelastet, es müssen sogar noch Autos vor der Brücke warten!

Nun lässt sich dies aber so nur auf einen Single-Core-Maschine anwenden.
In unserem Fall sind ja 8 Kerne vorhanden, was wiederum 8 Spuren auf einer Brücke, also Platz für 8 Reihen voll Autos bedeuten würde:

Das System ist also genau optimal ausgelastet, wenn der Load die selbe Anzahl ausgibt, wie an Kernen vorhanden sind.
Wie viel das tatsächlich sind, gibt folgender Befehl aus:

1
grep 'model name' /proc/cpuinfo | wc -l

In meinem Fall also ist ein Wert von 1.7 nicht schlimm, da erst 8 Volllast bedeuten würde, was sich auch wiederum mit den 99% Idle von vmstat deckt.

[Quelle]

^M am Ende jeder Zeile

Soeben habe ich ein paar Anpassungen in einem File einer Internetplattform vorgenommen.
Als ich die Daten dann mit VI auf der Konsole geöffnet hatte, stand an jedem Ende einer Zeile ein ^M.
Dies kommt daher, dass die Datei unter Windows geschrieben wurde und dadurch ein anderes Fileformat enthält. Dadurch bildet VI jeden Zeilenumbruch durch ein ^M ab.
Wer häufig zwischen den beiden Welten Linux und Windows unterwegs ist, der hat sicher schon oft festgestellt, dass eine unter Linux verfasste Textdatei unter Windows plötzlich keine Zeilenumbrüche mehr hat.

Zuerst habe ich versucht, dieses Überbleibsel der Windows-Welt direkt in VI selbst zu ersetzen:

1
%s/\^M//g

Dies funktionierte leider nicht, wäre ja auch zu schön gewesen.
VI sucht mit diesem Kommando nach den Zeichen ^ und M. Leider ist der Zeilenumbruch aber nur abgebildet als ^M, nicht aber auch als solches abgespeichert, wodurch VI nie etwas finden wird.

Die Lösung schlussendlich war zwar nicht ganz so komfortabel wie direkt per VI, hat aber ihren Zweck voll und ganz erfüllt:

1
perl -p -e 's/\r$//' < windowsdatei > linuxdatei

Natürlich funktioniert das ganze auch für alle Verräter der Linuxwelt (kein Flame, nur Spass) ;)

1
perl -p -e 's/\n/\r\n/' < linudatei > windowsdatei