The idea of copying a VM deployed on premise to Microsoft Azure is a significant one. Not only porting a VM from one datacenter facility to another can be a technical challenge, but the ability to employ a cloud service provider’s off-premise facilities like Microsoft Azure as an extension of on-premise deployments introduces new scenarios with exciting business opportunities. The VM portability and copying form an on-premise private cloud and an off-premise facility of a cloud service provider’s approve the technical framework and sets a new standard of enterprise computing. This is a hybrid cloud in making.

Concepts

The concept is quite simple. A VM stored on premise is to be copied to an off-premise facility, Microsoft Azure offered by Microsoft in this case. Once copied, the VM will run transparently in Microsoft Azure. The following schematic presents a conceptual model showing a VM stored and managed by System Center Virtual Machine Manager 2012 R2 can be copied to a designated Microsoft Azure cloud service with Infrastructure as a Service, or IaaS. Similarly, a VM running in Microsoft Azure can also be copied down to an on-premise setting.

copyVMwithAppController.concept

This model in essence realizes employing off-premise facility as sites with the ability to realistically replicate on-premise workloads for back-up and restore, DR, development, test, QA, etc. without the need to acquire and manage hardware, which dramatically simplifies the requirements and processes. The potentials with this model of reducing TCO and accelerating ROI for implementing, for example, a backup-and-restore solution of a large deployment can be very significant.

Requirements and Processes

To copy a VM from an SCVMM 2012 R2-based private cloud to Microsoft Azure, some of the operations including the Copy VM operation are to be carried out with System Center 2012 R2 App Controller. And an authorized user doing the Copy VM operation must first establish connections in App Controller with (1) an associated SCVMM 2012 R2 which runs the private cloud where a target VM runs and (2) an intended Microsoft Azure subscription, such that both on-premise private clouds and VMs managed by the SCVMM 2012 R2 and those services and VMs deployed in Microsoft Azure under the subscription are both presented and operable from a single pane of glass, i.e. the App Controller UI. The following presents a user’s experience in examining resources deployed to on-premise SCVMM-based private clouds and off-premise Microsoft Azure cloud services associated a particular subscription being connected.

appcontroller.copyVM.user.experience

First Store

In SCVMM Administration Console, the private cloud which a target VM is deployed to must be configured with a stored-VM path in the cloud properties.

scvmm.storedVMpath.setting

A VM to be copied must be first “stored” which puts the VM in a saved state and exports the VM to the location where the stored-VM path points to.

AppController.StoreVM

And the STORE process saves the current state of and exports the VM to the location which the Stored VM path points to as shown below:

storedVMpath

Then Copy

The Copy VM operation involves a few tasks and is to be carried out with App Controller. In the process, a designated cloud service in Microsoft Azure is either identified or created. An associated Windows storage account is to provide storage space. Upon finishing configuring the cloud service, a user then deploy the service which will copy (i.e. upload) the VM to the storage account followed by deploying the VM to the service and bringing the VM to a running state.

appcontroller.copyVM.requirements.and.processes

The above diagram highlights the requirements and key operations to copy a VM with App Controller. Compare with what has happening under the hood, the user operations is drastically simple and elegantly streamlined. In App Controller, fist right-click to STORE a target VM. As the operation completes and the state of the VM changes to Stored, now right-click the stored VM and COPY it. Which will kick off a process to associate the VM with a designated service and a specified storage account in Microsoft Azure. The uploading VM happens when the cloud service is deployed from App Controller. This may take a few minutes or longer since one or more GB VHD files are to be upload to the Microsoft Azure storage account.

appcontroller.copyVM.job

Upon having deployed the designated Microsoft Azure cloud service, the process will then start the copied VM and bring it to a running state as highlighted below in Microsoft Azure management portal of the associated Microsoft Azure subscription.

copyVM.result.inAzure

And in App Controller, an authorized user should now see the copied VM listed out with the same state as a resource of the associated Microsoft Azure subscription.

Closing Thoughts

Employing 3rd parties’ off-premise facilities as an extension of on-premise deployments is an emerging computing model to further advance a private cloud into a hybrid one. The essential building blocks of a private cloud is a Windows Server 2012 with Hyper-V, while the private cloud fabric is constructed and managed by System Center 2012 R2. Now with the introduction of IaaS in Microsoft Azure, IT can now employ Microsoft Azure as an off-premise site and an extension by using App Controller as a single pane of glass to manage resources regardless they are deployed on premise or off premise.

Additional information: