I decided to test installing Windows 7 onto an iSCSI LUN. It works. Here's what I did:
My setup is as follows:
Server: OpenSolaris with Comstar iSCSI target
PC: with PCI-E Intel PRO/1000 dual port Server NIC
I created a 30GB LUN on which to install Windows 7 on the server.
It is possible to flash Intel PCI-E Server NICs with an iSCSI boot ROM which provides boot from SAN support. I have one of these cards so this is the method I chose to use, gPXE has a more universal alternative which I have linked at the bottom of this post.
I flashed the iSCSI boot ROM to my Intel PRO/1000 Server NIC (only Intel PCI-E Server NICs are applicable). The ROM software was downloaded from the Intel website, it is in the networking downloads section and is called the Intel® iSCSI Remote Boot Setup Utility.
To flash, copy the iscsiutl.exe utility onto a DOS boot disk, I used a USB key I had lying about with the Win98 system files on. Boot to DOS then "iscsiutl -up" flashes the NIC.
Reboot once this has been done, now there is a new BIOS entry for the iSCSI boot ROM, I pressed Ctrl-D to get into its config page. I set the boot ROM to Primary and then configured the initiator and target settings. Exit and now the NIC connects to the target and picks up its LUN.
I already had a USB key with the Windows 7 RC installation files, I booted to this and began the installation.
From here on in it was plain sailing...
Note: those wanting to achieve the same but without a PCI-E Intel Server NIC can do it using gPXE. This will provide boot from SAN functionality but will work with most NICs, also requires DHCP and TFTP servers.