Azure Backup Instant File Recovery

backup hero img
This post will explain how and why Microsoft recently changed how we can restore individual or a collection of files from a backup, performed using either the MARS (Microsoft Azure Recovery Services) agent or the Azure for IaaS virtual machines solutions.


How Restores Were Done

The restore process in Azure Backup was very traditional. In the case of an on-premises installation of the MARS agent, you started a recovery, selected a volume, and then browsed a representation of the file system in a wizard with the intention of restoring a file or folder. After you completed the wizard, the restore job was done.
When working with Azure virtual machines, the process was very atomic; you could restore a virtual machine or not; there was no method for restoring a file from a virtual machine. Restoring a file was a very slow process:

  1. Restore the virtual machine – as another virtual machine, which incurs additional costs/complexity.
  2. Log into the virtual machine.
  3. Get the file(s)/folders that you desire.

Therefore, people often deploy backup agents inside of Azure virtual machines. Azure Backup for IaaS virtual machines can restore the entire virtual machine, but another solution (like the MARS agent) can restore individual files. This solution doubles backup complexity and costs.
With both above restore types, there is one glaring problem – is the file/folder the one you want or the version that you want? If you need to restore more files a few hours later, do you need to perform another recovery?

Instant File Recovery

Those of you using Azure Backup for Azure virtual machines might have noticed a clue to coming changes, which are currently rolling out through the Azure regions as I write this post.
Instant File Recovery completely changes how a restore is done for MARS agents and with Azure virtual machines. In the case of the MARS agent, the recovery wizard starts off the same – you select a recovery point to restore from, but then things change. Instead of restoring a file from Azure, the recovery point is mounted (using iSCSI); this means that your on-premises computer is mounting a recovery point in the recovery services vault storage in the cloud. The recovery point appears as a usable volume in File Manager. You can browse through the file structure, open files, and even stream media files. This means that you can open a file, verify that it is what you want, and then restore it. The restoration is very simple; you just copy the file from the mounted recovery point and paste it to wherever you want it (just as you do with Windows Previous Versions).

Browsing a mounted recovery point using Azure Backup Instant File Recovery [Image Credit: Microsoft]
Browsing a mounted recovery point using Azure Backup Instant File Recovery [Image Credit: Microsoft]
You will need the January 2017 (version 2.0.9062.0) or later of the MARS agent to use Instant File Recovery. Any previously created recovery points, backups, and recovery services vaults (Azure Portal) will support Instant File Recovery, but do note that Microsoft is still rolling this feature out to the Azure regions.
When you need to recover a file from an Azure virtual machine (Windows or Linux), you no longer need to restore an entire virtual machine, or double backup costs/complexity by deploying backup agents into the guest OS of your Azure virtual machines. Instant File Recovery allows you to mount the disks of the virtual machine as they were at the time of the desired recovery point from Azure Backup for IaaS virtual machines. This means that you only need to back up the entire virtual machine, and you can recover individual files without restoring the entire machine.
Restoring an individual file from an Azure virtual machine backup [Image Credit: Microsoft]
Restoring an individual file from an Azure virtual machine backup [Image Credit: Microsoft]
The mounted recovery point will remain in place:

  • Until you unmount it
  • For up to 12 hours for an Azure virtual machine restore, and up to 6 hours for a MARS agent restore

This means that you can keep a mounted recovery point open for quite a while, allowing you to check that files are valid, and you can quickly dip in and out to recover additional files from that recovery point without re-running recovery wizards.
Here’s a cool idea; you can even mount a database file for SQL Server or Oracle before you recover a database! One could possibly see how this could be used with databases, virtual machines, and even be extended with automation to verify backups are working.

Microsoft’s Pitch

The software and services giant now describes Azure Backup as Recovery-as-a-Service (RaaS); I guess that’s confirmation that recovering files is more important than backing them up! The company says that:

  • There is a unified method to recover files – if you don’t use System Center Data Protection Manager (DPM) and Microsoft Azure Backup Server (MABS), at this time.
  • File recovery is easier and quicker, especially for those of you working with Azure virtual machines.
  • The new RaaS approach means that you can verify files before you restore them and this should avoid repeated restores, which are time-consuming.
  • You can do complex recoveries very quickly, pulling files from various locations of a recovery point and copying them to any destination.

My Opinion

I have to say that Instant File Recovery is a great addition to Azure Backup, one that I hope makes it to DPM and MABS. I am excited to see how Instant File Recovery can be extended to improve test restores.