There are lots of reasons companies find to delay or refuse a move to the cloud. One very common scenario is the company still has an extremely old application that they can’t do without for several more years. Often, this is not their current production system, but they refer to it for legacy or archival data. These applications can complicate a move to the cloud because they are often out of support or unable to run on newer versions of operating systems, and (for good reason) the public clouds do not support these older operating systems (such as Windows Server 2003) running natively. However, we can still take our old virtual machines into Azure indirectly by using Nested Virtualization; a new feature in Windows Server 2016. Let’s see what this looks like.

Prepare the Legacy Server

Hopefully, the old server is already a virtual machine. Virtualization has been around for a long time and most organizations run some or all of their servers virtually these days. If, however, the server is still physical, you will need to acquire software to convert the server to a Hyper-V based virtual machine. If the server is virtual but is VMware based, you will need to convert the VMware VM into a Hyper-V based VM. This can be accomplished using System Center Virtual Machine Manager, or with another third-party tool. Once the server is a virtualized and Hyper-V based, export the VM using Hyper-V manager or make a copy of the VHD files (this will require configuring a new VM on the destination server, utilizing the old VM disks). One way to migrate the VM files into Azure is to use AZCopy to copy the data into an Azure Storage account, and then use AZCopy again to download the files from Azure Storage into your destination Azure Hyper-V Host VM.

Deploy a Hyper-V Host in Azure

Not every size or family of VM in Azure is capable of Nested Virtualization. Last year, Microsoft released the Dv3 and Ev3 families of VMs that meet the specific requirements for Nested Virtualization. Deploy a VM from one of these two families, ensuring you’ve selected a size with enough CPU and RAM to power both the host VM and the legacy VM.

You’ll need to install the Hyper-V role and management tools on the Azure VM. For the most part, you can handle this almost like any other Hyper-V host. However, there are some caveats when using Nested Virtualization. The nested VMs will be unable to retrieve a dynamic address from the Azure Virtual Network. As a result, you will need to configure a virtual switch on the Hyper-V host that is isolated. If it’s absolutely necessary that the legacy VM communicate with other systems on the network, you can configure NAT and allow the VM to traverse NAT into the Azure Virtual Network. However, if you are running a legacy operating system and application that are both out of support, they will inherently be more susceptible to malicious attack, and likely will cause you to fail network scans associated with maintaining compliance. For these reasons, it’s a better idea to keep the legacy VM totally isolated on its own Hyper-V switch, unable to traverse to other networks.

Configure the Legacy VM

Once Hyper-V is configured, and your legacy VM files are located on your host VM, proceed with importing the VM or creating a new VM. If creating a new VM, be sure to attach the old disks properly and don’t forget to select the Isolated vSwitch.

Once this is complete, power on your VM and ensure it is functioning properly. If everything checks out, you have now moved an unsupported, legacy system into the cloud! Removing one more roadblock on the path to overall digital transformation.

Cost Control

Depending on how often access to the legacy VM is required, the legacy VM and host VM in Azure could be kept powered off the majority of the time. This may present a cost savings over continuing to run a physical server or a physical Hyper-V host on-premises for the legacy application.

Conclusion

Companies are always looking for reasons to move to the cloud, but also always finding reasons why they can’t. The incredible thing about the cloud is the versatility afforded us by its features and offerings. A little know-how and ingenuity can remove the largest and most arduous obstacles keeping your IT systems stuck in the past.