Are there any production-quality iSCSI SANs suitable for use with Windows Server 2008/SQL Server for failover clustering?
So far, I've only seen Dell's MD3000i, and HP's MSA 2000 (2012i), which both are around $6K with a minimal disk configuration. Buffalo (yea, I know), has a $1000 device with iSCSI support, but they say it will not work for 2008 failover clustering.
I'm interested in seeing something suitable for failover in a production environment, but with very low IO requirements. (Clustering, say, a 30GB DB.)
As for using software: On Windows, StarWind seems to have a great solution. But it's actually more money than buying a hardware SAN. (As I understand, only the enterprise edition supports having replicas, and that's $3000 a license.)
I was thinking I could use Linux, something like DRBD + an iSCSI target would be fine. However, I haven't seen any free or low-cost iSCSI software that supports SCSI-3 persistent reservations, which Windows 2008 needs for failover clustering.
I know $6K isn't much at all, just curious to see if there are practical cheaper solutions out there. And finally, yes, the software is expensive, but many small business get MS BizSpark, so the Windows 2008 Enterprise / SQL 2008 licenses are completely free.
It might not be the ideal high availability solution, but many people coming to this tread want to know about the solutions for running a Windows Server 2008 cluster with limited funds.
Here are some options.
As indicated for an iSCSI solution you will need iSCSI-3 persistent reservations for failover clustering to work in Windows Server 2008. See http://www.servercare.nl/Lists/Posts/Post.aspx?ID=71 for a good overview.
Low cost software solutions that are reported to work include [1]:
Low cost software solutions that will not work (at the present time, but might soon)
Most low cost hardware solutions such as Thecus, Qnap, NetGear etc. do not currently work.
Drobo does not currently work [5]
Synology NAS running DSM 3.0 claims to work [6]
[1] Support might be forthcoming through a commercial plug-in: http://forums.openfiler.com/viewtopic.php?id=2102
[2] Support already present in nightly builds ( http://sourceforge.net/project/showfiles.php?group_id=151951&package_id=229704 ) as reported in http://www.servercare.nl/Lists/Posts/Post.aspx?ID=61
[3] Support might be forthcoming ( http://opensolaris.org/jive/thread.jspa?messageID=312634 )
[4] Hyper-V and Drobo Pro
[5] http://www.synology.com/us/products/features/iSCSI.php
Consider whether you really need hot failover. If you're worrying about price at the level of an entry level SAN then consider whether you really have a business case for that recovery model. How expensive is your downtime for an outage?
If the cost of an outage justifies the cost of a decent SAN, buy it and don't penny pinch. Otherwise, consider other failover models. If your downtime is not so valuable, you can probably tolerate a hot standby model where the database is replicated to another server with local disk. This takes longer to recover but does not need shared disk storage. If this works for you then you don't need a SAN and the local disk on the servers will probably be much cheaper.
Another option would be the secondhand market. You can get a re-certified second hand Clariion CX200 or CX300 (which would probably do what you're after) for just a few thousand dollars. Re-certified hardware qualifies for vendor support and can be purchased through various outfits such as www.berkcom.com or www.bltserv.com.
(Disclaimer: I have no affiliation with either vendor but am a satisfied customer of BLT Services. Berkcom was recommended to me when I needed something that BLT didn't have).
I can say only one thing: Starwind. Their free version offers all you need, limiting only in storage size - 2Tb. I like testing of my virtual machines so much, that our company bought it for implementing shared storage. Working with already for a few years, and can say that it`s greatest thing. I used to work with Datacore and openfiler, but they are to complicated and bugful respectively.
If you absolutely have to insist on iSCSI, then yes, there are some in-the-middle solutions out there, although they do cost more than $1k. Don't let the off-brand name fool you, we've been using a variant in eSATA form for over 2 years with no failures, no hiccups, and no downtime (that wasn't planned). Performance has been good, 250Mb/sec sustained with 300Mb/sec peak, although our setup allows for some minimal (5 minute) downtime for failover.
Yes, Linux would give you a cheap-o iSCSI solution as well, although I'm not sure about your other requirements.
Openfiler will soon be testing this feature. You can view a thread on it here:
https://forums.openfiler.com/viewtopic.php?id=2102&p=1
Make sure to check out the 2nd page of the thread for a possible working solution.
The LIO-Target v3.x was the first (and still only) open source Linux target to support both SPC-3 Persistent Reservations (complete implementation according to SPC-4) and implict and explict Asymmetric Logical Unit Assignment (ALUA) also following SPC-4 logic.
http://www.linux-iscsi.org/index.php/Persistent_Reservations
SCST has at the very least an experimental patch for SCSI-3 persistance. I think this is just beginning to show up - I've been playing with RDBD and IET for a short while to build a cheap redundant ISCSI storage cluster and this pretty much bit me too right now, so it's time to test the other alternatives out there, lile nab's suggestion of LIO-Target.
Thecus's 5200pro (and some of their other models) is a 5-disk RAID NAS that can be configured to support iSCSI over one or two GigE ports. They might be quick enough for you but I will say that they only have a single power-supply so that might count against it's 'production quality'. By the way, the MSA2000i is a pretty good unit for the case.
If your looking for something "non-production" ie. something to mess around with, you can try iscsi on linux. You set aside some hdd space, allocate it to the iscsi daemon, and configure and start up the daemon. Quick and easy, though I wouldn't do it for a production environment, too slow and too quirky.
If you are going to the bother of making your servers redundant, shouldn't you consider making your storage redundant? Don't skimp on the storage. For Windows Server 2008, you may want to consider using local attached disks and a host based replication solution that integrates with failover clustering such as SteelEye DataKeeper Cluster Edition. Database Mirroring that comes with SQL is also an option that works well with a limited number of databases.