iSCSI on the Cheap
Want to learn how to work with iSCSI storage devices? Here's how to build a lab with almost no budget.
I've been looking to build and test iSCSI storage,
and would like to configure an iSCSI cluster, but have a very limited
budget. Do you have any suggestions?
Harley: Internet SCSI (iSCSI) is a storage networking protocol
that has definitely gained momentum in recent years. However, most companies
that have any iSCSI equipment use it exclusively in production. This leaves
little opportunity for cross-training or self-study. My first choice when
faced with a budget shortfall is scratch-off lottery tickets. When that
tactic inevitably fails, it's time to get creative.
With simple iSCSI testing, I have had a lot of success with the products
from Rocket Division Software.
At the company Web site, you can download a 15-day shareware version of
iSCSI target software that allows a server to share disks via iSCSI.
The clients would need to run iSCSI initiator software to connect to the
iSCSI target. Rocket Division also offers a shareware version of their
iSCSI initiator, but I've also had luck with Microsoft's free iSCSI
Tech Help—Just An
Got a Windows, Exchange or virtualization question
or need troubleshooting help? Or maybe you want a better
explanation than provided in the manuals? Describe
your dilemma in an e-mail to the MCPmag.com editors
the best questions get answered in this column and garner
the questioner with a nifty MCPmag.com baseball-style
When you send your questions, please include your
full first and last name, location, certifications (if
any) with your message. (If you prefer to remain anonymous,
specify this in your message, but submit the requested
information for verification purposes.)
Just to summarize some of the basic principles of iSCSI, iSCSI is a protocol
that allows systems to pass SCSI commands over IP. An iSCSI target is
a device that hosts storage devices on an iSCSI storage network. Systems
that need to access shared storage resources on the iSCSI target need
to run iSCSI Initiator software.
While theoretically you could pass iSCSI commands over a shared LAN,
iSCSI is most efficient on a dedicated network segment that offers at
least 1Gbps of bandwidth. If you're trying some simple testing, a 100Mbps
LAN will be adequate. For iSCSI test configurations, I prefer to install
two NICs in each server. This way one NIC can be dedicated for data transmissions
over the iSCSI storage network.
If you plan to test clustering, any disks that you share on the iSCSI
target system should be SCSI disks. I've found that while the iSCSI target
and clients may successfully share the disks, during the first cluster
failover you'll get disk errors. If you don't have any SCSI disks available,
an alternative is to set up a Microsoft Virtual Server or a VMware virtual
machine with virtual SCSI disks.
As a basic cluster setup, you could configure one system as the iSCSI
target that hosts the shared disks. Then set up two systems to act as
the cluster nodes. Since the Microsoft Cluster Service requires Active
Directory, you could also set up the iSCSI target system as a domain controller.
After installing the StarWind software on the iSCSI target, open up the
"StarWind GUI Help" file in the installation directory. In the
"How To" section of the help file, follow the procedures in
the following sections to bring the iSCSI target online: "Connect
to a Server," "Add Connection," "Share SPTI Device,"
and "Create Access Permissions." This will provide guidance
on how to bring the target software online and then to configure shared
By default, StarWind only allows one iSCSI client to access a shared
disk at a time. For clustering, you'll need to configure disk sharing,
which is done by editing the starwind.conf file in the StarWind installation
folder. To edit the file, first stop the StarWind iSCSI Service. Then
open the starwind.conf file in Notepad. Each shared disk will have a line
similar to "\\.\PhysicalDrive1" "Cluster1".
In my example, Cluster1 was the label assigned to the shared disk once
it was configured. To enable sharing, add the following to each shared
So my PhysicalDrive1 reference in the starwind.conf file would look like:
Once you have the target setup, you then need to install the iSCSI initiator
software, such as StarPort on each cluster node. The "How to"
section of the StarPort online help provides some pretty simple guidance
for configuring the iSCSI initiator. Once each cluster node can see the
shared iSCSI disks, you're ready to install and configure the cluster
While this software-based iSCSI solution may not make you an all-out
storage networking guru, it will at the very least allow you to get your
feet wet with iSCSI. Also, for setting up inexpensive cluster testing
and training labs, this iSCSI software will let you do so without having
to purchase additional hardware. If you have a Linux box handy, you may
also want to check out the iSCSI
Enterprise Target Project on Sourceforge.net.
I hope this helps. If you run into any snags while setting up the iSCSI
software, feel free to shoot me an e-mail.