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:

image

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:

image

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

image

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:

image

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:

image

image

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!

Protect yourself from disaster with Azure Site Recovery!

cyclone-2100663_1920

Having a robust Disaster Recovery (DR) plan in place is a key foundation of any IT strategy and risk management approach. Ensuring key services are protected, at a minimum through backup, or cost permitting through some form of replication, is of critical importance. This will help to ensure that, in the event of a disaster, be it small or large, the organisations IT systems can be recovered allowing the business to continue functioning from an IT perspective.

This post will focus on the capabilities provided by Azure Site Recovery (ASR), and how this is a perfect solution to bolster an organisations protection. However protecting yourself from disaster involves a much wider set of considerations, e.g. Backup, Plans, RunBooks, Automation and Replication services. Each of these topics has its own unique considerations and is for another post.

A large number of organisations survive with a single datacentre, or perhaps two but at a single location, mainly because of cost constraints. This leaves those organisations susceptible to many disasters, e.g. natural disasters (flooding, earthquake, fire, etc.) as well as man-made, e.g. electrical failure, collapse, etc. A disaster like this could result in the need to recover to a temporary location, perhaps from backup (with finger crossed that the backups work!), with a lengthy lead time to rebuild and recover systems. This lead time can be the difference between an organisation recovering or suffering serious financial loss/reputation damage, etc. Come in ASR…

Image result for azure site recovery

Azure Site Recovery (ASR) provides a great solution to help organisations overcome the risks outlined above. Put short, ASR provides a solution that can provide protection and replication of your on-premises (and cloud) based services to ensure they are protected to the Microsoft datacentres. If you are an organisation that only has a single datacentre then this can provide that much sought after secondary/tertiary location. In addition to replication, ASR can also provide monitoring, recovery plans and testing services. As pointed out earlier, ASR can protect on-premises workloads, as well as workloads already in Azure (to ensure they are replicated to another Azure region). Since the focus is on-premises in this post, how does this part work?

ASR supports the replication of services/virtual machines from all key platforms, including Hyper-V and VMware. If you do not use these virtualisation platforms you can use the “physical” agent option which can be installed on a physical server or as an in-VM agent (if using a differing virtualisation platform, e.g. KVM). If you are using the VMware integration, or Physical option, a configuration server is required. The following link provides more detail around the support matrix for replicating these workloads.

Dependent upon the on-premises capabilities, the following Microsoft links provide the architectural details for each configuration:

Architecture

Source: https://docs.microsoft.com/en-us/azure/site-recovery/concepts-hyper-v-to-azure-architecture

To get started with Hyper-V, you require an Azure subscription, System Center Virtual Machine Manager (VMM) server, Hyper-V hosts, VMs and appropriate networking. A Site Recovery Vault and Storage Account is configured in the Azure Subscription and the Site Recovery provider is installed on to the VMM server  which is then registered into the above vault. The recovery services agent .exe is installed on all Hyper-V hosts (or cluster members). In this configuration, no agent is required on any of the Hyper-V virtual machines as it is proxy’d via the host connection.

Virtual machines can then be replicated as per the associated replication policy (e.g. sync intervals, retention, etc.). Initial sync’s can take time to move the data up to the Azure platform (unless using Import/Export and seeding).

Note: two key questions that come up with clients are as follows:

  1. Do I need Azure Networking / VPN in place
  2. Can replication traffic be forced over the VPN?

1) Strictly speaking no, however if you want to provide client access to private virtual machine IPs then the answer is yes. If you have a client/server application that is internally addressed, then that application will need to support IP address change/DNS update and the client will still need a network route to connect to the application. If the application can be made publically accessible then you may have alternatives.

2) In short, no – ASR is designed (like many Azure services) to be publically accessible via a public URI. This means that data is typically sent via HTTPS to the endpoint over the internet. There is some changes you can make if you have ExpressRoute however that is outside of the scope of this post. This may change soon with the introduction of virtual network service endpoints however this is currently preview feature only supported on storage accounts and Azure SQL.

I hope this helps you to understand how ASR can help your organisation, and provide a brief overview of some of the typical considerations and architectures.