This might take you 2 minutes to read.

The issue is a bit old now but I will write about it anyway. It all begins with a hyper-v 2012 and a Equalogic San. And live storagemigration. With ODX enabled (default setting) the VHD:s was corrupted when moved. Which caused a lot of lost data.
The problem should with ODX and Hyper-V 2012. ODX is mentioned in following 2796995 which is replaced by 2870270.

The solution for this customer was to disable ODX. This was done by setting the “hklm:systemcurrentcontrolsetcontrolfilesystemFilterSupportedFeaturesMode” to “1”
(from Deploy Windows Offloaded Data Transfers)

Set-ItemProperty hklm:SYSTEMCurrentControlSetControlFile System -Name "FilterSupportedFeaturesMode" -Value 1

To test that all hosts was ODX-disabled and also do some performance testing I created a script to move a VM to all Hyper-V hosts in the cluster and move the VM to different LUNs.

The script below takes a VM (VirtualMachineName) and gets all hosts that matches the cluster “clusterName”. After that the VM is moved to the first Hyper-V host. The storage is moved to “ClusterStorage-Volume9” and back to Volume1. After that the the VM is moved to another host.

$vm = Get-SCVirtualMachine -Name "VirtualMachineName"
$logPath = "C:tempMoveDiskTest.log"
Add-Content $logPath ("Change to VM: $vm.name ")

$hyperVhosts = Get-VMHost | where { $_.Hostcluster -match "clusterName"}

foreach ($hyperVhost in $hyperVhosts) {
   $hostname = $hyperVhost.name
   Add-Content $logPath ("Moving to host: $hostname")
   $vmHost = Get-SCVMHost | where { $_.Name -eq $hostname }
   $status = Move-SCVirtualMachine -VM $vm -VMHost $vmHost -HighlyAvailable $true 
   Add-Content $logPath ("Moving to LUN: Volume9")
   Move-SCVirtualMachine -VM $vm -VMHost $vmHost -Path "C:ClusterStorageVolume9" -UseLAN 
   Add-Content $logPath ("Moving to LUN: Volume1")
   Move-SCVirtualMachine -VM $vm -VMHost $vmHost -Path "C:ClusterStorageVolume1" -UseLAN 
}

If there is some problems with the ODX the server will be corrupt. Please do this with a test-server.

The server that are moved to different storage needs to be powered on.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.