Website-Monitoring Webseiten überwachen kostenlos mit 128MB Ram VPS Server Monit

0
1699

Monit ist ein kleines sehr schlankes Programm für Linux, mit dem man einerseits den Server , auf dem es installiert ist überwachen kann und aber auch gleichzeitig andere Webserver bzw. Webseiten überwachen kann ob der gewünschte Inhalt angezeigt wird. Somit kann man prüfen ob der Webserver und die Datenbank laufen. Wenn man z.B. eine Webseite die auf PHP und MySQL läuft auf einen bestimmten Text überprüft und dieser vorhanden ist, so laufen sowohl Webserver wie auch die Datenbank.

Man kann mit diesem Tool die eigene Domain überwachen, wenn man bereits eine eigene Domain besitzt. (Domain prüfen)

Oder sie überwachen z.B eine Seite von Ihrem Webshop. Man kann damit den Inhalt prüfen und wenn es zu änderngen komt, soe bekommt man eine nachricht.

Auf dem Server selbst, wo Monit installiert ist, hat man zudem noch weiter Möglichkeiten. Man kann Dienste bei Bedarf stoppen und starten und andere Skripte starten.

Monit benötigt sehr wenige Ressourcen. Ein kleiner vServer mit 128MB Ram und 2 GB Festplatte reichen aus um Monit zu betreiben.

Hier nun die Anleitung wie man auf dem Server Monit installiert und eine externe Webseite überwachen kann.

Wir haben einen kleinen OpenVZ vServer mit 128 Ram, 2GB Festplatte und Ubuntu 12.04 32bit bestellt.

Da in den meisten Fällen der Root Benutzer bei solchen Servern aktiv ist, melden wir uns mit diesem an und lassen den Befehl ****sudo**** in der Anleitung weg.

Wir melden uns als Root an

Installieren die neuesten Updates:

apt-get update

dann

apt-get upgrade

In den meisten Fällen ist der Apache Webserver installiert. Da wir diesen nicht benötigen löschen wir ihn: (Falls jemand diesen Server als Webserver mit Apache betreibt, kann man diesen auch laufen lassen. Der Apache Webserver und der kleine Webserver der mit Monit installiert wird, laufen problemlos parallel.)

apt-get remove apache2
update-rc.d -f apache2 remove

Jetzt kann man mit dem Befehl:

free

Überprüfen, wie viel Ram belegt wird. Jetzt macht man am besten einen sauberen reboot.

reboot

Wenn man nun mit den Befehl:

free

Überprüft wie viel Ram-Speicher belegt ist, so kann man sehen, dass kaum mehr wie ein par MB belegt sind.
Nun installieren wir Monit mit:

apt-get install monit

Nun öffnen wir mit dem Editor Vim die Konfigurationsdatei. Falls VIM nicht installiert ist mit „ apt-get install vim“ installieren.

vi /etc/default/monit

Hier fügen wir unter die Zeile „START=yes“

startup=1

ein.
(Kurzinfo zu VIM Editor: Um zu editieren muss man auf „a“ drücken. Um die Datei zu speichern und den Editor zu schließen drückt man zuerst auf Esc, dann auf den Doppelpunkt, wq! Also :wq!

Mit diesem Befehl wird die Datei gespeichert und geschlossen)

Nun öffnen wir die Einstellungen von Monit:

vi /etc/monit/monitrc

In dieser Datei ist das meiste auskommentiert und somit nicht aktiv. Im Bereich vom „mailserver“ fügen wir unseren Mailserver mit folgenden Daten ein:

Andresse vom Mailserver (SMTP), Port vom Mailserver (25) Benutzernamen vom Mailserver, Passwort zum Mailserver, wie lange man auf eine Antwort vom Mailserver warten will bis er abbricht, und das Mailformat mit einer Absenderadresse.

set mailserver deinmailserver.com port 25
username "user" password "password"
with timeout 15 seconds
set mail-format { from: email-irgendetwas@deinedomain.de }

Wer die Weboberfläche von Monit aktivieren möchte sucht die Zeile „set httpd port 2812 and“ und löscht das Raute Zeichen davor, damit die Zeile aktiv ist und der Server startet. Des Weiteren muss man die Zeile „allow admin:monit“ ebenfalls entkommentieren damit man einen Benutzer zum Anmelden hat. Als User ist „admin“ angegeben und das Passwort ist „monit“. Man kann dies natürlich auch hier gleich ändern.

Zu editierender Bereich:
set httpd port 2812 and

set httpd port 2812 and
#    use address localhost
#    allow localhost
allow admin:monit
#    allow @monit
#    allow @users readonly

Nun gehen wir zum Ende der Datei ganz nach unten und fügen als Beispiel eine Webseite zum überwachen ein. Als Beispiel überwachen wir hier die Adresse

http://ww1.4hf.de/2013/04/windows-7-friert-im-leerlauf-standig-ein-losung-dq67ep-mainboard.html und prüfen ob der Text „einem Windows 7 PC“ enthalten ist. Falls nicht wird eine Email an 2 Adressen geschickt und dieses Email wird bei jedem zehnten Fehler wiederholt bis der Inhalt, bzw. die Webseite wieder online ist. Dann kommt noch ein Email, dass die Seite wieder online ist.

check host ww1.4hf.de with address ww1.4hf.de
if failed url http://ww1.4hf.de/2013/04/windows-7-friert-im-leerlauf-standig-ein-losung-dq67ep-mainboard.html and content == "einem Windows 7 PC"
timeout 10 seconds for 1 cycles then alert
alert emailadress21@deinedomain.de with reminder on 10 cycles
alert emailadress22@deinedomain.de with reminder on 10 cycles

Nun die Datei wieder abspeichern mit :wq!

Nun stoppen und starten wir Monit damit die neuen Einstellungen geladen werden.

/etc/init.d/monit stop
/etc/init.d/monit start

Wenn hier nun die Meldung kommt: Error: /etc/init.d/monit: 39: [: start: unexpected operator

So müssen wir die Datei /etc/init.d/monit in der Zeile 39 abändern. (von == zu =)

vi /etc/init.d/monit

Suchen: if [ „$1“ == „start“ ]

Ändern in: if [ „$1“ = „start“ ]

Dann nochmal Monit stoppen und starten:

/etc/init.d/monit stop
/etc/init.d/monit start

Somit sollte alles laufen. Über die Adresse http://deinewebseite.de:2812 mit dem User admin und Passwort monit kann man sich dann noch den Status direkt anzeigen lassen.

Es gibt sehr viele Möglichkeiten, was man mit Monit alles machen kann. Die ganze Dokumentation findet man auf mmonit.com/monit/documentation/monit.html

Des weiteren gibt es dann noch das Zusatzprogramm MMonit mit dem man verschiedene Installation zusammenfassen und überwachen kann.

Erleichterung für Monit

Am Ende der Datei /etc/default/monit gibt es den Eintrag:

include /etc/monit/conf.d/*

Dieser bewirkt, dass alle Dateien die im Order /etc/monit/conf.d/ liegen abgearbeitet werden.

So kann man z.B. diesen Eintrag in eine solche Datei speichern

check host ww1.4hf.de with address ww1.4hf.de
if failed url http://ww1.4hf.de/2013/04/windows-7-friert-im-leerlauf-standig-ein-losung-dq67ep-mainboard.html and content == "einem Windows 7 PC"
timeout 10 seconds for 1 cycles then alert
alert emailadress21@deinedomain.de with reminder on 10 cycles
alert emailadress22@deinedomain.de with reminder on 10 cycles

Für jeden Webserver z.B. eine eigene Datei anlegen und die einzelnen Webseiten eintragen.
Die Endung der Datei .de .com .txt spielt dabei keine Rolle.
Die Übersicht wird so sehr verbessert.

Zeitintervall Monit

Der Zeitintervall, in der Monit die Tests durchführen soll, wird über den Parameter:

set daemon 300

in der /etc/monit/monitrc eingestellt.

HINTERLASSEN SIE EINE ANTWORT