Inhaltsverzeichnis:

Shinken Network Monitor auf Raspberry Pi installieren und einrichten - Gunook
Shinken Network Monitor auf Raspberry Pi installieren und einrichten - Gunook

Video: Shinken Network Monitor auf Raspberry Pi installieren und einrichten - Gunook

Video: Shinken Network Monitor auf Raspberry Pi installieren und einrichten - Gunook
Video: How to install Shinken – Server Monitoring Framework in Ubuntu 2024, November
Anonim
Installieren und Einrichten von Shinken Network Monitor auf Raspberry Pi
Installieren und Einrichten von Shinken Network Monitor auf Raspberry Pi

HINWEIS: Shinken wurde zuletzt im März 2016 auf eine stabile Version 2.4.3 aktualisiert. Also wechselte ich vor einigen Jahren zu anderen Methoden zur Überwachung von Heimnetzwerken. Außerdem scheint php5 nicht verfügbar zu sein

Also, bitte verwenden Sie dieses instructable nicht!

Installieren und konfigurieren Sie die neueste Version von Shinken Network Monitor für ein Heim- oder Kleinunternehmen.

Bei der Arbeit entwickelt mein Team die Software für mehr als 75 Serverklassen mit über 300 Instanzen in mehreren Rechenzentren und Points of Presence. Es gibt ein erfahrenes Betriebsteam, das diese Server rund um die Uhr überwacht und am Laufen hält. Ich habe nichts in der Nähe ihres Wissens oder ihrer Expertise. Außer mir selbst habe ich niemanden, der mein Heimnetzwerk unterstützt. Und ich möchte keine Zeit damit verbringen, mein Heimnetzwerk zu überwachen und zu warten.

Mein Heim-LAN hat mehr als 40 angeschlossene Geräte, was viel größer ist, als ich jemals erwartet hatte. Viele Haushalte, vielleicht sogar Ihres, verfügen über eine große Anzahl verbundener Geräte. Beispiele für vernetzte Geräte sind:

  • Laptops und Tablets
  • eBook-Reader
  • Handys
  • Nest-Thermostate, Klingeln
  • Sicherheitssystem, Bewässerungssystem
  • Smart-TVs, U-Verse-Empfänger und DVR
  • Streaming-Media-Server (Apple TV, Roku, ChromeCast FireStick)
  • Himbeer-Pi-Heimautomatisierungsprojekte

Wenn mehr Heimgeräte verbunden werden, erwarte ich, dass mein Netzwerk wächst.

Warum sollte ein Haus einen Netzwerkmonitor haben? In einem Heimnetzwerk gibt es kritische Server und Dienste. Beispiele für kritische Server sind: ISP-Gateway, drahtloser Zugangspunkt, Sicherheitssystem und Bewässerungssystem. Beispiele für kritische Dienste sind: Sichern von PCs oder MACs, Sicherstellen, dass Wi-Fi oder Internet mit der erforderlichen Geschwindigkeit funktioniert. Um sicherzustellen, dass kritische Dienste/Server laufen, sollten diese in regelmäßigen Abständen manuell überprüft werden, was viel Zeit in Anspruch nimmt. Alternativ sollten die Server automatisch mit einem Netzwerkmonitor überprüft werden, der versucht, das Problem zu beheben und eine Warnung sendet, wenn dies nicht möglich ist.

Shinken ist ein Netzwerkmonitor, der auf jedem Computer läuft. In diesem anweisbaren werde ich es dazu bringen, einen Raspberry Pi (2 oder 3) mit Diet-Pi oder Raspbian auszuführen.

Es gibt viele ausgezeichnete Netzwerküberwachungsanwendungen. Beispiele sind: SolarWinds, NetCool und Nagios. Diese Anwendungen sind in der Lage, Probleme zu überwachen, zu identifizieren, sich selbst zu korrigieren und Warnungen zu senden.

Im Allgemeinen habe ich versucht, mein Netzwerk kostengünstig und einfach zu warten und zu aktualisieren. Ich habe mich auf Open-Source-Anwendungen konzentriert, die in einer kleinen Anzahl von Sprachen geschrieben wurden. Meine bevorzugten Sprachen sind: Python, Bash, HTML und CSS.

Shinken ist ein Open-Source-Rewrite von Nagios in Python. Shinken passt also in meine Grenzen und erfüllt meine Bedürfnisse.

Das instructable bietet Schritt-für-Schritt-Anleitungen, wenn Sie es von Hand tun möchten. Aber ich möchte einen wiederholbaren Prozess, deshalb füge ich auch ein unbeaufsichtigtes Installationsskript in den Anhang ein, das alles mit ein paar Befehlen erledigt. Wenn etwas schief geht, führen Sie einfach die unbeaufsichtigte Installation aus und es sollte die meisten Probleme beheben.

Schritt 1: Teile sammeln

Im Laufe der Zeit habe ich festgestellt, dass die folgenden Teile in meinen Anwendungen am besten funktionieren. Diese Teile sind teurer als die im üblichen Starterkit enthaltenen.

Teile und Werkzeuge besorgen (Preise in USD):

  • Raspberry Pi 2 Modell B (Pi 3) Element14 $35 ($39)
  • Panda 300n WiFi Adapter Amazon $16.99 (nicht erforderlich, wenn Pi 3 verwendet wird)
  • 5,2 V 2,1 A USB-Netzteil von Amazon 5,99 €
  • Micro-USB-zu-USB-Kabel 3ft von Amazon $4.69
  • CAT5e/6 Ethernet-Kabel $x.xx, abhängig von der Länge
  • Hülle von Amazon $6.99
  • SanDisk Ultra 16 GB microSDHC Klasse 10 mit Adapter (SDSQUAN-016G-G4A) von Amazon 8,99 €
  • Allgemeine oder wiederverwendbare Artikel:

    • MacBook Pro (ich verwende einen MAC, da Linux als Basisbetriebssystem ausgeführt wird. Es kann jedoch ein Windows-PC verwendet werden)
    • FTDI TTL-232R-RPI Seriell-zu-USB-Kabel von Mouser $ 15
    • Fernseher mit HDMI-Anschluss
    • USB-Tastatur
    • USB-Maus
    • HDMI-Kabel (nur beim ersten Durchgang erforderlich)

Anmerkungen:

  • Text, der in Pik eingeschlossen ist, wie z. B. ♣replace-this♣, sollte durch einen tatsächlichen Wert ersetzt werden. Entfernen Sie natürlich die Spaten.
  • Befehle werden durch ein $ gekennzeichnet. Kopieren Sie beim Ausschneiden und Einfügen von Befehlen nicht die $.

Schritt 2: Raspberry Pi einrichten

Verwenden Sie diese Anleitung, um den Raspberry Pi mit DietPi einzurichten. Wenn Sie es vorziehen, kann Raspbian mit diesem anweisbaren verwendet werden.

Ich habe den Hostnamen in ♣monitor-hostname♣ geändert. Ersetzen Sie die Elemente in ♣ durch tatsächliche Werte.

Schritt 3: Terminalfenster öffnen und anmelden

Vor jedem der folgenden Schritte:

  • Öffnen Sie ein Terminalfenster auf einem MacBook oder PC und dann
  • Einloggen in Raspberry Pi

$ ssh pi@♣raspberry-pi-ip-address♣

Wenn Sie avahi-daemon auf Ihrem Raspberry Pi installiert haben, können Sie sich auf diese Weise anmelden (ich bin faul und möchte mir keine IP-Adressen merken):

$ ssh pi♣hostname♣.local

Schritt 4: Immer aktualisieren und aktualisieren

Bevor Sie neue Pakete auf einem Server installieren, aktualisieren und aktualisieren Sie immer.

  • Update lädt die neuesten Paketlisten aus den entsprechenden Repositorys herunter.
  • Upgrade aktualisiert die Pakete
  • Automatisches Entfernen löscht Pakete, die nicht mehr benötigt werden
  • Neustart ist optional. Einige Dienste müssen nach einem Upgrade neu gestartet werden. Ein Neustart ist der faule Weg, um sicherzustellen, dass alle erforderlichen Dienste ordnungsgemäß neu gestartet werden

$ sudo apt-get update -y

$ sudo apt-get upgrade -y $ sudo apt-get autoremove $ sudo reboot

Oder Sie können alle verbleibenden Schritte überspringen und die unbeaufsichtigte Installation in einem der Anhänge verwenden.

Schritt 5: Shinken-Abhängigkeiten installieren

Shinken läuft oft auf einem sehr großen Server und wird auf einer virtuellen Maschine (VMs) installiert. Ein großer Server kann mehrere VMs ausführen. VMs bieten viele Vorteile bei der Verwaltung mehrerer Server oder mehrerer Instanzen desselben Servers. VMs nutzen teure Serverressourcen effizient.

Auf Raspberry Pi kann eine virtuelle Maschine laufen. Viele der Vorteile des Ausführens einer VM auf einem Raspberry Pi im Wert von 35 US-Dollar gehen jedoch verloren. Shinken benötigt KEINE VM. Dieses anweisbare verwendet keine virtuelle Maschine.

Installieren Sie Shinken-Abhängigkeiten: sqlite3, php5, python3 und einige Python-Bibliotheken:

$ sudo apt-get install sqlite3 -y

$ sudo apt-get install php5 -y $ sudo apt-get install python3 -y $ sudo apt-get install python-pip python-pycurl python-cherrypy3 python-setuptools -y

Schritt 6: Shinken installieren

Fügen Sie den Benutzer von shinken hinzu und installieren Sie shinken mit pip.

$ sudo adduser Shinken

$ sudo pip install shinken $ sudo adduser shinken sudo

Das obige installiert Shinken und einige Daemons in /etc/init.d:

  • Shinken-Poller
  • Shinken-Reaktionner
  • Shinken-Empfänger
  • Shinken-Planer
  • Shinken-Broker

Schritt 7: Initialisieren und Starten von Shinken

Nur für den Fall, dass Shinken läuft, stoppen Sie es. Erstellen Sie außerdem ein Protokollverzeichnis und legen Sie die Berechtigungen fest.

$ sudo mkdir /var/log/shinken

$ sudo chmod 777 /var/log/shinken $ sudo service shinken stop

Führen Sie Folgendes aus, um Shinken zu initialisieren und zu starten:

$ sudo Shinken --init

$ sudo /etc/init.d/shinken start

Überprüfen Sie, ob Shinken richtig konfiguriert ist:

$ /usr/bin/shinken-arbiter -v -c /etc/shinken/shinken.cfg

Shinken beim Booten starten lassen

$ sudo update-rc.d Shinken-Standardeinstellungen

Schritt 8: Sqlite3 einrichten und konfigurieren

Richten Sie sqlite als Shinken-Datenbank ein:

$ sudo Shinken install sqlitedb

Erstellen Sie eine Konfigurationsdatei, um SQLite hinzuzufügen:

$ sudo nano /etc/shinken/modules/sqlitedb.cfg

Ich benutze sqlite3. Es ist unklar, wie dies in sqlite3 oder in eine bestimmte sqlite-DB-Datei abgebildet wird.

Modul definieren {

Modulname sqlitedb Modultyp sqlitedb uri /var/lib/shinken/webui.db }

Berechtigungen für die Datei ändern

$ sudo chmod 777 /etc/shinken/modules/sqlitedb.cfg

Schritt 9: Shinken-Web-UI installieren

Installieren Sie die Web-Benutzeroberfläche von Shinken:

$ sudo /usr/bin/shinken search webui

$ sudo /usr/bin/shinken install webui Grabbing: webui OK webui

Bearbeiten Sie die Web-UI-Konfiguration und ändern Sie den Eintrag: CHANGE_ME. Ich bin mir nicht sicher, was es ändern soll. Ich wechselte zu einem zufälligen Wort.

$ sudo nano /etc/shinken/modules/webui.cfg

Bearbeiten Sie den Master-Broker, um die Web-UI-Module einzuschließen

$ sudo nano /etc/shinken/brokers/broker-master.cfg

Zeile ändern:

Module

zu

Module webui

Shinken neu starten

$ sudo /etc/init.d/shinken Neustart

Schritt 10: Benutzer und Passwörter hinzufügen

Stellen Sie sicher, dass eine Methode zum Autorisieren von Shinken-Benutzern installiert ist

$ sudo Shinken install auth-cfg-password Bearbeiten Sie die Web-UI-Konfiguration von Shinken

$ sudo nano /etc/shinken/modules/webui.cfg

Ändere so aus:

Module auth-cfg-password

Vince35 schlägt vor, dass an dieser Stelle ein Neustart erforderlich ist:

$ sudo /etc/init.d/shinken Neustart

Öffnen Sie ein Browserfenster und melden Sie sich mit Passwort und Benutzernamen an: admin, admin. Geben Sie in die URL des Browsers Folgendes ein (entfernen Sie die Leerzeichen um den Doppelpunkt):

♣Hostname♣.local:7767

Login mit Admin, Raspberry-Pi-Passwort

Und es sollte funktionieren!

Schritt 11: Anhang: Referenzen

Netzwerküberwachung

Interessantes Übersichtsdokument zur Netzwerküberwachung

Netzwerkmonitore

  • fing:
  • HowToGeek.com - ausgezeichnete Quelle
  • MRTG:
  • Netbeez:
  • Raspberry Pi-Geek:
  • Shinken: Umschreiben von Nagios in Python:
  • Shinken-Installation:
  • Shinken-Web-UI-Einrichtung:
  • GitHub-System:
  • Rob Layton: Manuelles Einrichten eines Shinken-Überwachungsservers

Schritt 12: Anhang: Updates

15OCT2016: Aktualisiertes Titelbild mit Shinken- und Raspberry Pi-Logos

16OCT2016: Einige Passagen umformuliert. Keine technischen Änderungen.

19OCT2016: Instructable und UAI aktualisiert, um Shinken beim Neustart zu starten

Zukünftige Verbesserungen:

Fügen Sie zu überwachende Systeme hinzu, entweder im anweisbaren oder als Anhang mit Beispielskripten

Schritt 13: Anhang: Fehlerbehebung

Berechtigungen für Verzeichnisse ändern

/usr/bin

/etc/init.d /etc/shinken /var/lib/shinken/modules/webui/ /etc/shinken/modules/

Ich habe den Raspberry Pi neu gestartet, aber Shinken startete nicht. Ich konnte nicht in die Log-Verzeichnisse schreiben. Also habe ich folgende Änderungen vorgenommen:

sudo mkdir /var/log/shinken

sudo chmod 777 /var/log/shinken

localhost runtersinken

Wenn localhost als down angezeigt wird.

$ sudo nano /etc/network/interfaces

Aus irgendeinem Grund ist meine Datei /etc/network/interfaces normalerweise durcheinander. Ändern Sie diese eine Zeile:

auto lo iface lo inet loopback

zu diesen beiden Zeilen:

Auto-Lo

iface lo inet loopback

Und neu starten

$ sudo Neustart

Die init.d sollte automatisch Shinken starten, aber ich musste dies tun:

$ sudo /etc/init.d/shinken Neustart

Schritt 14: Anhang: Unbeaufsichtigte Installation

Machen Sie die Installation und Konfiguration von Shinken sehr einfach, indem Sie die anweisbaren Schritte mit einem Bash-Skript für die unbeaufsichtigte Installation automatisieren. Das Skript geht davon aus, dass ein Raspberry Pi mit Raspbian oder Dietpi läuft, das über einen der eingebetteten Links eingerichtet wurde.

Ich habe das Skript auf github fertiggestellt und

  • testete die Quelle auf dietpi
  • getestetes Skript für die unbeaufsichtigte Installation auf dietpi

    • lief einmal
    • lief mehrmals, mit CTRL-c-Interrupts
  • Unbeaufsichtigtes Installationsskript auf Raspbian und diet-pi. getestet

Das Skript nimmt den Benutzernamen = pi und das Passwort = raspberry an, und das Skript versucht, Shinken zu installieren. Wenn diese nicht korrekt sind, bearbeiten Sie die Datei entsprechend.

Öffnen Sie das Terminalfenster auf einem MacBook oder PC und führen Sie die folgenden Befehle aus:

$ ssh pi@♣ip-address♣

$ sudo wget https://raw.githubusercontent.com/dumbo25/uai_install_shinken_rpi/master/shinken_uai.sh $ sudo chmod o+x shinken_uai.sh $ sudo bash shinken_uai.sh $ sudo reboot $ sudo /etc/init.d/ Shinen Neustart

Die Ausführung des Skripts auf diät-pi dauert einige Minuten.

Stellen Sie sicher, dass Sie den Raspberry Pi neu starten und warten, bis Shinken startet

Öffnen Sie einen Browser und geben Sie im URL-Fenster ein:

♣IP-Adresse♣:7767

Melden Sie sich mit admin und ♣raspberry-pi-password♣. an

Und es sollte funktionieren!

Empfohlen: