VPLEX: XCOPY fails when performing storage vMotion on local volumes across clusters.
Summary: This article addresses the XCOPY failure when using source and target VPLEX local volumes across clusters.
Symptoms
XCOPY has existed since the GeoSynchrony 5.3 release. ESX hosts connecting to VPLEX frontend ports see XCOPY as a supported feature.
XCOPY fails on two local VPLEX volumes used by cross-connected hosts where one volume is used as the source and the other as the target.
To recognize when vMotion is failing due to XCOPY, check the firmware logs for the following event messages:
These event messages are only seen during the timeframe the VMotion was attempted.
Firmware Log Extract:128.221.252.38/cpu0/log:5988:W/"00601661eb55144244-2":289074:<4>2017/03/07 08:30:03.10: stdf/41 xcopy malformed command, target lu not supported, ITL fcp: (0x10008c7cff20xxx)(0x50001442xxxxx)(0xc000000000000, VPD83T3:6000144000000010xxxxxxxxx)128.221.252.38/cpu0/log:5988:W/"00601661eb55144244-2":289075:<4>2017/03/07 08:30:04.10: stdf/41 xcopy malformed command, target lu not supported, ITL fcp: (0x10008c7cff20xxx)(0x50001442xxxxx)(0xc000000000000, VPD83T3:6000144000000010xxxxxxxxx)128.221.252.38/cpu0/log:5988:W/"00601661eb55144244-2":289076:<4>2017/03/07 08:30:05.10: stdf/41 xcopy malformed command, target lu not supported, ITL fcp: (0x10008c7cff20xxx)(0x50001442xxxxx)(0xc000000000000, VPD83T3:6000144000000010xxxxxxxxx)128.221.252.38/cpu0/log:5988:W/"00601661eb55144244-2":289077:<4>2017/03/07 08:30:06.10: stdf/41 xcopy malformed command, target lu not supported, ITL fcp: (0x10008c7cff20xxx)(0x50001442xxxxx)(0xc000000000000, VPD83T3:6000144000000010xxxxxxxxx)128.221.252.38/cpu0/log:5988:W/"00601661eb55144244-2":289078:<4>2017/03/07 08:30:07.10: stdf/41 xcopy malformed command, target lu not supported, ITL fcp: (0x10008c7cff20xxx)(0x50001442xxxxx)(0xc000000000000, VPD83T3:6000144000000010xxxxxxxxx)
Cause
The XCOPY operation fails if the receiving VPLEX director is unable to reach both source and target volumes.
Resolution
Check the following conditions as XCOPY fail if any of these are met:
- The World Wide Port Name (WWPN) provided in the target descriptor does not correspond to any Logical Unit (LU).
- STDFLU private data pointer is NULL.
- If the LU is not exported (Does not belong to a storage view or not masked through this director).
This validation happens for both source LU and target LU.
The XCOPY source and target volumes must be presented to both the storage-views across the clusters:
- Export the source volume to the storage-view where the target volume is already exported.
VPlexcli:/> cd /clusters/cluster-1/exports/storage-views/Test_Storage_ViewVPlexcli:/clusters/cluster-1/exports/storage-views/Test_Storage_View> export storage-view addvirtualvolume (Source_Volume ) --force
- Export the target volume to the storage-view where the source volume is already exported.
VPlexcli:/> cd /clusters/cluster-2/exports/storage-views/Test_Storage_ViewVPlexcli:/clusters/cluster-2/exports/storage-views/Test_Storage_View> export storage-view addvirtualvolume (Target_Volume ) --force
- Set the visibility of both the source and target devices as global:
VPlexcli:/> cd clusters/cluster-1/devices/device_Target_volumeVPlexcli:/clusters/cluster-1/devices/device_Target_volume> set visibility globalVPlexcli:/clusters/cluster-1/devices/device_Target_volume> llAttributes:Name Value---------------------- ------------------application-consistent falseauto-resume trueblock-count 1310720block-offset 0block-size 4Kcapacity 5Ggeometry raid-0health-indications []health-state oklocality localoperational-status okrebuild-allowed -rebuild-eta -rebuild-progress -rebuild-status -rebuild-type -rule-set-name cluster-1-detachesservice-status runningstripe-depth 4Ksystem-id device_Target_volumethin-capable falsetransfer-size -virtual-volume Target_Volumevisibility global <<<VPlexcli:/clusters/cluster-1/devices/device_Target_volume> cd clusters/cluster-2/devices/device_Source_volumeVPlexcli:/clusters/cluster-2/devices/device_Source_volume> set visibility globalVPlexcli:/clusters/cluster-2/devices/device_Source_volume> llAttributes:Name Value---------------------- ------------------application-consistent falseauto-resume trueblock-count 1310720block-offset 0block-size 4Kcapacity 5Ggeometry raid-0health-indications []health-state oklocality localoperational-status okrebuild-allowed -rebuild-eta -rebuild-progress -rebuild-status -rebuild-type -rule-set-name cluster-2-detachesservice-status runningstripe-depth 4Ksystem-id device_Source_volumethin-capable falsetransfer-size -virtual-volume Source_Volumevisibility global <<<
This only applies to cross-connected storage-views.
Additional Information
Be aware of the following KB articles which may be relevant: