Nov 222011
 

Esxi5 had some changes in iscsi initiator, causing quite a few problem for some existing open source target.

I endup tried freenas,  You would want to use version 8. which works okay, performance is good enough, but there’s one thing, it’s on freebsd.

It’s not I don’t like freebsd, it’s just I havn’t got too much exposure to it, and it lacks some surprising feature, for example, there’s no PNP support ?!  So you can’t just add a network card and expect it shows up, you have to reboot the machine, WTF? same apply to scsi controller.  Also it don’t support vmxnet3, and vmxnet2 seems to have trouble locking itself up in the kernel. sigh. It might work on physical machines, but I want to use it in the ESXi environment.

However, the underlying iscsi daemon , istgt is not only for freebsd, it claims to be *nix compatible, so, I tested it, it works! It has been working fine on my lucid box, with vmxnet3 , local software raid10 (md) , with a top natch performance.

First, to compile it, you need libssl-dev

sudo apt-get install libssl-dev

And then it’s very simple:

wget http://shell.peach.ne.jp/~aoyama/wordpress/download/istgt-20111008.tar.gz
tar zxvf istgt-20111008.tar.gz
cd istgt-20111008
./configure
make
make install

It defaults install to /usr/local/ , you might want to change that, everything compiles to just one binary istgt, with some config files. create a target pointing to /dev/md_d0 and it runs perfectly!

Compare to various other software I’ve tried, this is good enough with only some very small problem:

I also tried some other choices including those from di

  • IET http://iscsitarget.sourceforge.net/
    IET doesn’t support SCSI-Persistent Reservation, although a patch has been submitted, a new version hasn’t been released, it’s hard to say how good it will be, I may try it when they hash that out.
  • Starwind iscsi free version http://www.starwindsoftware.com/downloads
    This is only on windows, I used it for about half year now and it works pretty stable, the MPIO support seems to be problematic, so I endup using LACP instead,  read/write Caches are okay, however you can’t change it on-the-fly, you have to remove the target and recreat one (WTF?!)
    It also don’t support using raw device in free license, which is a weird restriction I don’t understand.
  • EMC Cellera Uber VSA http://nickapedia.com/
    I installed it, so called unisphere UI needs java plugin, which in turns doesn’t even launch correctly on my windows machine, why am I surprising ? it’s from EMC. maybe I will give another try someday.
  • FalconStor iscsi http://freeiscsisan.falconstor.com/
    This is better, a centos with some custom kernel modules, the UI is also java, it works nonetheless, however this software is troubled with their idea of SANClients, which in order to manage their customized iscsi client , they requie you either put all your initiators (WTF?) in to ACL, or create a CHAP user/pass so that each of your connection can use that to authenticate.
    This is just way too much trouble, I am not going to figure out all the imitator names, they could change anyway, at least give me something like “ALLOW ALL”.

  2 Responses to “free iscsi for Esxi 5.0 — istgt”

  1. >So you can’t just add a network card and expect it shows up, you have to reboot the machine, WTF?

    Never seen hot-swap NIC on any *NIX. i think you are a bit confused there.

Leave a Reply to Mxb Cancel reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)