Testing restore in isolated environment

I’m trying to validate the backup/restore process ahead of migrating my HA config to a new instance (hyperV VM to Proxmox VM).

I’ve created a new HAOS VM (same version as my backup) in Proxmox on an isolated network that is not connected to the internet to avoid any issues with my current production HA instance. When I attempt to restore the backup that I brought over I get this error:

‘BackupManager.do_restore_full’ blocked from execution, no supervisor internet connection

Do I have to have an internet connection available to do a restore? I really would like to do a test run in an isolated environment before attempting to do this ‘for real’.

Tried to use CLI but while it seems to recognize the backup file when I list it out, says it’s not found when I try to restore it:

ok the syntax was not obvious but finally stumbled upon what format it wanted… same error as in the GUI

Can you try without network connection ?

You probably need a virtual (serial) console via the VMhost active, e.g.
virsh console haos

It is a workaround, but to see if there is a difference between internet, intranet, localhost, no-network-stack-active.

Thanks for the suggestion. I am using the Proxmox console of the HAOS VM. I just tried powered it down, disconnected the network, booted back up and got the same error.

Hmm, that is not good.

I know the backup file is a .tar that contains several other .tar.gz files, I once extracted the whole thing to see what I maybe could do with it independent of HA. The JSON files one can read, the database can be handled by sqlite3 CLI tool or browser.

But copying those files into the proper folder manually is likely going to ruin some metadata about backup. Maybe not fatal.

Anyhow, I can’t help you further with this. I just find it unacceptable that internet access is needed, or even just the network-stack, for a restore function. That ranks down how I think about HA. I hope someone can tell how this backup/restore works, more like where we should look for the scripts etc that do/execute this. I am comparing Aarch64 and x86_64 at the moment. For Aarch64, I stopped using HAOS, using HA Supervised now so that I have enough control of the VM/OS and can use my own filesystem (Btrfs). I know how to move that around and handle (incremental) filesystem based snapshots. That at least works without any networking (if I want).

1 Like

Two suggestions since you are running on a hypervisor:

1: Do backups of the whole machine on the hypervisor level.
2: If you do 1 you can configure a separate vlan with internet access and test your restores isolated to that vlan.

  1. I did try exporting/converting the hyper-v vhdx to proxmox but it didn’t work on my first effort.
  2. I thought about setting up a separate network with internet access but I’m worried the 2nd instance would try to connect to Nabu Casa and then mess up my account on the ‘live’ server.

Also for both scenrios I was looking at this being an ongoing process where I can occationally validate the backup/restore process to know that I can rely on it. I guess as a System Administrator by trade I’m just used to doing DR tests :smiley:

I agree backup validation is a good practice. I know in the next major version (13.0) Veeam is going to support Proxmox, you could look into that, there’s free community licensing available.

HUGE thumbs up from me :+1:

I also agree with @fleskefjes that a “snapshot” restore instead of a HA backup/restore is probably the way to go.

Finally, I think the only reason an internet connection is required during a HA restore is because the Supervisor wants the time from an NTP server. So, if you have the means to do it, it may be possible to create a VLAN with no internet connection and create a firewall rule to redirect the NTP requests to a local NTP server.

1 Like