Zum Inhalt springen
A—56

canturan.dev

Ein schlankes Monitoring, das Windows- und Linux-Server an verschiedenen Standorten in einem Dashboard zeigt

Branche
Personal Brand
Land
Türkei
Kategorie
Individualsoftware
Leistungen
Individualsoftware
Technologie
Go, React 19, TypeScript, Vite, Recharts, SQLite, Tailscale, Docker, Apache Guacamole, Web Push
Statuskarten von drei Demo-Servern im System-Watcher-Dashboard

01 /

Ausgangslage

Die Server, die wir betreuen, laufen in verschiedenen Städten, Rechenzentren und unter verschiedenen Betriebssystemen. Von einer vollen Festplatte, einem gestoppten Dienst oder einem Brute-Force-Versuch auf SSH wollten wir nicht erst erfahren, wenn das Problem schon groß ist. Deshalb haben wir System Watcher für unseren eigenen Betrieb entwickelt: Ein kleiner Go-Agent läuft auf jedem Server als Dienst und sammelt Messwerte, ein Hub ruft sie über das verschlüsselte private Netz von Tailscale ab, speichert sie in SQLite und zeigt sie in einer React-Oberfläche. Die Agenten sind nie aus dem Internet erreichbar. Als internes Werkzeug ist es nicht öffentlich und befindet sich noch in Entwicklung; die Screenshots entstanden lokal mit drei Demo-Servern in Docker-Containern.

Screens

Aktuelle Screenshots der Live-Website: die ganze Seite, Unterseiten und die Ansicht auf dem Smartphone.

canturan.dev — Bereiche und Unterseiten

Bereiche und Unterseiten

canturan.dev — Bereiche und Unterseiten
canturan.dev — Bereiche und Unterseiten
canturan.dev — Bereiche und Unterseiten
canturan.dev — Auf dem Smartphone

02 /

Vorgehen

Drei Entscheidungen, die das Projekt geprägt haben.

  1. 01

    Ein Agent ohne Internetzugang

    Standardmäßig lauscht der Agent nur auf seiner Tailscale-Adresse, seine schreibgeschützte API ist per Token gesichert. Der einzeilige Installationsbefehl ist nur einmal gültig: Er lädt den Agenten, prüft ihn per SHA-256, installiert ihn als Dienst und meldet den Server selbst beim Hub an.

  2. 02

    Daten, die Ausfälle überstehen

    Der Agent hält die Messwerte der letzten 24 Stunden im Speicher; Lücken, in denen der Hub offline war, werden nach dem Neustart aus diesem Puffer gefüllt. Rohdaten bleiben 7 Tage, Minutenwerte 90 Tage und Stundenwerte 2 Jahre gespeichert.

  3. 03

    Alarme ohne Lärm

    Die Standardschwellen liegen bei 80 % für Warnung und 90 % für kritisch und lassen sich je Server anpassen. Alarme können bestätigt und im Wartungsmodus stummgeschaltet werden; unbestätigte Alarme eskalieren stufenweise per Telegram, E-Mail, Webhook oder Push-Benachrichtigung aufs Telefon.

03 /

Was wir geliefert haben

  • Flotten-Dashboard mit CPU, RAM, Festplatte, Netzwerk und Laufzeit
  • Windows-Dienste, systemd-Units und ausstehende Updates
  • RDP/SSH-Sitzungen, fehlgeschlagene Anmeldungen und Brute-Force-Erkennung
  • SQL-Server-Backups, Docker-Container und Status der Coolify-Anwendungen
  • Prognose für volle Festplatten und Kapazitätsdiagramme
  • Prüfungen für HTTP, SSL-Zertifikat, Domain-Ablauf und Ping
  • TV-Modus für Wandbildschirme und Remote-Desktop im Browser

Technologie-Stack

  • Go
  • React 19
  • TypeScript
  • Vite
  • Recharts
  • SQLite
  • Tailscale
  • Docker
  • Apache Guacamole
  • Web Push

Code und Domain gehören vollständig unserem Kunden.

Nächstes Projekt

A—57

canturan.dev

Der Signalisierungsserver eines Fernwartungssystems, das nur mit Zustimmung des Nutzers steuert

Personal Brand · Türkei