I wanted to create a SQL cluster on Hyper-V and found that shared disk is no longer supported by Hyper-V.  The only solution is to use iSCSI. 

ISCSI has two parts, an iSCSI Target and an iSCSI Initiator.  In my scenario, I have a domain controller(DC) VM, and two cluster nodes(Node1 and Node2) VMs.  All the VMs run Windows Server 2003. I need to install iSCSI Target on the DC, and install iSCSI Initiator on both Node1 and Node2.

The iSCSI Target I used is a part of the Microsoft Storage Server. Other ISCSI software include WinStar. 

The ISCSI Initiator is a free download from Microsoft at http://www.microsoft.com/downloads/details.aspx?FamilyID=12cb3c1a-15d6-4585-b385-befd1319f825&DisplayLang=en.

Once iSCSI Target and Initiator have been installed on the VMs and the services (Microsoft iSCSI Software Target and Microsoft iSCSI Initiator Service) are running, here are the steps for configuring it:

  1. (On DC) Run MMC and add "Microsoft iSCSI Software Target" snap-in.
  2. (On DC) Add devices. In my case, I need to create a SQL Server cluster. So I need a Quorum device and a SQLSharedDisk device.  Each device is a vhd stored on DC vhd.  So you must make sure the DC VM has enough space.  You can consider adding an additional disk to the DC VM.
  3. (On Node1) Run Microsoft iSCSI Initiator from the Start menu.
  4. (On Node1) Switch to the Discover tab.
  5. (On Node1) Click Add to add a Target Portal.
  6. (On Node1) Specify the IP address or the host name of the DC, keep the default port unless you configure a differnt port on iSCSI Target.
  7. (On Node1) Switch to the Targets tab.
  8. (On Node1) Highlight the DC IPN, and click Log On.
  9. (On Node1) (consider select both checkboxes) click OK.
  10. (On Node2) Repeat step 3 through 9 on Node2.
  11. (On DC) Create a new iSCSI Target.
  12. (On DC) Use the Node1 host name as the iSCSI target name, and then click Next.
  13. (On DC) Click Browse.
  14. (On DC) Select Node1, and then click OK, click Next, click Finish.
  15. (On DC) Right-click the Node1 iSCSI Target, and add the virtual disks created at step 2.
  16. (On DC) Repeat step 11 through 15 to create another iSCSI Target (make sure to replace Node1 with Node2)
  17. (On Node1) Open Disk Manager to configure the disks.
  18. (On Node2) Open Disk Manager to configure the disks.