What are the different methods of configuring iSCSI logical unit numbers (LUNs) in a virtual environment?
The virtual hard disk (VHD) method basically says you're going to create a VHD that the iSCSI client will use for the virtual machine you're running. You then assign that disk to the guest, which sees what looks like a local hard drive, if you will. Underneath, of course, the hypervisor has created the appearance of a local hard drive with a connection to the storage system through iSCSI. The guest just thinks it's a local [drive] and the traffic runs out of the guest into the hypervisor and out to the storage.
The pass-through method is somewhat similar, but there are a few differences. This is where you allocate the storage in the hypervisor but sort of give it to the guest. The guest accesses the LUN almost directly through a SCSI-type connection, which gives it more control over the LUN itself.
The third method is what I call the "direct from the guest" method. As long as the guest can see an available network interface card, it can access the storage by creating an iSCSi initiator, discovering the storage on the network and then allocating storage as if it were a physical server allocating regular iSCSI storage from an iSCSI initiator viewpoint. By doing this, the hypervisor doesn't really know the guest is accessing iSCSi storage -- it just sees an Ethernet connection.
To get more detailed information on these three methods of configuring iSCSI LUNs, go to page 22 of the Demartek iSCSI Deployment Guide 2011.