Check_mk zur Überwachung der Netzwerkgeräte auf dem RPi4 mit externer hdd

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Moinsen,

    nachdem ich dieses Tutorial bereits zuvor eingeschickt habe, aber wegen einiger Fehler und schlechtem Layout wieder gelöscht habe, hier der 2. Versuch. Diesmal sollte es passen.

    Die Versionsnummer von check_mk muss angepasst werden, auch die Bezeichnung der externen hdd sowie der Mountpoint sind von euren individuellen Bedürfnissen abhängig. Wie meist gilt: nicht einfach ab kopieren, sondern verstehen und dann abstrahieren und umsetzen...

    Das Programm check-mk ist ein Monitoringtool zur Überwachung von Geräten im Netzwerk. Es dient nicht der Überwachung des Netzwerkverkehrs, sondern fragt die vorhandenen Geräte mittels eigenem „Agenten“ (auf den Raspberry Pies) und über das SNMP-Protokoll (pfsense, switches, NAS) nach ihrem jeweiligen Zustand. Dabei werden verschiedene Parameter in regelmäßigen Zeitabständen abgefragt und übersichtlich dargestellt.

    Der rasCMK-Server bootet wie die anderen Geräte über die sdcard. Es ist eine externe usb-HDD angeschlossen, um die Programme (hier der Systenzweig für check_mk) wie auch die Protokolldaten zu speichern. Hierdurch ist mehr Speicherplatz vorhanden und die sdcard wird vor den zahlreichen Schreibvorgängen geschont.

    Um den Vorgang vollständig zu beschreiben, wird er in drei Bereiche unterteilt:

    1. Raspberry und USB HDD vorbereiten

    2. checkmk installieren

    3. checkmk umziehen auf externe USB HDD

    4. Einrichtung check_mk

    Fangen wir an…

    1. Raspberry und USB HDD vorbereiten

    Nach erfolgtem Zusammenbau des RPis wird das OS (Raspian) mittels Raspi-Imager Programm auf der sdcard installiert. Dieser Schritt ist der übliche Vorgang, um seinen Rpi in Betrieb zu nehmen und soll hier nicht erneut episch abgehandelt werden.

    Die externe USB HDD wird (am PC oder nach erfolgter Raspian-Installation und zusätzlicher Installation von gparted) mit einer ext4 Partition angelegt. Zusätzlich wird eine Partition für SWAP angelegt. Bei den neueren Rpis wird dies vermutlich nicht unbedingt benötigt, da der Arbeitsspeicher ja deutlich vergrößert wurde. Es entlastet aber die sdcard von den zahlreichen Schreibvorgängen:

    • USB HDD am PC anschließen, mit gparted eine Partition (ext4) anlegen, durchlaufen lassen

    • Partition verkleinern und Bereich für SWAP abzweigen

    • auf dem Rpi einen Ordner als Mountpoint anlegen, z.B. mit:

    Code
    sudo mkdir media/usbhdd06
    • dem Nutzer die nötigen Besitzrechte geben mit

    Code
    sudo chown pi /media/usbhdd06
    • USB HDD am Rpi anstöpseln, eindeutige Bezeichnung der USB HDD ermitteln mit
    Code
    sudo blkid
    • hier die UUID kopieren und mit sudo nano /etc/fstab die HDD dort eintragen wie folgt

    Code
     UUID=EURE UUID      /media/usbhdd06      ext4      defaults      0  0
    • speichern und schließen

    • dann auf dem Rpi die SWAP deaktivieren mit

    Code
    sudo dphys-swapfile swapoff
    • dasselbe mit der swap Partition und wieder in die fstab eintragen mit sudo nano /etc/fstab mit den Angaben

    Code
    UUID=EURE SWAP UUID     none     swap     sw     0 0
    • wieder speichern und schließen

    • Neustarten mit sudo reboot

    • dann mit htop anzeigen lassen, ob der Rpi den vergrößerten SWAP Bereich auch angenommen hat (oberer Bereich Zeile swap)

    2. checkmk installieren

    Für den RPi reicht in der Regel die Basisvariante von checkmk aus: checkmk raw

    Hierfür steht etwa auf github der Code zur Verfügung (https://github.com/chrisss404/check-mk-arm)

    Also:

    Code
    sudo curl -LO $(curl -s https://api.github.com/repos/chrisss404/check-mk-arm/releases/latest | grep browser_download_url | cut -d '"' -f 4) 
    sudo dpkg -i check-mk-raw-*.buster_armhf.deb
    sudo apt-get install -f
    sudo systemctl daemon-reload

    Kurz schauen, ob der Dienst auch okay läuft mit

    Code
    sudo systemctl status check-mk-raw-1.6.0p14.service


    Damit wäre die eigentliche Installation auch bereits fertig...als Nächstes wird checkmk zu einem Umzug auf die externe USB HDD animiert, bevor eine eigene Site angelegt wird...


    3. check_mk umziehen

    Kurz gesagt werden auf der USB HDD neue Verzeichnisse angelegt, bestehende Ordner und ihre Inhalte werden von der sdcard auf die externe hdd verschoben und schließlich werden die Links angelegt, die auf die neuen Ordner auf der USB hdd verweisen. Um dies zu erreichen zunächst die Dienste check_mk und apache2 stoppen:  

    Code
    sudo systemctl stop check-mk-raw-1.6.0p14.service
    sudo systemctl stop apache2.service

    Dann die Ordner neu anlegen, die alten dorthin verschieben und den link anlegen:

    Für check_mk

    Code
    sudo mkdir /media/usbhdd06/opt
    sudo mv /opt/omd /media/usbhdd06/opt
    sudo ln -s /media/usbhdd06/opt/omd /opt 

    Für apache2:

    Code
    sudo mkdir /media/usbhdd06/var/log
    sudo mv /var/log/apache2 /media/usbhdd06/var/log
    sudo ln -s /media/usbhdd06/var/log/apache2 /var/log
    sudo mkdir /media/usbhdd06/var/cache
    sudo mv /var/cache/apache2/ /media/usbhdd06/var/cache/
    sudo ln -s /media/usbhdd06/var/cache/apache2/ /var/cache/

    Dann die DIenste wieder starten...

    Code
    sudo systemctl start check-mk-raw-1.6.0p14.service
    sudo systemctl start apache2.service
    Code
    Jetzt 

    Jetzt muss check_mk natürlich noch eingerichtet werden, dies erfolgt zunächst weiter im Terminal, dann aber vor allem auf der GUI im Browserfenster...

    1. es werden root-Rechte benötigt: sudo -i

    2. als root dann: omd create MYSITE

    Es öffnet sich ein Fenster zur ersten Abfrage von Einstellungen. Wichtig: zum Ende des Prozesses erscheinen Hinweise zum log-in UND DAS GENERIERTE PASSWORT. Dies unbedingt notieren. Dann endlich der Wechsel auf die GUI, hierzu die IP des RPis im Browserfenster eingeben. Log-in als cmkadmin mit dem (hoffentlich) notierten Passwort.

    Die nun folgende Konfiguration ist von den individuellen Gegebenheiten abhängig, daher hier nur der Verweis auf die offizielle Seite mit umfassendem Handbuch: https://checkmk.de/cms.html

    Die Anleitung beruht auf diversen im Netz zu findenden Tutorials und ist KEINE Neuerfindung des Feuers. Vielmehr sollen hier die (mehrfach ausprobierten und bei mir funktionierenden) Arbeitsschritte als how-to beschrieben werden. Als Grundlage dafür diente mir:

    https://maker-tutorials.com/raspberry-pi-u…binden-mounten/

    https://bitreporter.de/raspberrypi/ra…ck-verschieben/

    https://github.com/chrisss404/check-mk-arm

    https://checkmk.de/cms.html

    https://4noobs.de/viewtopic.php?t=157

    So, hoffe, dass diesmal alles soweit passt...

    Wie gesagt, ist nicht meine Erfindung, sondern soll nur einen Roten Faden durch die verschiedenen im Netz gefundenen Anleitungen geben.

    Viel Spass!!!

    Grüßle,

    the other


    Gesund bleiben! Abstand halten! Mund-Nasen-Schutz tragen! Freundlich bleiben!

    Einmal editiert, zuletzt von the other (10. August 2020 um 16:27)

  • Check_mk zur Überwachung der Netzwerkgeräte auf dem RPi4 mit externer hdd? Schau mal ob du hier fündig wirst!

  • Moinsen,

    Danke für dein Feedback!!

    Hab ich (du meinst den Absatz unter Punkt 3.?) mehrfach versucht...entweder mir ist zu heiß oder ich bin zu doof (oder auch beides), wie auch immer: ging nicht. Hab es jetzt manuell versucht (ohne die Layoutleiste)...besser? Hier sieht es okay aus.

    Grüßle,

    the other


    Gesund bleiben! Abstand halten! Mund-Nasen-Schutz tragen! Freundlich bleiben!

  • Ich versuche schon seit längerer Zeit check mk über RPi4 zum Laufen zu bringen. Dein Tutorial hat mir den letzten Anstoß gegeben, es endlich zu tun.

    Vielen Dank!

    “Dummerweise kann man niemanden erklären, was die Matrix ist.

    Du musst sie selbst erleben.”

    - Morpheus

  • Erst mal danke für dein Tuto und die Mühe, es immer wieder aktuell zu halten.

    Wie funktioniert es, wenn der Raspi bereits direkt von der SSD bootet ?

    Den Umzugs-Schritt einfach weg lassen ?

    Macht es Sinn, den Apache und das Programm in einer Partition zu installieren, und die Daten in eine zweite zu schreiben, die ebenfalls auf der SSD liegt ? Oder muss alles in der gleichen Partition laufen ?

  • Moinsen,

    erneut Danke für das Feedback und die Frage...

    Himbeer-Eis

    hab ich selber noch nicht probiert, muss ich gestehen. Ich bin aktuell dabei, dass ich meine Raspis auf SSD-boot umstelle.

    Vermuten tu ich (wie gesagt: VERMUTEN), dass durch den bereits eingerichteten boot von SSD per USB ja bereits alle benötigten Dateien dort liegen wo sie liegen sollten. Daher müsste dann die Installation und Konfig von check_mk eben (wie du ja auch geschrieben hattest) einfach normal durchlaufen, also ohne Umzug.

    Auch zu der Frage bzgl. einer eigenen Partition hab ich bislang null Erfahrungswerte...da hier aber sonst nix läuft, lass ich das auch erstmal weg.

    Sorry für die späte Antwort, war viel zu tun, wenig hier, eben erst gesehen...

    Grüßle,

    the other


    Gesund bleiben! Abstand halten! Mund-Nasen-Schutz tragen! Freundlich bleiben!

  • Moinsen,

    so, endlich mal der kurze (und vermutlich auch überflüssige) Nachtrag:

    da die Raspi4 Platform mittlerweile recht problemlos den boot von ssd unterstützen ist der workaround in der originalen Anleitung nicht mehr nötig.

    Einfach euer Raspi für den boot von ssd einrichten (gibt ja hier im Forum super Anleitungen für) und dann ganz normal checkmk installieren. Läuft hier absolut stabil und fehlerfrei seit nem halben Jahr und spart die Schritte 1. und 3.

    :)

    Grüßle,

    the other


    Gesund bleiben! Abstand halten! Mund-Nasen-Schutz tragen! Freundlich bleiben!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!