Experiments with iSCSI
The Open Source FreeNAS server is a NAS server which supports a large number protocols with which users can access files (OpenFiler is a similar project based on Linux). Those wishing to have a peek at FreeNAS without sacrificing a PC can do so with the VMware image supplied by the project.
A newer addition to the software is an iSCSI target which can be used to test iSCSI initiators.
After installing FreeNAS on a spare machine I created added a couple of iSCSI targets on it, which resulted in a configuration like this one:

Targets are created as container files of the size specified when adding them, and if you've enabled SSH access to the appliance, you can see the container file on the file system it is mounted on, after logging in.
On a CentOS 4 machine, I added the necessary software built from the Linux iSCSI Project with a
# yum install iscsi-initiator-utils
and then configured the initiator to access my FreeNAS target.
# grep -v '^#' /etc/iscsi.conf DiscoveryAddress=192.168.1.180
After starting the iscsi service, the kernel messages on my server reported:
iscsi-sfnet: Loading iscsi_sfnet version 4:0.1.11-3 iscsi-sfnet: Control device major number 254 iscsi-sfnet:host6: Session established scsi6 : SFNet iSCSI driver iscsi-sfnet:host5: Session established scsi5 : SFNet iSCSI driver Vendor: NetBSD Model: NetBSD iSCSI Rev: 0 Type: Direct-Access ANSI SCSI revision: 03 Vendor: NetBSD Model: NetBSD iSCSI Rev: 0 Type: Direct-Access ANSI SCSI revision: 03 SCSI device sdc: 204800 512-byte hdwr sectors (105 MB) SCSI device sdc: drive cache: write through SCSI device sdc: 204800 512-byte hdwr sectors (105 MB) SCSI device sdc: drive cache: write through sdc: unknown partition table Attached scsi disk sdc at scsi5, channel 0, id 0, lun 0 SCSI device sde: 1024000 512-byte hdwr sectors (524 MB) SCSI device sde: drive cache: write through SCSI device sde: 1024000 512-byte hdwr sectors (524 MB) SCSI device sde: drive cache: write through sde: unknown partition table Attached scsi disk sde at scsi6, channel 0, id 0, lun 0
I then created a partition on one of the new disks with a fdisk /dev/sdc and, after creating a file system on that, I could mount and start using the remote disk. It is quite that simple.
If you intend using the initiator or target on a SLES 9 machine, there is a good description of how that is done here, and this one is for Fedora Core 4.
For Windows, Nimbus have an iSCSI Target for Windows which might also be of interest, as apparently
anyone can create an IP SAN in seconds using their existing server and storage hardware. MySAN works by turning any Windows partition (such as a hard drive, internal RAID array, external storage system, or even Fibre Channel storage) into an iSCSI target
I can't vouch for that, but it sounds interesting.
As far as initiators are concerned, Microsoft has one which can be downloaded from the iSCSI Software Initiator page. I tried it and it successfully attached my sample iSCSI target to a Windows XP client machine.
This is all good stuff. Now I just need a small iSCSI capable appliance. Any suggestions?
NISMO wrote on 30-Mar-08 at 1:35 am
There's another freeware iSCSI target capable of supporting clusters. It's StarWind from Rocket Division Software. Just in case here's an URL:
StarWind iSCSI Target
Arigato!
-ichiro