Best practice for Linux proxy VM configuration in HotAdd transport
search cancel

Best practice for Linux proxy VM configuration in HotAdd transport

book

Article ID: 301575

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

Symptoms:
When there are multiple SCSI controllers in the Linux Proxy VM,

  • The disk open may fail due to exception
2018-03-28_09:07:34.633 INFO VDDK - 2018-03-28T05:07:34.633-04:00 error -[03497] [Originator@6876 sub=transport] Cannot use mode hotadd to access [sharedVmfs-0] RHELXfsTargetClone_src/RHELXfsTargetClone_src-000001.vmdk: Cannot mount using this method. (Mounting <uuid> using transport hotadd failed : HotAdd ManagerLoop caught an exception.)
2018-03-28_09:07:34.633 INFO VDDK - 2018-03-28T05:07:34.633-04:00 info -[03497] [Originator@6876 sub=ThreadPool] Thread delisted
2018-03-28_09:07:34.633 INFO VDDK - VixDiskLib: Unable to locate appropriate transport mode to open disk. Error 13 (You do not have access rights to this file) (Mounting <uuid> using transport hotadd failed : HotAdd ManagerLoop caught an exception.) at 5283.
2018-03-28_09:07:34.633 INFO VDDK - VixDiskLib: VixDiskLib_OpenEx: Cannot open disk [sharedVmfs-0] RHELXfsTargetClone_src/RHELXfsTargetClone_src-000001.vmdk. Error 13 (You do not have access rights to this file) (Mounting <uuid> using transport hotadd failed : HotAdd ManagerLoop caught an exception.) at 5423.

 
  • The disk open may fail due to incorrect disk device open.
  • The target disk close may lead to other disk removal.

Environment

Virtual Disk Development Kit 1.0.1
Virtual Disk Development Kit 1.2.2
Virtual Disk Development Kit 1.2
Virtual Disk Development Kit 5.0
Virtual Disk Development Kit 5.1
Virtual Disk Development Kit 6.5
Virtual Disk Development Kit 5.5
Virtual Disk Development Kit 1.1.1
Virtual Disk Development Kit 1.1.0
Virtual Disk Development Kit 1.2.1
Virtual Disk Development Kit 6.0
Virtual Disk Development Kit 6.7

Cause

When there are multiple SCSI controllers in the Linux Proxy VM, the hotadd transport may not be able to recognize the disk correctly.

The cause of these errors is that SCSI controller ordering in the proxy VM must correspond one-to-one with SCSI controller ordering in the backed-up guest VM. 

For example, SCSI initiator 0 in the guest VM corresponds to SCSI controller 0 in the proxy VM, SCSI initiator 3 in the guest VM corresponds to SCSI controller 1 in the proxy VM, SCSI initiator 4 in the guest VM corresponds to SCSI controller 2 in the proxy VM, and SCSI initiator 5 in the guest VM corresponds to SCSI controller 3 in the proxy VM.

[0:0:0:0]    disk    VMware   Virtual disk     2.0   /dev/sda
[1:0:0:0]    cd/dvd  NECVMWar VMware IDE CDR00 1.00  /dev/sr0
[2:0:0:0]    cd/dvd  NECVMWar VMware IDE CDR10 1.00  /dev/sr1 
[3:0:0:0]    disk    VMware   Virtual disk     2.0   /dev/sdb
[4:0:0:0]    disk    VMware   Virtual disk     2.0   /dev/sdc
[5:0:0:0]    disk    VMware   Virtual disk     2.0   /dev/sdd


The first column I:C:T:L indicates initiator, controller, target, and LUN.
The root partition is assigned SCSI disk A, /dev/sda. 
When SCSI devices are added, they will be /dev/sdb, /dev/sdc, etc

Resolution

This issue is fixed for Linux proxy since VDDK 7.0.3.2 and later.

Workaround:
HotAdd backup has a strict requirement for SCSI controller correspondence: SCSI controller ordering in the proxy VM must match ordering in the backed-up VM. Previously this requirement was documented as requiring numeric order, but the actual requirement is for one-to-one correspondence.

To work around this problem when it occurs, follow these steps after every reboot of the proxy VM:

1, Power off the proxy VM
2, Move all the disks to SCSI controller #0 (so you can remove other controllers in the next step)
3, Remove SCSI controller #1, SCSI controller #2, SCSI controller #3
4, Power on the proxy VM and make sure the proxy VM can boot successfully
5, Add back SCSI controller #1
6, Add back SCSI controller #2
7, Add back SCSI controller #3
8, Confirm that SCSI controller ordering can match the SCSI order in the proxy VM.

It’s highly recommended to use SCSI controller of type (Paravirtualized SCSI) in proxy VM.

May refer to latest VDDK Programming Guide for more info.


Additional Information

PDF document for version 6.7 is available here.