ODX along with SCVMM 2012 R2 – Fast File Copy

The next step after ODX is to make use of it in the real scenarios. In my viewpoint, Machine deployment will be the best consumer who can showcase a significant performance improvement using ODX. The traditional deployment using SCVMM make use of BITS over Network. And I see that for a deployment, which takes 10 minutes – more than half of the time will be used for moving the VHDX file to the destination HyperV Server.

With VMM 2012 R2, we optimized the speed for VM deployment from VMM library by leveraging Offloaded Data Transfer (ODX).  Many large environments use SAN storage.  ODX is a feature introduced on Windows Server 2012 which automatically orchestrates and optimizes the use of SAN storage by using tokenization on reads and writes without using buffers.  With this capability, copying the VM can offloaded to the SAN device which decreases the server cpu utilization and decreases network bandwidth consumption which provides faster VM deployments. To use ODX, SAN storage must support this feature.

Thansk Keiko Harada for making this post.

I just tested out ODX along with SCVMM 2012 r2. I am well impressed as the performance gain is clearly visible. The VM Deployment from templates only require few minutes compared to the time consumed before.

The current environment where I tested ODX contain Windows Server 2012 R2 Hyper-V Cluster along with SCVMM 2012 R2. Hyper-V Servers and SCVMM Server got disk allocated from an ODX capable SAN. SCVMM make use of the SAN Volume for library.

For ODX to work with SCVMM – Here is the Prerequisites

  • Only for new VM deployment from the VMM library
  • RAA (run as account) on source and target
    • VMM and the hosts (source and target) must be on the trusted domain with no firewall among the environments.
  • VMM R2 agent
  • VMM R2 Server
  • Windows Server 2012 and above
  • ODX supported SAN storage

I got all other prerequisites except the RAA.

And for that reason Fast File copy was not functional. While trying to deploy a VM from template, On the HOST Selection page, This was getting clearly evident.

The message inside “Deployment and transfer explanation” says – Creating Virtual Machines using fast file copy requires the host hostname to have an associated Run As Account.

Fast File Copy Require assosiated run as account

In my case, the Run As Account was not configured initially. I created the Hyper-V Cluster from SCVMM but later – while tried to configure the Run As Account for Host Management, that option was disabled.

HOST Access - Run As Account Disabled

Some search on Technet forum pointed me to this page where we can configure the Run As Account through Shell.

$YourCluster = Get-SCVMHostCluster -Name YOUR-CLUSTER-NAME

$YourRunAs = Get-SCRunAsAccount -Name “YOURRUNASACCOUNT”

Set-SCVmHostCluster -VMHostCluster $YourCluster -VMHostManagementCredential $YourRunAs

After executing this, Run As Account got displayed in the Host properties.

Host Access - Run As Account Assigned

Now we are all set with the prerequisites for Fast File Copy.

Lets try it.

Now VM Creation is using FAST FILE COPY 😀

Deploying using Fast File Copy

See the total time took for completing the file copy. Just 50 Seconds.

fast file copy - start time and end time

The same template when deployed with out Fast File transfer took more than 4 minutes.

Deploying without Fast File transfer

Thus the total time took for deploying a VM came down drastically – Now its just 3 Minutes.

Create VM - Total Time

Enjoy !