Using Duplicati on as a migration tool

Good day,
I need some comments to understand if my idea is viable.
Environment description:

  • Nine Windows 2016 Server running Hyper-V with 96 VMs spread over them
  • Each server running Duplicati - 2.1.0.5_stable_2025-03-04
  • Want to backup the *.vhdx files only. VSS is working properly

duplicati settings:

  • –send-http-result-output-format=Json
    –snapshot-policy=Required
    –usn-policy=Required
    –blocksize=1mb
    –dblock-size=2GB
    –concurrency-max-threads=0

Backup will be done to a local SMB share on a separate local server. Due to limited backup schedule, we can only work 8 hours a day. The total size of all vhdx (96 of them) is around 5972MB.

Project purpose: To move local VMs to Hetzner bare metal servers and shutdown local aging DC.
Internet links: One at 350 Mbits/s (yes, three hundred and fifty)
Firewall: Fortinet
Idea:
Make local backup to SMB share. Replicate such share data to something like Backblaze bucket (while we setup Hetzner infra) and then restore Backblaze backups to Hetzner.

my questions:
Can I restore backups to a destination (hetzner) that never performed a backup? Should I export/import the config as stated here: Import and export backup configurations | Duplicati

Since I am backing up VMs that consist of windows 2016 servers (about 10 per node), is there a parameter that I can use to benefit deduplication because of the redundant data among the VMs?

Finally, I read in a post here: Backing up Hyper-V guests / vhdx - #7 by DCinME about a section in the UI that interfaces with hyper-v? where is that?

Thanks in advance for your comments.

Yes, you can restore a backup to a destination that has never performed one. You are on the right track. If you have a working Duplicati backup you can export the configuration from the one host and import it on another, and then perform a restore. The only wrinkle I can think of is that you will have to manually copy the database file for the backup job from the old location to the new. You do not strictly need to do this, but if you don’t then you would have to run the database re-creation process before you could use the imported backup job.

Even if you don’t have an exported copy of the job, you can still do a direct-from-storage restore onto a new host. I do this often as a form of disaster recovery test, to make sure that jobs can be restored even if everything but the destination is lost.

This would only be applicable if you back up multiple VMs in a single job. Duplicati only does deduplication of blocks within individual backup jobs. Definitely not over multiple hosts. There is still a benefit to this, especially if you have to do remote restores over somewhat slow links.

If you have Duplicati running on a host that has Hyper-V installed on it, you should see a section in the UI for it under the Sources tab for a backup job:

If you select a VM as a data source in the UI, Duplicati will attempt to back up all pertinent files, including the virtual machine definition files, disk images, and others. If you only want it to back up the .VHDX files, you would need to specific those manually.

1 Like

To elaborate a little further on what you have asked, I have done something fairly close to what you are attempting. I once had to do an emergency migration from a failing Hyper-V server to a backup server. The backup server already had copies of the VHDX files from the primary server, but they were older copies, and the backup server was at another site, and the two sites only had 10 Mbps upload links between them.

Just copying the VMs from one site to another would have taken a week with the upload speed I had available, so I restored the most recent Duplicati backup of the primary server to the backup over a VPN tunnel. Since most of the data was already on the backup server, Duplicati was able to minimize the amount of data I needed to push over the link, allowing me to have the backup server up and running by the start of business the next day.

I know there are more elegant ways to do what I did, but it was within the constraints of what the customer was willing/able to pay for in terms of redundancy.

thanks @DCinME for your prompt response.
this I like → “…This would only be applicable if you back up multiple VMs in a single job…”

So that can be a plan…I will some testing tonight (backup only to local disk) and check final space usage…

Thanks!!!