Manually Migrating to new HA instance, is it possible?

Hello all! I am trying to migrate my HA from one supervised instance to another. In this case, I have a RasPi 4 with a 64gb USB SSD to 5th gen Intel NUC. Much of the documentation and many of the forum posts I’ve come across recommends just using the backup/restore features to migrate to a new server, but it hasn’t worked for me.

My disk space is 22gb, and my full backup is ~350 mb. I have the following add-ons installed:

  • Advanced SSH & Web Terminal
  • ESPHome
  • File Editor
  • HA Google Drive Backup
  • Log Viewer
  • Mosquitto Broker
  • Network UPS Tools
  • Zigbee2MQTT
  • HACS

I’ve done a regular backup, imaged a fresh HA to the NUC, and uploaded the backup.tar to it. After checking the next morning (12 hours), the web server at port 8123 is down, but the supervisor port is up and lists everything as healthy. Checking the supervisor logs in the TTY shows some progress. Mostly I get:

Full restore start
stopped docker events monitor
'application' stopping 0 add-ons
stopping home assistant appllication
'services' stopping 0 add-ons
'system' stopping 0 add-ons
'initialize' stopping 0 add-ons
restore starting stage docker_config
restore starting stage folders
folder share done
folder addons/local done
folder ssl done
folder media done
restore starting stage home_assistant.

Each time, I am stuck with no UI, and when I do ‘ha host reboot’ it just drops me back at the setup screen.

I have tried the following:

  • Downloading a backup from old HA, restoring to new at setup screen (three times)
  • Restoring a ha backup from the TTY (my uploaded backups do appear in the list)
  • Using the TTY on my raspi4 instance to stop HA core, then backup, then restart HA core, and using that backup to restore on the NUC with
  • creating a dummy HA instance on the NUC, then restoring my raspi instance over that.

So my question is, is there anything else I can try to get a backup/restore to work properly? Or is there any way for me to manually copy my data over to manually restore the state of the RasPi4 instance onto the NUC?

Thanks!

I have the same issue, attempting to restore from a year old setup on a VM to Home Assistant Yellow.

Did you manage to resolve the issue?
My backup is slightly larger, sitting at 400mb, with an almost identical list of add-ons installed.

Supervisor Logs
23-11-18 20:55:31 INFO (MainThread) [supervisor.core] Supervisor is up and running
23-11-18 20:55:31 INFO (MainThread) [supervisor.host.info] Updating local host information
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.check] Starting system checks with state running
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for free_space/system
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for multiple_data_disks/system
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for pwned/addon
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for docker_config/system
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for ipv4_connection_problem/system
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for security/core
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for dns_server_ipv6_error/dns_server
23-11-18 20:55:31 INFO (MainThread) [supervisor.host.services] Updating service information
23-11-18 20:55:31 INFO (MainThread) [supervisor.host.network] Updating local network information
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for trust/supervisor
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for no_current_backup/system
23-11-18 20:55:31 INFO (MainThread) [supervisor.resolution.checks.base] Run check for dns_server_failed/dns_server
23-11-18 20:55:32 INFO (MainThread) [supervisor.resolution.check] System checks complete
23-11-18 20:55:32 INFO (MainThread) [supervisor.resolution.evaluate] Starting system evaluation with state running
23-11-18 20:55:32 INFO (MainThread) [supervisor.host.sound] Updating PulseAudio information
23-11-18 20:55:32 INFO (MainThread) [supervisor.host.manager] Host information reload completed
23-11-18 20:55:32 INFO (MainThread) [supervisor.resolution.evaluate] System evaluation complete
23-11-18 20:55:32 INFO (MainThread) [supervisor.resolution.fixup] Starting system autofix at state running
23-11-18 20:55:32 INFO (MainThread) [supervisor.resolution.fixup] System autofix complete
23-11-18 20:56:36 INFO (MainThread) [supervisor.backups.manager] Full-Restore ab27a95e start
23-11-18 20:56:36 INFO (MainThread) [supervisor.docker.monitor] Stopped docker events monitor
23-11-18 20:56:36 INFO (MainThread) [supervisor.addons] Phase 'application' stopping 0 add-ons
23-11-18 20:56:36 INFO (SyncWorker_2) [supervisor.docker.manager] Stopping homeassistant application
23-11-18 20:56:43 INFO (MainThread) [supervisor.addons] Phase 'services' stopping 0 add-ons
23-11-18 20:56:43 INFO (MainThread) [supervisor.addons] Phase 'system' stopping 0 add-ons
23-11-18 20:56:43 INFO (MainThread) [supervisor.addons] Phase 'initialize' stopping 0 add-ons
23-11-18 20:56:48 INFO (MainThread) [supervisor.backups.manager] Restore ab27a95e starting stage docker_config
23-11-18 20:56:48 INFO (MainThread) [supervisor.backups.manager] Restore ab27a95e starting stage folders
23-11-18 20:56:48 INFO (SyncWorker_4) [supervisor.backups.backup] Restore folder share
23-11-18 20:56:48 INFO (SyncWorker_4) [supervisor.backups.backup] Restore folder share done
23-11-18 20:56:48 INFO (SyncWorker_3) [supervisor.backups.backup] Restore folder addons/local
23-11-18 20:56:48 INFO (SyncWorker_3) [supervisor.backups.backup] Restore folder addons/local done
23-11-18 20:56:48 INFO (SyncWorker_2) [supervisor.backups.backup] Restore folder ssl
23-11-18 21:01:51 INFO (SyncWorker_2) [supervisor.backups.backup] Restore folder ssl done
23-11-18 21:01:51 INFO (SyncWorker_5) [supervisor.backups.backup] Restore folder media
23-11-18 21:01:51 INFO (SyncWorker_5) [supervisor.backups.backup] Restore folder media done
23-11-18 21:01:51 INFO (MainThread) [supervisor.backups.manager] Restore ab27a95e starting stage home_assistant
# 


Unrelated note:

My thoughts about this entire restoring debacle:

  1. It’s unhelpful that there is no status or feedback

  2. It would be great if the supervisor status page (homeassistant.local:4358) could show if supervisor was busy with restoring an update, since 8123 would be inaccessible due to the update.

  3. It will be great to know if restoration has stalled.

  4. I’m very worried about facing this issue one day if my hardware actually fails, and I try to restore a backup during a disaster recovery session.

If worse comes to worse, you can just save some critical files such as automations.yaml etc. and then rebuilding everything from scratch. Then you can justr copy and paste the automations a few at a time once you have updated the yaml code with the new entity Id/s / object names… you might end up with a cleaner more reliable HA that doesn’t have some old broken thikngs hidden that you had restored - either way a hassle!

Having migrated HA instances myself, the approach I took was to build a new, clean instance and migrate to it over time.

Was this painful? Not really. Was it time consuming? Absolutely. Was it worth it? Undoubtedly.

Why?

Because over time, we add integrations or try out add-ons, then don’t like them and remove them. Features change. Code breaks.

Starting over fresh and only configuring the things you know you need cleans the system of the “digital detritus” that would remain by restoring every single bit of everything from one installation to another.

YMMV. If you choose to continue on the path you’re on, I do hope that you find a solution!

I eventually let it run overnight and it finished the restore overnight.

I used top on the cli and sorted the processes by CPU time, python was always saturating only 1 core on the CM4 (Home Assistant Yellow), which indicated it was doing something.


Unrelated Rant Part 2:

The experience still isn’t polished enough in my opinion. Agreed I can probably rebuild from scratch, easily, as per the comments from others. However in my opinion, the backup feature is there for a reason and I want my entity history fully intact as well. The backup is 400MB, and I have a gigabit downlink. The restore should not take more than an hour under these situations.