So trennen Sie App-Daten, Cache und Backups von Home Assistant

Eva Wong ist die technische Redakteurin und begeisterte Tüftlerin bei ZimaSpace. Als lebenslanger Geek mit einer Leidenschaft für Homelabs und Open-Source-Softwarehat sie sich darauf spezialisiert, komplexe technische Konzepte in verständliche, praxisnahe Anleitungenzu übersetzen. Eva ist überzeugt, dass Self-Hosting Spaß machen sollte und nicht einschüchternd sein darf. Mit ihren Tutorials hilft sie der Community dabei, Hardware-Setups zu durchschauen, vom Bau des ersten NAS bis zum sicheren Umgang mit Docker-Containern.

Trennen Sie Home-Assistant-Anwendungsdaten, Cache und Backups, indem Sie zunächst festlegen, was einen Ausfall überstehen muss, was automatisch wiederhergestellt werden kann und was außerhalb des Home-Assistant-Hosts liegen muss. Dauerhafte Konfiguration und Datenbankstatus benötigen stabilen Speicher und ein Backup; entbehrliche Cache- oder temporäre Dateien sollten nicht denselben Aufbewahrungsregeln unterliegen; Backups dürfen nicht vom Datenträger abhängen, für dessen Wiederherstellung sie vorgesehen sind.

Die sicherste Speicheraufteilung orientiert sich an der Funktion und nicht am Verzeichnisnamen. Verschieben Sie ein Verzeichnis nicht allein deshalb auf einen „Cache-Speicher“, weil es schnell wächst. Prüfen Sie, ob Home Assistant oder ein ergänzender Dienst diese Daten für den Verlauf, die Identität, die Kopplung, Zugangsdaten oder die Wiederherstellung benötigt, bevor Sie sie als entbehrlich behandeln.

Daten als maßgeblich, wiederherstellbar oder Wiederherstellungskopie einordnen

Zu den maßgeblichen Anwendungsdaten gehören die Home-Assistant-Konfiguration, Geheimnisse, der Integrationsstatus, Automatisierungsdefinitionen sowie die Datenbank oder andere Zustandsdaten, die Sie erhalten möchten. Wiederherstellbare Daten umfassen heruntergeladene Images, temporäre Dateien, Paket-Caches, Transkodierungen und Indizes, die ein Dienst neu erstellen kann, ohne die Haushaltskonfiguration zu verlieren. Wiederherstellungskopien sind Backups und Exporte, die nach einem Ausfall zur Wiederherstellung des maßgeblichen Zustands dienen.

Diese Einordnung sollte für jeden Dienst einzeln erfolgen. Home Assistant, MQTT, eine Datenbank, ein Reverse-Proxy und Zigbee2MQTT können jeweils unterschiedliche dauerhafte Daten enthalten. Eine Verwaltungsoberfläche kann sich die Stack-Definition merken, ohne die eigentlichen Dienstdaten zu enthalten; ein Artikel darüber, warum Backups der Containerverwaltung die Zustandsdaten der Dienste möglicherweise nicht enthalten, zeigt, warum „Ich habe Docker gesichert“ viel weniger bedeuten kann als erwartet.

Home-Assistant-Konfiguration und aktive Datenbank auf stabilem Speicher belassen

Bei einer Container-Bereitstellung muss der Home-Assistant-Konfigurationspfad unabhängig vom Container-Image dauerhaft gespeichert werden. Bleibt die Recorder-Datenbank in diesem Konfigurationsbaum, handelt es sich um aktiven Anwendungsstatus und nicht um einen Cache. Speichern Sie diesen Status auf einer zuverlässigen SSD oder einem anderen Speicher mit geringer Latenz und ausreichend freiem Platz für den regulären Datenbankbetrieb und Wiederherstellungsvorgänge.

Die Recorder-Aktivität kann kontinuierlich viele kleine Schreibvorgänge verursachen, besonders wenn sich zahlreiche Entitäten häufig ändern. Eine ausführliche Anleitung aus der Home-Assistant-Community dazu, wie sich die Aufbewahrung durch den Recorder auf das Datenbankwachstum auswirkt, ist hilfreich, weil sie sich darauf konzentriert, unnötige Verlaufsdaten zu reduzieren, statt den Datenbankbetrieb zu verschleiern, indem der gesamte Konfigurationsbaum auf temporären Speicher verschoben wird.

Nur nachweislich entbehrliche Cache- und temporäre Daten verschieben

Cache und temporäre Daten können auf einem separaten schnellen Scratch-Laufwerk, einem begrenzten speicherbasierten Dateisystem oder in einem eigenen Verzeichnis mit Bereinigungsregeln liegen – aber nur, wenn ihr Verlust unproblematisch ist. Starten Sie den betreffenden Dienst neu, nachdem Sie eine Testkopie geleert haben, und prüfen Sie, ob er alles Benötigte neu erstellt. Verliert der Dienst dabei Verknüpfungen, den Verlauf, Benutzer, Zugangsdaten oder die Konfiguration, waren die Daten nicht entbehrlich.

Die Trennung häufig veränderter Daten kann Schreibvorgänge reduzieren und Backups verkleinern, sollte aber niemals erforderliche Dateien unter einem Mount verbergen oder eine versteckte Abhängigkeit vom RAM schaffen. Der ZimaSpace-Artikel Home-Assistant-Cache und temporären Speicher trennen bietet eine gezielte Anleitung, um wiederherstellbare Daten zu ermitteln, bevor Mounts geändert werden.

Lege Backups in einer anderen Fehlerdomäne ab

Ein Backup, das neben der aktiven Konfiguration gespeichert ist, schützt vor fehlerhaften Änderungen, aber nicht vor einem SSD-Ausfall, Diebstahl des Hosts, Dateisystembeschädigung oder einem defekten Speichercontroller. Kopiere Home-Assistant-Backups auf ein NAS, einen anderen Server, einen Wechseldatenträger oder an einen externen Standort – je nachdem, welchen Ausfall du überstehen möchtest. Bewahre den Wiederherstellungsschlüssel oder die Zugangsdaten an einem Ort auf, der auch dann zugänglich bleibt, wenn Home Assistant selbst nicht verfügbar ist.

Backups müssen außerdem intern konsistent sein. Volume-Archive sind nützlich, aber Dienste mit dauerhaftem Status benötigen möglicherweise einen koordinierten Dump, Snapshot oder eine Kopie bei angehaltenem Dienst. Ein Muster zum Sichern und Wiederherstellen dauerhafter Volumes erläutert das Portabilitätsproblem, während ein Wiederherstellungstest, der die Verwendbarkeit des Backups nachweist verdeutlicht, dass ein Backup-Auftrag erst dann als erwiesen gilt, wenn sich daraus ein brauchbarer Zustand wiederherstellen lässt.

Teste das Layout mit Lösch-, Neustart- und Wiederherstellungsübungen

Teste nach der Trennung der Pfade jede Rolle gemäß ihrer Zusicherung. Leere einen entbehrlichen Cache und überprüfe, ob er neu erstellt wird. Erstelle den Home-Assistant-Container neu und bestätige, dass die dauerhafte Konfiguration erhalten bleibt. Starte den Host neu und überprüfe, ob die Mounts verfügbar sind, bevor abhängige Dienste starten. Stelle ein aktuelles Backup an einem temporären Ziel wieder her und überprüfe Benutzer, Automatisierungen, Integrationen sowie repräsentative Verlaufsdaten oder den Status begleitender Dienste.

Dokumentiere dann Zuständigkeiten und Berechtigungen. Ein Pfad, der auf dem Datenträger perfekt getrennt ist, kann nach einer Migration trotzdem fehlschlagen, wenn die neue Container-UID/GID ihn nicht lesen kann. Halte Mount-Punkte, Dateisystemeigentümer, Einbeziehung in Backups, Aufbewahrungsdauer und den Dienst fest, der jedes Verzeichnis löschen darf.

Datenrolle Typischer Speicher Wiederherstellungsregel
Home-Assistant-Konfiguration/Datenbank Stabiler SSD-/App-Daten-Pool Dauerhaft und gesichert
Entbehrlicher Cache/temporärer Speicher Temporärer SSD-Speicher oder begrenzter temporärer Speicher Muss sicher wiederhergestellt werden können
Backups Getrenntes Ziel für Host/Medien/externen Standort Wiederherstellung getestet
Große Archive Kapazitätsorientierter Speicher Geschützt entsprechend dem Wert

Die Trennung ist erfolgreich, wenn das Löschen des Caches Home Assistant nicht zerstören kann, das Neuerstellen von Containern den App-Status nicht löscht und der Verlust des primären Geräts mit App-Daten nicht die einzige Wiederherstellungskopie vernichtet. Die Speicherrollen sollten das Fehlerverhalten deutlich machen, bevor etwas ausfällt.

NAS- und Servereinrichtung

Mehr zum Lesen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.