Restoredrill - Proves your PostgreSQL backups restore
Show HN: Restoredrill – proves your Postgres backups restore
Restoredrill ist ein Kommandozeilen-Tool, das automatisch beweist, dass Ihre PostgreSQL-Backups tatsächlich wiederherstellbar sind. Es lädt das neueste Backup, stellt es in einem Wegwerf-Container wieder her, führt von Ihnen definierte Prüfungen durch und erstellt einen JSON-Bericht mit Wiederherstellungszeit. Das Tool ist CI-freundlich, liefert Audit-taugliche Nachweise für SOC 2, ISO 27001 und AWS FTR und sendet Warnungen an Slack, Webhooks oder Prometheus. Es erkennt stille Fehler wie veraltete Backups oder defekte Benachrichtigungen und stellt sicher, dass Ihre Wiederherstellungsstrategie wirklich funktioniert.
Ungeprüfte Backups sind keine Backups. Restoredrill beweist, dass Ihre PostgreSQL-Backups tatsächlich wiederhergestellt werden können, bevor Sie es auf die harte Tour herausfinden.
- sebmellen
> Es gibt andere Tools in diesem Bereich. Es wäre angebracht, sie klar zu benennen, anstatt so zu tun, als gäbe es sie nicht.
Warum schreiben LLMs gerne so? Warum musstest du die Konkurrenz „klar" benennen, anstatt sie „extravagant" zu benennen?
Das ist eine coole Idee, aber die README ist absurd nicht auf den Punkt gebracht.
- lbrito
Das ist eine großartige Idee und etwas, womit ich in der Vergangenheit konfrontiert war und das ich manuell implementieren musste.
Der häufigste Fall für mich war: Ich implementiere Backups, erledigt durch einen täglichen Cron-Job, der pg_dump aufruft. Es funktionierte und ich machte weiter, bis ich eines Tages ein Backup wiederherstellen musste und die Backups nicht funktionierten. Typischerweise schlug irgendwann der Befehl zum Löschen temporärer Backup-Dateien auf der VM fehl, die Festplatte füllte sich und die neuen Backups wurden mitten im Prozess abgeschnitten.
psql ist ziemlich schlecht darin, dies zu erkennen, was ein sehr häufiges Szenario sein dürfte. Statt einer Header-Prüfung, die zu „Beschädigtes Backup, Abbruch" oder so führt, führt es einfach die SQL-Befehle aus, bis es die letzte Zeile erreicht, die mitten im Satz abgeschnitten und daher ungültiges SQL ist.
Wie auch immer, es dauerte eine Weile, das herauszufinden, aber später habe ich im Grunde das gemacht, was dein Tool macht, wahrscheinlich einfacher: ein weiterer täglicher Cron-Job, der die Datei herunterlädt und prüft, ob sie mit der korrekten pg_dump-Erfolgssignatur endet. Es hat bisher funktioniert.
- csydas
Ich habe deinen inzwischen gelöschten Kommentar gesehen, in dem du sagtest, dass niemand, den du interviewt hast, eine Antwort hatte ...
Es überrascht mich einfach, dass DevOps-Leute nicht in einer Organisation sind, die Backup-Software hat, denn diese Art von Tests ist Standardausstattung der meisten Backup-Software, und sie lösen sogar das Platz- und Isolationsproblem mit verschiedenen Instant-Restore-/Veröffentlichungsfunktionen, bei denen Daten aus dem Backup direkt auf einem Staging-Server mit installiertem Postgres oder was auch immer in einem isolierten Bereich gemountet werden.
Ich will die Idee nicht schlechtreden – du hast recht, die meisten Leute testen ihre Backups nicht, aber es ist ein bisschen seltsam, dass niemand, mit dem du gesprochen hast, eine der gängigsten Backup-Softwarelösungen verwendet hat.
Ich bin definitiv für kostenlose Lösungen, da das Backup-Software-Feld wie viele Enterprise-Tech-Bereiche schrecklich ist, aber die Workflows existieren durchaus.