Azure Site Recovery Deployment Planner

As per the following Azure blog post, the Azure Site Recovery (ASR) Deployment Planner tool was released earlier this month, following previews earlier in the year. The tool aims to provide a friction-free way to assess your existing Hyper-V/VMware estates allowing you to understand the costs for compute, network, storage and licensing to protect your workloads to the cloud (including the difficult to understand ones, like initial replication costs..).

I’ve blogged before that I think the ASR solution is a great way to either provide secondary or even tertiary instances of your on-premises workloads in a secondary location with minimal effort and cost. Previously it has been fairly time consuming and manual to gather the information required to correctly estimate costings in Azure.

Let’s have a quick look at the tool from a Hyper-V perspective. The tool is command line based, and can be downloaded from here. Once downloaded you’ll need to extract it onto a workstation that has access to the environment you’ll be assessing. My environment consists of a standalone device with Hyper-V enabled and a couple of VMs. The tool can be executed against clusters if you were in a larger/production setup.

The following link provides additional detail and optional parameters that can be used.

Generate your list of VMs

The first thing I did was generated a .txt file containing the hostname of my Hyper-V host. This can either be IP, individual hostnames, or cluster name. I then executed the following command to retrieve an export of machines running on the host:


Profile your VMs

Once you have a list of VMs, it’s now time to profile them. Profiling monitors your virtual machines to collect performance data. Again it is command line based and you have the option to configure settings such as how long the profiling will take place (minutes, hours, days) if you wish. Note: 30 minutes is the minimum duration.

In addition, you can connect an Azure storage account to profile the performance from the host(s) to Azure for additional info. As per the guidance in the Microsoft documentation the general recommendation is 7 days, however as always with any sizing tools 31 days is preferred to capture monthly anomalies. I used the generated list of VMs and executed the following command as a next-step:


I created an infinite loop in PowerShell to simulate some CPU load on one of the VMs, rather than it just staying static:


Report Generation

Once you have finished profiling, you can execute the tool in report generation mode. This creates an Excel file (.xlsm) which provides a summary of all of the deployment recommendations. To complete this example, I executed the following command:


Job done! – The report is now saved in the location detailed above. The report contains a number of areas, with the opening page looking as follows:



There are many tabs included which breaks down individual details. One thing to bear in mind is configuring the frequency of DR drills and how long they last, as that will affect the costings. The default assumes 4 test failovers per year, lasting 7 days each time. You will want to reduce/increase this accordingly.

This tool contains many good recommendations above and beyond cost, e.g. initial required network bandwidth to fulfil replication, the recommendation as to what VM type, and where to place storage (standard/premium) as well as the throughput from the host platform to an Azure Storage account. Give it a try!