Ich kann mich an wenige Webdienste erinnern, die so verheißungsvoll gestartet sind und am Ende so enttäuschend waren, wie IFTTT1 (If This Than That). Die Idee war brilliant. Mit einfachsten "Wenn" => "Dann" Verknüpfungen kann man unterschiedlichste Geräte und Dienste miteinander Verknüpfen. Und das funktioniert auch heute noch wunderbar. Allerdings ist die Webseite irgendwie in die Jahre gekommen und der ganze Workflow fühlt sich an vielen Stellen etwas hakelig an. Und mit den Jahren sind auch irgendwie die Ideen gewachsen, was man mit einem solchen Tool alles machen könnte. Leider ist IFTTT da aber nie so richtig mitgewachsen. Ja, es sind etwas komplexere Möglichkeiten der Verknüpfung hinzugekommen, aber das konnte dennoch nicht so wirklich mit den Ideen mithalten. Die Anzahl der verfügbaren Hardware- und Webserviceintegration ist zwar über die Jahre immer weiter gewachsen, aber vieles davon gibt es nur auf dem US-Markt und/oder orientiert sich sehr an kommerziellen Produkten.
Das kostenlose Paket wurde mit der Zeit immer weiter eingedampft, bis man irgendwann kaum noch etwas sinnvolles damit tun konnte, dafür wurden die Preise für die kostenpflichtigen Pakete erhöht. Und auch wenn diese unterm Strich noch in Ordnung sind, habe ich mich irgendwann nach Alternativen umgeschaut und bin auf Huginn
2 gestoßen.
Nachdem wir die Datenerfassung mit Prometheus bewerkstelligt haben, ist es nun natürlich sinnvoll auch eine Datenvisualisierung einzurichten. Hier kommt Grafana1 ins Spiel.
Prometheus1 sammelt Metriken von verschiedenen Quellen und bietet leistungsstarke Funktionen zur Analyse und Visualisierung dieser Metriken. Prometheus ermöglicht das Erkennen von Anomalien, das Überwachen von Service-Level-Agreements (SLAs) und das Generieren von Warnungen bei Abweichungen. Es bietet eine flexible Abfragesprache namens PromQL, zur Abfrage von Metriken und zur Durchführung komplexer Auswertungen. Es ist in der Cloud-Native- und DevOps-Welt weit verbreitet und wird häufig mit anderen Tools wie Grafana zur Visualisierung verwendet.
Es kommt leider immer mal wieder vor, dass ein automatisierter Prozess auf ein Problem stößt und daher seine Verarbeitung abbricht. Das ist meistens kein Problem, man schaut nach woran es gelegen hat, behebt das Problem und führt den Prozess erneut aus. In manchen Fällen nimmt ein Script aber bestimmte Vorarbeiten vor, die ein erneutes Ausführen behindern, z.B. könnte ein Script Snapshots erzeugen und Mounten. Versucht man dies ein zweites Mal, wird dies zu Fehlermeldungen führen. Nutzt ein Script dann z.B. set -e
1 um bei Fehlern die weitere Ausführung abzubrechen, haben wir ein Problem und müssen die abschließenden Arbeiten des Scripts einmal manuell ausführen. Das kann realtiv komplex werden, vor allem weil man solche - eigentlich automatisierten - Vorgänge ja meist nicht mehr so wirklich auf dem Schirm hat.
Immer wieder gibt es Prozesse die sehr lange dauern und die auf keinen Fall doppelt gestartet werden sollten. Vor vielen Jahren bin ich über eine Lösung für Lockfiles in Bash-Scripten gestolpert, die ich seitdem in fast jedem Script mit potenziell langer Laufzeit nutze.
Das Backuptool borg
1 habe ich hier ein wenig beschrieben. Nun soll es darum gehen mittels borg saubere Backups zu erstellen und auch sicherzustellen, diese jederzeit wiederherstellen zu können.
Backups sind ein leidiges aber eben auch wichtiges Thema. Zum Glück gibt es heutzutage wirklich tolle Tools um auch umfangreiche Backup zu erzeugen. Wenn dabei dann noch die anfallenden Datenmengen klein genug werden, dass selbst eine normale DSL-Leitung ausreicht um das Backup zu externen Speichern zu übertragen, ist man Nahe dran am heiligen Backupgral.
Lange Zeit habe ich nach Tools gesucht, die ein Backup in kurzer Zeit, mit geringen Bandbreitenbedarf, Verschlüsselung, einwandfreier und vollständiger Überprüfbarkeit und einfacher Wiederherstellung gewährleisten.
LVM (Logical Volume Manager) erlaubt im Grunde die flexiblere Verwaltung von "Partitionen" einer Festplatte. Anstatt die Partitionen beim Einrichten eines Datenträgers (z.B. mittels fdisk
) einmal - mehr oder weniger - fix festzulegen, erzeugt man mit LVM sog. Volume Groups
(VG). Eine solche Volume Group
kann mehrere physikalische Datenträger umfassen1. Innerhalb der Volume Groups
werden dann die eigentlichen Logical Volumes
(LV) erzeugt. Diese können dann wie physikalische Datenträger behandelt und mit beliebigen Dateisystemen versehen werden.
Ein weiteres Feature von LVM sind sog. Snapshots
. Ein Snapshot
friert den Zustand des Dateisystems zum Zeitpunkt der Erstellung des Snapshots quasi ein. Die Daten im Snapshot verändern sich nicht mehr. Technisch funktioniert dies über das sog. Copy on write
2. Dies ist sehr hilfreich um konsistente Backups erstellen zu können.
Verschiedene Betriebssysteme haben jeweils ihre eigenen Stärken und Schwächen. Ich nutze daher gern Multibootsysteme, auf denen mehrere Betriebssysteme (hoffentlich) friedlich koexistieren. In der Vergangenheit waren Multibootsetups oft etwas hakelig, da man sich mit den Konfigurationsdateien der jeweiligen Bootloader (z.B. GRUB1) beschäftigen musste, die mitunter sehr kryptisch sind.
Hier schaffen EFI-Bootmanager wie rEFInd2 Abhilfe, diese erkennen die anderen Systeme automatisch und bieten zudem eine optische ansprechende Oberfläche. Zudem kann rEFInd unabhängig von den jeweiligen Betriebssystemen installiert werden, wenn man ein System nicht mehr benötigen sollte, können dessen Partition(en) einfach gelöscht werden und der Eintrag in rEFInd verschwindet automatisch.
Immer wieder stolpere ich über interessante Webseiten, habe aber in dem Moment nicht immer die Zeit, mich intersiver damit zu befassen. Lange Zeit habe ich mir dann einfach einen Bookmark im Browser gesetzt und ihn dann meist nie wieder aufgerufen. Zum einen weil die Bookmarks zwischen verschiedenen Geräten nicht synchronisiert wurden, zum andren weil ich oft gar nicht mehr wusste, was ich da eigentlich gebookmarked hatte.
Für das Sync-Problem gibt es mittlerweile natürlich jede Menge Tools und Services. Aber keiner davon hat mir bisher so wirklich gut gefallen. Entweder waren es Datenkraken und/oder total überladene Produkte.
Irgendwann bin ich dann über Wallabag1 gestolpert.