I was previously running Windows 2K8 Server with VMware Server and decided to take the plunge to ESXi. My 2K8 server also doubled as the host for sharing local storage attached to my HP SmartArray P600.
Now, with ESXi I want to create a Windows 2K8 Server VM and have that VM expose the local storage as a network share. I tried to create a RDM using vmkfstools.pl but it keeps failing claiming specified parameter incorrect in the VI client log, and then quoting the path that I wanted to create the RDM at.
Here's the output from esxcfg-vmhbadevs:
Here's what I try to run to create a RDM so that I can have a VM mount it:
C:\Program Files (x86)\VMware\VMware VI Remote CLI\bin>vmkfstools.pl --server 10.0.0.100 --username root -r /vmfs/devices/disks/vml.0100000000202020202020202020202020202020202020 /vmfs/storage/datastore1/test.vmdk
Can't call method "fault_string" without a package or object reference at C:\Program Files (x86)\VMware\VMware VI Remote CLI\bin\vmkfstools.pl line 413.
In VI Client I see "A specified parameter was not correct. /vmfs/volumes/datastore1/test.vmdk"
However, I know that that "/vmfs/volumes/datastore1/" exists because I navigated to it in the ESXi console.
What's going on?? Is there another, better way, to get my local storage exposed to the VM?
I would hate to revert back to a 2K8 OS with server installed.
Welcome to the VMware Community forums. An RDM is meant for a FC SAN or iSCSI LUN. With local storage you can try it as a generic SCSI device.
I tried this too and it didn't happen to work. I edited the advanced config settings for the VM, added rows defining a scsi target with a filename to the correct /dev/ subfolder. Booting the VM didn't result in any new disks found in the storage manager for my OS. Was there more to it?
For the path to the disk, try /vmfs/volumes/datastore1 instead of /vmfs/storage/datastore1.
Good eye! I think I tried so many combinations I copy pasted the worst example of the one that I tried. I fixed it up and that still didn't work though
I get this error:
Failed to create virtual disk: Invalid argument (1441801).
Have you tried using the VI Client to do the mapping - go to Edit Settings -> Add -> Hard Disk -> Raw Device Mapping and then stepping through the wizard from there? Is there some particular reason you need to use the CLI to do this?
That was one of the first places I looked, but unfortunately that option is greyed out.
What kind of disk are you trying to use? It seems that either one of two things is the case: either it won't let you use non-SCSI disks for RDM mapping, or it won't let you use any local-attached storage. I can't create a RDM mapping remotely or locally to my direct-attached IDE or SATA disks. I don't have any SCSI or RAID disks on any of my hosts, so I can't test that. The RDM mapping option is not greyed out for me in the VM configuration settings, but when I got to select a disk it only shows my iSCSI-attached ones.
I have a HP P600 Smart Array card hosting two raid 0 and 1 raid 6 array. ESX is able to see it in its list of storage adapters
Well, it seems like ESXi does not let you create RDM mappings to local storage adapters - just SAN adapters. I'm guessing this is part of trying to keep virtual machines portable - this prevents you from making your VM dependent upon a single physical machine.
Maybe I'm wrong and someone else knows how to get around this. You also may be able to create the VMDK file manually with a text editor and use it that way.