A huge number of times I have been asked to restore data or systems over the last 30 years. Only to discover that no viable backup exists.
Homeassistant is a very useful tool so I wanted to offer some insight on my setup and how I back it up and build in redundancy.
After all; There is nothing worse in IT that for your baby to fail after weeks and weeks of work and hours tweaking. So I wanted to profer up how I do things and ask how do you ensure YOUR hard work is not lost when things go awry.
My network consists of the following;
A laptop - the main brain, (MB)
My main workstation - from where I control my world! (MWS).
Many nodecu’s
Some Wemos D1 mini’s
Many sonoff devices - slamphers, basics, touches, ch10/16 devices. Some with Tasmota some with esphome.
A rather funky 16 port GB switch (found it cheap and faulty and made it work again).
Three wifi access points capable of up to four ssid’s each (old ex corp equipment).
A home brew router running open source software and providing four different individual networks (note SSIDs) AKA (FW).
So with such disparate systems how best to manage the backup/disaster recovery?
I am a fanatic for the opensource world - by that I mean there are many, many people smarter that me. I try my best to contribute to each community as best I can. And while not rich enough to financially contribute to all those projects that offer great value. I do what I can. Remember ‘not free beer’ but ‘free to use!’
So I use hassio via docker running on (for arguments sake Ubuntu) Hassio and the minor configuration changes and updates are handled brilliantly by the use of snapshots but what of the other components? These are downloaded manually to my (MWS).
I have an independent MySQL server on the (MB) that caters for a number of applications outside of docker up to and including HA. For example Nextcloud, zoneminder, a wiki. to name but a few! To ensure that the data I create is backed up I use :- https://sourceforge.net/projects/automysqlbackup/ it takes the manual pain out of the whole process. and is included in my SpiderOakOne backup.
The SpidrOakOne account runs via cron on both the (MB) and (MWS) encrypting and moving the relevant data off site.
Here is the real nub :- I have a 2TB USB3 HDD and image the drives from both (MB) and (MWS) and (FW) for storage after any truly major change in the disk set up or OS upgrade using:- https://www.clonezilla.org/
It is stored in a fire safe (nope I am not kidding)
Any Tasmota device has its config backed up to my (MWS) and is then included in the SpiderOakOne backup.
Any esphome device is already included in the snapshots that I do/automate and is included in the SpiderOakOne backup.
The (FW) has its own automated config backup which is included in the SpiderOakOne backup.
Once a month I test the restore on an old workstation. Just to make sure I can!
Some of you may find it overkill but I have spent many hours developing and building my systems and would cry buckets if I had to start over from scratch. The most I should ever lose is a days work!
Of course these are just the basics I’ve listed. My security goes much deeper.
How do you deal with yours?