hass.io Automatisch hass.io Snapshots in 2 Schritten erstellen

Wie ich bereits in einem vorherigen Beitrag geschrieben habe, ist es sehr wichtig regelmäßig Backups von der eigenen hass.io-Instanz zu erstellen (hass.io Snapshot). Wie bei eigentlich allen wichtigen Dingen im Leben, ist es im schlimmsten Fall der Fälle nahezu unbezahlbar ein aktuelles Backup zu haben. Sollte aus irgendeinem Grund das eigene Smarthome defekt sein und eine Reparatur nicht möglich sein, ist ein aktuelles Backup (Wikipedia: Backup/Datensicherung) die einzige Rettung. Wer jedoch kein Backup hat, wird nicht umher kommen, das gesamte System neu aufzusetzen.

Aus einem ganz aktuellen Erlebnis kann ich bestätigen, dass ein Backup einem unzählige Stunden ersparen kann, die anderenfalls – ohne Backup – notwendig wären, um das Smarthome wieder von Null auf hochzuziehen. Durch eine fehlerhafte Konfiguration und einen wirklich unbedachten Neustart des Raspberry Pi, hatte ich zuletzt mein hass.io unbrauchbar gemacht. Der Raspberry Pi bootet nicht mehr vollständig, so dass ich keinen Zugriff auf das Webinterface, meine Ordner-Freigaben oder SSH hatte.

Mein Raspberry Pi mit hass.io darauf installiert war von der einen Minute zur anderen unbrauchbar. Mein mühevoll und in unzähligen Stunden aufgesetztes Smarthome war somit alles andere als smart. Es war mir nicht möglich auf die zuvor angepasste Datei vonfiguration.yaml zuzugreifen um den Fehler zu korrigieren, so dass mir relativ schnell klar wurde, dass es nur eine wirkliche Option gibt: ein Backup muss aufgespielt werden!

Natürlich bedeutet ein Backup grundsätzlich, dass alle seit Erstellung des Backups vorgenommenen Änderungen verloren gehen. Jedoch bedeutet dies, sofern Backups regelmäßig erstellt werden, in der Regel nur einen geringen Verlust. Insbesondere, wenn die Alternative ein kompletter Neuaufbau von hass.io mit allen integrierten Komponenten, Scripten und Automatisierungen ist!

Da ich von mir erstellte Backups regelmäßig automatisch per FTP auf ein Netzwerklaufwerk kopiere, hatte ich trotz des Totalausfalls meiner hass.io-Installation Zugriff auf eines dieser Backups. Das Backup konnte ich dann nutzen, um eine neue hass.io-Instanz aufzusetzen um dann das gewünschte Backup wiederherzustellen. Diese Aktion hat mich (inkl. der Einrichtung der neuen hass.io-Instanz) in Summe keine zwei Stunden gekostet, wobei ich hiervon die meiste Zeit eigentlich nichts tun sondern lediglich auf hass.io warten musste.

hass.io Snapshot-Backup aufspielen

Dieses vermeintliche Horror-Szenario, mit letztendlich gutem Ausgang und relativ wenig verloren gegangenen Einstellungen/Anpassungen hat mich jedoch veranlasst meine Backup-Prozesse zu hinterfragen. Bislang habe ich manuell Snapshots erstellt und diese automatisch alle paar Tage per FTP von der SD-Karte des Raspberry Pi auf ein lokales Laufwerk kopiert. Ich habe versucht nach jeder größeren Anpassung daran zu denken ein manuelles Backup zu erstellen. Natürlich habe ich dies aber auch immer wieder mal vergessen.

Solange das System (wie in meinem Fall) nicht abraucht, stellt ein fehlendes aktuelles Backup kein Problem dar. Jedoch verdeutlichte mir mein Backup-Erfahrung, dass ich mich bei den Backups meiner hass.io-Installation zukünftig weniger auf meine eigene Disziplin verlassen will! 🙂

Genauso, wie die Snapshots automatisch per FTP auf das lokale Laufwerk gesichert werden, sollen zukünftig auch die Snapshots selbst in regelmäßigen Abständen automatisch erstellt werden, so dass ich immer ein aktuelles Backup habe.

hass.io Snapshot

Zum Glück bietet hass.io hierfür eine Funktion, die das automatische Erstellen von Snapshots ermöglicht und sehr einfach macht. Warum diese Funktion nicht prominent kommuniziert wird verstehe ich leider nicht – aber deswegen erzähle ich hier davon:

An Board bietet hass.io den Service hassio.snapshot_full mit dem ein kompletter Snapshot erstell wird. Kombiniert man diesen Service mit einer Mini-Automation, erstellt einem hass.io automatisch in den gewünschten Abständen Backups/Snapshots. Hier meine Beispiel-Automation, mit der ich neuerdings jeden Donnerstag und Sonntag um 03:00 ein komplettes Backup erstelle:

- alias: '[System] - Make Hassio backup'
  trigger:
    - platform: time
      at: '03:00:00'
  condition:
    - condition: time
      weekday:
        - sun
        - thu
  action:
    - service: hassio.snapshot_full
      data_template:
        name: Backup {{ now().strftime('%Y-%m-%d') }

 

Dieses Backup ist identisch mit den manuell erstellen Snapshots also somit eine ideal Grundlage für das eigene Backup-Konzept. Die so regelmäßig und automatisch erstellen Backups werden jeden Donnerstag und Sonntag um 04:00 Uhr per FTP auf ein lokales Laufwerk gesichert, so dass ich auch ohne hass.io in (funktionalem) Betrieb auf die Backups zugreifen kann.

Solltest du den Snapshot-Service von hass.io zuvor auch noch nicht gekannt haben, empfehle ich dir, sofort eine vergleichbare Backup-Automation aufzusetzen, um im schlimmsten Fall der Fälle kein Fiasko zu erleben!

Dieser Beitrag ist Teil einer kleinen Beitrags-Serie rund um den hass.io Home Assistant.

AngebotBestseller Nr. 1
Cololight LED Modul System, 16 Mio Farben und Effekte, Wifi Smart Home...*
  • SMART HOME - RGB LED Lichtsystem mit erweiterbaren Modulen zum Selbstgestalten. Jetzt spielend leicht per Smartphone-App zum eigenen Lichtdesigner werden und für ein angenehmes Ambiente sorgen.
  • VIELSEITIG EINSETZBAR - Egal ob als entspannendes Stimmungslicht im Wohnzimmer, aufregende Party-Beleuchtung an der Bar oder als bunte Gaming-Beleuchtung neben dem PC - die abwechslungsreiche...
AngebotBestseller Nr. 2
Logitech Harmony Ultimate Hub All-in-one-Fernbedienung, schwarz*
  • Funktioniert mit Alexa zur einfachen Steuerung Ihrer Home-Entertainment-Geräte mit Ihrer Stimme
  • Harmony-App für iOS-/Android-Smartphones und Tablets: Einfache Wisch und Tippgesten zur umfassenden Steuerung, inklusive Auswahl von Kanälen, Filmen und 50 individuell anpassbaren Lieblingssendern

*= Preis inkl. MwSt., ggf. zzgl. Versandkosten. Letzte Aktualisierung vor 60 Minuten / Affiliate Links / Bilder von der Amazon Product Advertising API

Leave a Reply

Die folgenden im Rahmen der DSGVO notwendigen Bedingungen müssen gelesen und akzeptiert werden:
Durch Abschicken des Formulares wird dein Name, E-Mail-Adresse und eingegebene Text in der Datenbank gespeichert. Für weitere Informationen wirf bitte einen Blick in die Datenschutzerklärung.