Skip to content

checkmk - Rest-Server überwachen

Verschoben checkmk
  • Mail Problem

    So Hobby Admins stoßen immer mal wieder auf neue Probleme, vor allen Dingen wenn man Lösungen mit irgendwelchen Anbietern umsetzt. Ich verschicke seit fast zwei Jahren Mails von meinem NAS oder auch von meinen Servern an einen EMail-Dienst.

    https://forum.frank-mankel.org/topic/705/mail-vom-nas-verschicken

    Das funktioniert seit ein paar Tagen nicht mehr, da die Mails als SPAM geflaggt werden. Vieles versucht, Umleitung rausgenommen, anderen Dienst als Ziel usw. Problem blieb aber für mich nicht lösbar. Anders ausgedrückt, ich war unzufrieden.

    Der Plan stand, es musste eine andere Lösung her. Ich brauchte den Rat von einem Profi und Nico meinte ganz trocken - mit checkmk 🤓

    Rest-Server

    Worum geht es denn? Ich benutze einen Rest-Server zur Sicherung von Backups mit dem Tool Restic. Dieser Server hat dann früher die Mails verschickt. Ok, das soll jetzt ersetzt werden mit checkmk.

    checkmk läuft auf meinem Haupt-PC in einem Docker Container. Dort soll das jetzt überwacht werden. Da schaue ich regelmäßig rein, so das ich dann auch zeitnah mitbekomme, wenn es mal irgendwo klemmt.

    Da der Rest-Server sowieso mit checkmk überwacht wird, sollte das relativ einfach umzusetzen sein. Ok, das war etwas optimistisch, es hat was länger gedauert bis ich alles verstanden hatte.

    Lösung

    Ich hatte erst ein wenig mit den Plugins rum gespielt. Da bekam ich aber nicht wirklich was ans Laufen.

    2d0d3cbc-1e68-42ff-80ed-b9ebcf5d5db8-image.png

    Also die Dokumentation von checkmk durchsuchen.... Die ist übrigens vorbildlich! Nach einiger Zeit war klar, ich brauche lokale Checks (Scripte) dafür.

    Das mit den Plugins hätte ich auch direkt lassen können, wenn ich die Nachricht vom Nico vernünftig gelesen und verstanden hätte 😁

    Ins checkmk integrieren über einen selbstgeschriebenen Check

    Ok, wir müssen auf dem Server Scripte erstellen, die das entsprechend überwachen und dann eine Meldung erzeugen, die der checkmk Agent lesen kann und dann am checkmk Server angezeigt wird.

    Die Scripte kommen nach

    /usr/lib/check_mk_agent/local
    

    Dann spielt man ein wenig mit dem Beispielscript der Dokumentation, bis man es angezeigt bekommt.

    #!/bin/sh
    echo "0 myservice - OK: This is my custom output"
    

    Auf der checkmk Instanz muss man jetzt folgendes machen.

    07856181-1120-4c83-93cc-7f70d274d52c-image.png

    Das dritte Icon von links bringt uns zur Übersicht der Services.

    c32208e4-76b3-4340-bcb4-43b7a63a3a39-image.png

    Der Service erscheint hier nach einem Automatic refresh, wenn er nicht schon erkannt wurde. Dann kann man ihn ins Monitoring übernehmen - fertig.

    Ok, was sehen wir auf dem Screenshot? Der erste Dienst hat eine Warnung, weil kein File in den letzten 24 Stunden erstellt wurde. Also ein Problem, wir müssen nachsehen! War in diesem Fall einfach, ich hatte gestern den Crontab abgeschaltet 😏

    Bei den anderen Diensten ist der Check noch nicht integriert, die geben mir nur die Daten vom letzten Backup aus. Und hier das Script, so als erste Version.

    #!/bin/sh
    
    dir=/mnt/HC_Volume_XXXXXX/rest-server/forum/snapshots
    cd $dir
    
    # Letztes File ermitteln
    file=`ls -t1  |  head -n 1`
    
    # Stat ausgeben
    stat=`stat -c %y $file` 
           
    # Wir checken ob ein File in den letzten 24 Stunden geändert wurde
    if find * -type f -mtime 0 | grep -q .
    
    then
    # wenn ja, ein File wurde in den letzten 24 Std.  geändert, dann echo....
    echo "0 Backup_Forum - Backup Forum - ${stat}"
    
    
    else
    # wenn kein File in den letzten 24 Std. geändert wurde, geben wir eine Warnung aus.
    echo "1 Backup_Forum - Backup Forum"
    fi 
    

    Update: Das Script muss natürlich ausführbar sein, also

     chmod +x script.sh
    

    Danke Nico!!

    Mehr denn je, man muss Lösungen mit eigenen Mitteln erstellen!

  • FrankMF FrankM verschob dieses Thema von Linux am

  • Raspberry Pi5 - First Boot

    RaspberryPi
    1
    0 Stimmen
    1 Beiträge
    121 Aufrufe
    Niemand hat geantwortet
  • Kopia - Policies

    Kopia
    1
    0 Stimmen
    1 Beiträge
    249 Aufrufe
    Niemand hat geantwortet
  • Kopia - HTTP/S Server

    Verschoben Kopia
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    FrankMF

    Ich hatte ein paar Probleme, die ich mir teilweise nicht erklären kann 🤔

    Ich möchte den Kopia Server gerne über systemd steuern.

    SystemD [Unit] Description=Kopia Server After=syslog.target After=network.target [Service] Type=simple User=kopia Group=kopia ExecStart=/usr/bin/kopia server --tls-cert-file /home/kopia-server/fullchain.pem --tls-key-file /home/kopia-server/privkey.pem --htpasswd-file /home/kopia-server/.htpasswd --address <IPv4>:51515 Restart=always RestartSec=5 [Install] WantedBy=multi-user.target

    Danach

    systemctl daemon-reload systemctl start kopia-server

    Mit

    systemctl status kopia-server

    kann man sich den Status anzeigen lassen.

    Client Rechner

    Auf dem Client, der das Backup zum Server schicken soll, machen wir dann folgendes.

    USER@HOSTNAME:~$ kopia repo connect server --url=https://<DOMAIN>:51515 --override-username=USER --override-hostname=HOSTNAME Enter password to open repository: Connected to repository API Server. NOTICE: Kopia will check for updates on GitHub every 7 days, starting 24 hours after first use. To disable this behavior, set environment variable KOPIA_CHECK_FOR_UPDATES=false Alternatively you can remove the file "/home/frank/.config/kopia/repository.config.update-info.json".

    Danach steht die Verbindung und wir können Backups hochschieben.

    kopia snapshot create $HOME

    Damit wird das Homeverzeichnis gesichert. Das initiale Backup, hat 30 Minuten gebraucht.

    created snapshot with root kb9e50ff5xxxxxxxxxx265d40a5d0861 and ID cda5c0ffxxxxxxxxxxxxxxa4cb4a367b in 30m28s

    Ein späteres Backup, sieht so aus.

    USER@HOSTNAME:~$ kopia snapshot create $HOME Snapshotting USER@HOSTNAME:/home/frank ... * 0 hashing, 51 hashed (324.8 MB), 8524 cached (6.6 GB), 0 uploaded (0 B), 0 errors 100.0% Created snapshot with root kc20a4xxxxxxxxxxxx745c6c7b37c and ID d7a96eaxxxxxxxxxxx0961018eacffa in 3m12s

    Nach 3 Minuten durch. Zu diesem Zeitpunkt hat sich aber auch nicht wirklich was geändert!

    Fazit

    Das Tool macht immer noch einen sehr guten Eindruck. Die Geschwindigkeit ist sehr gut. Die Anleitung ist leider unzureichend. Da gibt es so viele Möglichkeiten, da braucht es sehr lange, bis man da mal durchsteigt. Zum Glück, ist das was man normalerweise braucht, recht überschaubar. Bis zum produktiven Einsatz braucht das aber bei mir noch eine Menge mehr Tests.

    Was ich noch testen möchte

    Verzeichnis mounten Backup testweise wieder herstellen (zumindestens teilweise)

    Der Test läuft mit Standard Einstellungen, also z.B. ohne Kompression. Das sollte man dann auch mal testen..

    Bitte achtet auf gleiche Versionen auf dem Clienten, wie auf dem Server. Ich meine da ein paar Probleme festgestellt zu haben...

  • 0 Stimmen
    1 Beiträge
    236 Aufrufe
    Niemand hat geantwortet
  • checkmk - systemd crasht

    Verschoben checkmk
    1
    0 Stimmen
    1 Beiträge
    392 Aufrufe
    Niemand hat geantwortet
  • checkmk - Dockerinstallation

    Verschoben checkmk
    9
    0 Stimmen
    9 Beiträge
    964 Aufrufe
    FrankMF

    Und noch was Wichtiges.

    6777da6e-3b4f-41b9-bf6e-26496ae67cd8-grafik.png

    Damit sichert man den Datenaustausch ab.

    Kapitel 7.4. Inbuilt encryption

    Den Ordner findet man hier -> /etc/check_mk/encryption.cfg

  • Redis installieren

    Angeheftet Verschoben Redis
    1
    0 Stimmen
    1 Beiträge
    359 Aufrufe
    Niemand hat geantwortet
  • Redis oder MongoDB?

    Verschoben Redis
    1
    0 Stimmen
    1 Beiträge
    461 Aufrufe
    Niemand hat geantwortet