Lio iSCSI target on OpenSUSE

iscsiopensuse

I want to use an iSCSI targeting framework that supports SCSI-3 and VAAI for use as an iSCSI SAN cluster across 2 servers.

As far as i'm aware I can use either Lio (http://linux-iscsi.org/wiki/Main_Page) or QuadStor (http://www.quadstor.com/). Quadstor isn't as mature as LIO hence my bias towards it.

I have 2 servers built on openSUSE 12.3 (of course this can be changed) for the moment and am having a hell of a problem finding out how to use LIO.

LIO was integrated into the Linux Kernel at v2.6.38 in January 2011 and is now used as the default SCSI framework in Linux. That's all fine, but how the hell do I use it?

According to their docs all I have to do is install targetcli from their repo for openSUSE: http://linux-iscsi.org/wiki/Target

Did that, nada.

What's the best OS or best way to get about using LIO that supports VAAI preferably through kernel integration?

Best Answer

Basically there are 4 commands that need to be implemented in target for VAAI support, namely:

  1. WriteSame
  2. UNMAP
  3. ComareAndWrite(ATS)
  4. EXtendedCOPY(XCOPY)

On the LIO side you need to set emulate_3pc(Xcopy),emulate_tpu(UNMAP) and emulate_caw(ATS), so you will get VAAI supported status for the LIO target on the esxi side.

targetcli> /backstore/fileio/disk1>set attributes emulate_3pc=1,emultate_tpu=1,emulate_caw=1

Refer linux-iscsi.org/wiki/Targetcli for details.