Systemüberwachung mit E-Mail-Benachrichtigungen

10

Ich habe derzeit einen Ubuntu Server 16.04 LTS und möchte E-Mail-Benachrichtigungen mit Informationen zur Ressourcennutzung auf meinem Server erhalten können. CPU, Speicher, Swap, Sie nennen es.

Ich verstehe, dass ich Glances für die lokale Überwachung verwenden kann, aber ich bin nicht die ganze Zeit auf der Konsole und schaue mir die Informationen an. Ich benötige nur E-Mail-Benachrichtigungen, die mich über Ressourcen informieren, die über den normalen / kritischen Werten liegen, und benachrichtigt werden.

Kennt jemand eine Methode, mit der ich das machen kann?

SergeantSerk
quelle
netdata ist perfekt für Ihre Anforderung.
luv.preet

Antworten:

13

Ich werde Ihnen eine kleine Liste von Werkzeugen geben - während ich Nagios persönlich empfehlen würde, einfach so, wie ich es gewohnt bin. Es kommt mit einer großen Benutzerbasis, einer guten Sammlung von Plug-Ins usw. - aber ich habe auch gute Dinge über Icinga gehört .

Beachten Sie, dass das Einrichten von Nagios oder Icinga einige Zeit dauern wird, bis Sie ein perfekt funktionierendes Setup haben, das alle Ihre vorhandenen Dienste abdeckt / überwacht. Der Start ist höchstwahrscheinlich nicht so einfach, aber sobald Sie ihn zum Laufen gebracht haben, ist es ein schönes Setup, das alle Ihre definierten Dienste benachrichtigt, wenn sich Status ändern, sodass etwas gemeldet / als kritisch definiert wird

Projektnamen & Links

Zunächst einmal - ein kurzer Überblick:

Client- und Server-Setups

Andere interessante Software

  • Rauchen (funktionell eingeschränkt)

Einzelhost-Setups

Mehr Informationen

Über Nagios

Wikipedia schreibt

Nagios / ˈnːɡiːɡoʊʊs /, jetzt bekannt als Nagios Core, ist eine kostenlose Open-Source-Computer-Softwareanwendung, die Systeme, Netzwerke und Infrastruktur überwacht. Nagios bietet Überwachungs- und Warndienste für Server, Switches, Anwendungen und Dienste an. Es warnt Benutzer, wenn etwas schief geht, und benachrichtigt sie ein zweites Mal, wenn das Problem behoben wurde.

Beispielbild - zeigt 1 von mehreren Ansichten, die Sie haben:

Geben Sie hier die Bildbeschreibung ein

Hier ist ein guter AskUbuntu-Beitrag über die Installation von Nagios . Nagios Exchange bietet eine riesige Sammlung von Plugins, Addons, Dokumentationen, Erweiterungen und mehr.

Über Munin

Wikipedia schreibt

Munin ist eine kostenlose Open-Source-Softwareanwendung zur Überwachung, Netzwerküberwachung und Infrastrukturüberwachung von Computersystemen. Es bietet Überwachungs- und Warndienste für Server, Switches, Anwendungen, Dienste usw. Es benachrichtigt die Benutzer, wenn Probleme auftreten, und benachrichtigt sie ein zweites Mal, wenn das Problem behoben wurde

Beispielbild

Geben Sie hier die Bildbeschreibung ein

Über Icinga

Wikipedia schreibt

Icinga ist ein Open-Source-Computersystem und eine Netzwerküberwachungsanwendung. Es wurde ursprünglich als Gabel der Nagios-Systemüberwachungsanwendung im Jahr 2009 erstellt.

Icinga versucht, wahrgenommene Mängel im Entwicklungsprozess von Nagios zu überwinden und neue Funktionen wie eine moderne Benutzeroberfläche im Web 2.0-Stil, zusätzliche Datenbankkonnektoren (für MySQL, Oracle und PostgreSQL) und eine REST-API hinzuzufügen Ermöglicht Administratoren die Integration zahlreicher Erweiterungen ohne komplizierte Änderungen des Icinga-Kerns.

Beispielbild mit 1 von mehreren Ansichten:

Geben Sie hier die Bildbeschreibung ein

Über Spiceworks

Wikipedia schreibt:

Spiceworks ist ein professionelles Netzwerk für die Informationstechnologie (IT) mit Hauptsitz in Austin, Texas. Das Unternehmen wurde im Januar 2006 von Scott Abel, Jay Hallberg, Greg Kattawar und Francis Sullivan gegründet, um IT-Management-Software zu entwickeln.

Spiceworks ist eine Online-Community, in der Benutzer zusammenarbeiten und sich gegenseitig beraten lassen sowie auf einem Marktplatz IT-bezogene Dienstleistungen und Produkte erwerben können. Das Netzwerk wird schätzungsweise von mehr als sechs Millionen IT-Fachleuten und 3.000 Technologieanbietern genutzt.

Über Monit

Wikipedia schreibt

Monit ist ein kostenloses Open Source-Tool zur Prozessüberwachung für Unix und Linux. Mit Monit kann der Systemstatus direkt über die Befehlszeile oder über den nativen HTTP (S) -Webserver angezeigt werden. Monit wurde bei Ruby on Rails und dem Mongrel-Webserver immer beliebter, da ein Tool benötigt wurde, mit dem die vielen identischen Mongrel-Prozesse verwaltet werden konnten, die zur Unterstützung einer skalierbaren Ruby on Rails-Site ausgeführt werden mussten, und Monit war ziemlich einzigartig Geeignet für die Bedürfnisse der Ruby on Rails-Community. Viele beliebte Rails-Sites haben Monit verwendet, einschließlich Twitter und Scribd.

Über Kakteen

Wikipedia schreibt:

Cacti ist ein webbasiertes Open-Source-Tool zur Netzwerküberwachung und -grafik, das als Front-End-Anwendung für das branchenübliche Open-Source-Datenprotokollierungstool RRDtool entwickelt wurde. Mit Cacti kann ein Benutzer Dienste in festgelegten Intervallen abfragen und die resultierenden Daten grafisch darstellen. Es wird im Allgemeinen verwendet, um Zeitreihendaten von Metriken wie CPU-Auslastung und Netzwerkbandbreitennutzung grafisch darzustellen. Eine übliche Verwendung besteht darin, den Netzwerkverkehr zu überwachen, indem ein Netzwerk-Switch oder eine Router-Schnittstelle über SNMP (Simple Network Management Protocol) abgefragt wird.

Das Front-End kann mehrere Benutzer mit jeweils eigenen Diagrammsätzen verwalten. Daher wird es manchmal von Webhosting-Anbietern (insbesondere dedizierten Servern, virtuellen privaten Servern und Kollokationsanbietern) verwendet, um Bandbreitenstatistiken für ihre Kunden anzuzeigen. Es kann verwendet werden, um die Datenerfassung selbst zu konfigurieren, sodass bestimmte Setups ohne manuelle Konfiguration von RRDtool überwacht werden können. Cacti kann erweitert werden, um jede Quelle über Shell-Skripte und ausführbare Dateien zu überwachen.

Über Zabbix

Wikpedia schreibt:

Zabbix ist eine Open-Source-Überwachungssoftware für Netzwerke und Anwendungen, die von Alexei Vladishev entwickelt wurde. Es dient zur Überwachung und Verfolgung des Status verschiedener Netzwerkdienste, Server und anderer Netzwerkhardware.

Zabbix verwendet MySQL, PostgreSQL, SQLite, Oracle oder IBM DB2 zum Speichern von Daten. Das Backend ist in C und das Web-Frontend in PHP geschrieben. Zabbix bietet verschiedene Überwachungsoptionen

dufte
quelle
3

Sie können mehrere Lösungen verwenden. Einer von ihnen ist monit.

Führen Sie in der Befehlszeile einfach den folgenden Befehl aus:

sudo apt-get install monit

Monit sollte jetzt über eine der folgenden URLs installiert und zugänglich sein:

http://localhost:2812
http://IPADDRESS:2812 (local network IP)
http://domain.com:2812 (if you have domain name pointing to your server)

Konfiguration überwachen

Bevor Sie mit der Monitautomatischen Serverüberwachung beginnen können, müssen Sie einige grundlegende Konfigurationen vornehmen. Sichern Sie zuerst die vorhandene Standardkonfiguration Monitmit dem folgenden Befehl:

sudo mv /etc/monit/monitrc /etc/monit/monitrc.bak

Erstellen Sie als Nächstes monitrcmit dem Befehl eine neue Datei

sudo /etc/monit/monitrc 

und kopieren Sie den folgenden Inhalt darauf.

# How often in seconds should monit check your services.
set daemon 120

set logfile /var/log/monit.log
set idfile /var/lib/monit/id
set statefile /var/lib/monit/state

# Configure your SMTP out server. 
set mailserver smtp-server.columbus.rr.com port 25,localhost

set eventqueue
    basedir /var/lib/monit/events # set the base directory where events will be stored
    # optionally limit the queue size
    slots 100 

# Use one of the following 2 lines. The second line alerts on every little change and can be annoying.
set alert [email protected] but not on { instance, pid, ppid } #does not send alert on pid changes
#set alert [email protected] 

set httpd port 2812 and
    #Change username and password
    allow Username:Password
    # To enable SSL for WebUI uncomment the next 2 lines
    #ssl enable
    #pemfile /path/to/unified/certificate.pem
    # To restrict access to localhost only uncomment the following line
    #allow localhost

include /etc/monit/conf.d/*

Zeilen, die mit einem # beginnen, sind Kommentare, mit denen Sie die Konfiguration anpassen können. Stellen Sie sicher, dass mindestens die Administrator-E-Mail, der SMTP-Server und der SMTP-Port korrekt konfiguriert sind. Sie sollten auch in Betracht ziehen, den Benutzernamen und das Kennwort von Monit WebUI zu ändern. Wenn Sie über ein SSL-Zertifikat verfügen, können Sie dieses auch für den HTTPS-Zugriff aktivieren

Verwenden Sie vorerst die folgenden Befehle, um sicherzustellen, dass Monit ordnungsgemäß funktioniert.

So testen Sie die MonitKonfiguration auf Syntaxfehler:

sudo monit -t

So starten Sie Monit:

sudo monit

So überprüfen Sie den Überwachungsstatus:

sudo monit status

Systemlastüberwachung mit Monit

Es ist erforderlich, dass Sie über eine funktionierende Monit-Instanz mit einer geeigneten /etc/monit/monitrcDatei verfügen . Überwachungskonfigurationen für verschiedene Dienste werden aus dem /etc/monit/conf.dOrdner geladen . MonitErstellen Sie zum Überwachen der Serverlast mit Monitdem folgenden Befehl eine Konfigurationsdatei:

sudo /etc/monit/conf.d/systemload

Kopieren Sie den folgenden Inhalt, speichern Sie ihn und beenden Sie ihn

# domain.com could be IP, hostname, or localhost
check System domain.com
    if loadavg (1min) > 4 then alert
    if loadavg (5min) > 2 then alert
    if memory usage > 75% then alert
    if swap usage > 25% then alert
    if cpu usage (user) > 80% then alert
    if cpu usage (system) > 30% then alert
    if cpu usage (wait) > 20% then alert

Mit diesem Code erhalten MonitSie eine E-Mail-Benachrichtigung, wenn eine der oben genannten Bedingungen (z. B. eine durchschnittliche Last beträgt >4mindestens 1 Minute oder wenn mehr als 75% RAMvoll ist) erfüllt ist. Sie können die oben genannten Regeln nach Ihren Wünschen anpassen. Unten finden Sie eine beispielhafte E-Mail-Benachrichtigung, die von gesendet wurde, Monitsowie eine Beschreibung, welche Bedingung die Warnung verursacht hat.

Monit testen und neu laden

Sobald Sie Änderungen vorgenommen haben, müssen Sie die MonitKonfiguration testen :

sudo monit -t

Sie sollten die folgende Meldung sehen: Control File Syntax OK.

Überprüfen Sie anschließend Monitmit dem folgenden Befehl, ob bereits ausgeführt wird:

sudo /etc/init.d/monit status

Wenn Monites ausgeführt wird, laden Sie die MonitKonfigurationen mit dem folgenden Befehl neu:

sudo /etc/init.d/monit reload

Starten Sie jetzt Ihren Webbrowser und besuchen Sie eine der folgenden URLs, je nachdem, wie Ihr Monit konfiguriert ist (stellen Sie sicher, dass Sie die richtige Portnummer verwenden):

http://localhost:2812
http://IPADDRESS:2812 (local network IP)
http://domain.com:2812 (if you have domain name pointing to your server)

Sie sollten den Systemstatus, die Last, die CPU-Last, die Speicherlast und die Swap-Last sehen

Speicherüberwachung mit Monit

Als nächstes ist es erforderlich, dass Sie eine Arbeitsinstanz Monitmit einer geeigneten /etc/monit/monitrcDatei haben. MonitKonfigurationen für verschiedene Dienste werden aus dem /etc/monit/conf.dOrdner geladen . Zur Überwachung des Speicherplatzes mit der Monit, create aMonit-Konfigurationsdatei mit dem folgenden Befehl:

sudo /etc/monit/conf.d/storagespace

Kopieren Sie den folgenden Inhalt, speichern Sie ihn und beenden Sie ihn

# add each drive you want to monitor below
check filesystem Ubuntu with path /dev/sda1
    if space usage > 90% then alert
check filesystem Home with path /dev/sda3
    if space usage > 90% then alert
check filesystem Media with path /dev/sdb1
    if space usage > 90% then alert

Der obige Code überwacht den Festplattenspeicher in 3 Partitionen auf 2 Laufwerken. Wenn einer von ihnen zu mehr als 90% voll ist, werden Sie alarmiert.

Sie können auch bestimmte Dienste überwachen.

Überwachen Sie Apache Server mit Monit

Das Einrichten der Apache-Serverüberwachung mit Moniterfolgt über Monit’svorgefertigte Konfigurationsvorlagen. Sie müssen lediglich die vorhandene Vorlage aus /etc/monit/monitrc.deinem /etc/monit/conf.dOrdner kopieren .

sudo cp /etc/monit/monitrc.d/apache2 /etc/monit/conf.d/

Anstatt zu kopieren, können Sie auch einen symbolischen Link erstellen. Apache-Webserver-Prozess erstellt apache2.pid. Die obige Code-Monitor- apache2.pidDatei Monitversucht, Apache neu zu starten, falls sie nicht vorhanden ist . Ein Neustart löst eine E-Mail-Benachrichtigung aus. Wenn der Neustart mehrmals fehlschlägt, beendet Monit die Überwachung des Apache-Servers.

...

2707974
quelle
2

Sie können sich auch SeaLion ansehen. Sie können benutzerdefinierte Warnungen für die CPU-Auslastung, den Arbeitsspeicher usw. festlegen. Außerdem können Sie Ihre eigenen Metriken hinzufügen und Benachrichtigungen für diese konfigurieren. Sie können auch festlegen, dass die Befehle in bestimmten Intervallen ausgeführt werden und ihre Ausgaben in einer Zeitleistenanzeige angezeigt werden. Mehr dazu finden Sie hier .

Araknid
quelle
1

Die oben genannten Tools eignen sich hervorragend zum Generieren von E-Mails. Ich bevorzuge es, E-Mails für meine tägliche Überwachung zu erhalten, da ich nicht den ganzen Tag sitzen und ein Dashboard sehen möchte. Das Problem ist, dass Sie von E-Mails überflutet werden und sich nur dafür interessieren, wenn etwas schief geht. Woher wissen Sie auch, ob eine E-Mail aus irgendeinem Grund nie zugestellt wurde und Sie denken, dass alles gut funktioniert?

Ich habe lange gesucht und bin auf zwei Produkte gestoßen, die Ihre Berichts-E-Mails lesen und Sie warnen können, wenn Sie Maßnahmen ergreifen müssen.

  1. PRTG Sie können E-Mail-Filter einrichten, um nach E-Mails zu suchen, die bestimmte Wörter enthalten. War etwas kompliziert zu machen.
  2. Ein Online-Tool namens wwww.smtpviewer.com erledigt den Job tatsächlich und verfügt über eine Zeitüberschreitungseinstellung, die Sie warnt, wenn E-Mails von Ihren überwachten Geräten für eine festgelegte Zeit nicht eingegangen sind.
John Grobbelaar
quelle
Viele Mail-Clients bieten bereits die Möglichkeit, Mails zu filtern, zu sortieren, zu markieren, .... Daher sehe ich nicht wirklich die Notwendigkeit einer externen Lösung dafür. Ich benutze zum Beispiel seit Jahren Thunderbirds Filter, um dies zu tun. Wenn der Mailserver dies unterstützt, können Sie Sieve-Skripte auch verwenden , um die Mails direkt auf dem Server zu filtern, zu sortieren, zu markieren usw.
Henning Kockerbeck
0

In meiner Schule gab uns unser Lehrer eine Schulung zu Pandora FMS, einer Überwachungslösung, die Serverüberwachung, Anwendungen und sogar Netzwerke abdeckt!

Ich kannte Zabbix und Nagios zu diesem Zeitpunkt nur, ich hatte noch nie von dieser Lösung gehört, aber jetzt stütze ich mein Projekt aufgrund der zusätzlichen Funktionen darauf. Der Serverüberwachungsteil ist wirklich ausgereift und meiner Meinung nach ist es einfacher, Leistungsstatistiken so schnell wie möglich zu konfigurieren und abzurufen: http://pandorafms.com/monitoring-solutions/server-monitoring/

roh
quelle
-1 kommerzielles Paket ...
Fabby
0

Obwohl es nicht genau das tut, was Sie logwatchsofort wollen, finde ich es ein äußerst nützliches und dennoch einfaches Werkzeug.

Sie erhalten täglich eine Zusammenfassung aller Ereignisse in Ihrem /var/logVerzeichnis sowie einige andere wichtige Systeminformationen, z. B. den aktuellen Speicherplatz. Alles, was fehlt, kann ganz einfach hinzugefügt werden (zum Beispiel habe ich ein Skript hinzugefügt, das überprüft, ob bestimmte Dämonen noch ausgeführt werden).

Darren
quelle
0

Soweit ich weiß, ist Ihr Bedürfnis sehr grundlegend. Sie möchten E-Mail-Inhalte nach bestimmten Schlüsselwörtern durchsuchen und dann benachrichtigt werden, wenn dies geschieht. Nur wenn die E-Mail beispielsweise das Wort "Fehler" enthält, möchten Sie benachrichtigt werden, und nicht, wenn sie Erfolg enthält. Ich benutze auch www.smtpviewer.com, wie von John Grobbelaar erwähnt, um benachrichtigt zu werden. Der Vorteil der Verwendung eines Online-Tools besteht darin, dass Sie immer benachrichtigt werden können, wenn die erwartete E-Mail nicht eintrifft. Von allen Mail-Monitor-Tools, die ich mit diesem gespielt habe, ist es das einfachste und macht nur dieses eine.

Dirk Hemmingway
quelle
Dies scheint die Frage nicht zu beantworten. Bitte formulieren Sie dies neu, um die Frage zu beantworten, oder löschen Sie diese Antwort / verschieben Sie sie in einen Kommentar. Vielen Dank und willkommen bei Ask Ubuntu!
Zwork