Getting dirty with iscsi

| 5 Comments
I'm working on a low-cost storage solution again. This is the same thing I was working on earlier this year, but the budget demons  have eaten the proposal that would have required this thing to be replicated on another array, so I can actually move on it. Since my last round of software evals was some months ago, I'm taking another look at things. And really, it's different.

The criteria I'm dealing with right now:

  1. Most not cost anything more.
  2. It would be really, really nice to support SCSI 3 Persistent Reservation, as systems that require that are where most of my storage demand is these days.
  3. Since the Windows iSCSI initiator doesn't auto-reconnect when the connection fails, unlike linux, the iSCSI target software must not require a service restart to make config changes.
This limits things.

Also, if point number 3 above can be configured away some how, I haven't found it yet. Though I'd be happy (really happy) if I were wrong. Do let me know if you know differently.

OpenFiler, my previous best-bet, uses the Linux IET iSCSI system. Which unfortunately requires a restart to work. Therefore, I can't use it. The alternative is to shim in the newer LIO Target system onto OpenFiler, but if I'm going to do that I may as well use something with a newer kernel (like OpenSUSE) to get at the newer packages.

LIO-Target has taken me quite some time to crowbar onto OpenSUSE 11.3, but I finally found the right pry points. It states on the box that it does SCSI 3 PR, and I've just proven that it can make config changes without requiring a restart. JOY.

As it happens, LIO-Target will be replacing the current kernel-iscsi system as of 2.6.38. This also means that it is a highly moving target.

Unfortunately, the need for a crowbar means that if I decide to go production with this, the effort needed to, shall we say, keep things current will be all on me. Right now it's requiring a module recompile after every kernel update, which makes it a significant support burden. Also, UI doesn't exist yet, I'll have to create the management scripts from scratch.

One alternative is to wait until OpenSUSE 11.4, which should have a newer kernel. Unfortunately, at this point it looks like that'll be 2.6.37. So if I want to use 2.6.38, I'll have to do the kernel-dance m'self. Grar.

I should probably factor the time I spend dealing with this thing into our cost-per-GB.

5 Comments

Thought about using iSCSI hardware NICS?

Tom

Have you considered comstar on solaris? I tested it after finding out OpenFiler didn't do the reservation thing that windows clustering requires, and it was pretty easy to set up. I haven't done much testing beyond the initial configuration though.

Let me know the details and I'll be able to confirm this for you one way or another.