MIR or not to MIR (TCM or "LIO") tools

Christian Ehrhardt christian.ehrhardt at canonical.com
Mon Feb 24 13:49:43 UTC 2020


On Tue, Feb 18, 2020 at 3:23 AM Rafael David Tinoco <
rafaeldtinoco at ubuntu.com> wrote:

> Hello all,
>
> I have always used TGT project, despite its bad performance, as iSCSI
> target in Linux, offering iSCSI luns for HA clusters. It was known to me
> that TGT was *not* the best iSCSI target supported in Linux, being LIO
> the chosen project for that (now called TCM:
> https://www.kernel.org/doc/Documentation/target/tcmu-design.txt).
>
> In a recent need, I needed SCSI 3 reservations in those SCSI volumes, to
> test and enable fence_scsi agent, and was getting unclear errors when
> trying to reserve the LUNs.
>
> The following commands - that would register a reservation key, reserve
> a lun, release the reservation and unregister the key - don't work when
> using TGT iSCSI luns with open-scsi and iscsid tool/service.
>
> $ sg_persist -r /dev/sda
> $ sg_persist --out --register --param-sark=123abc /dev/sda
> $ sg_persist --out --reserve --param-rk=123abc --prout-type=5 /dev/sda
>
> prout-type = 5 -> executes SCSI PERSISTENT RESERVE OUT (5Fh) command
>                   with the PREEMPT AND ABORT (05h) service
>
>    (https://bugs.launchpad.net/ubuntu/+source/tgt/+bug/1863688)
>
> $ sg_persist --out --release --param-rk=123abc --prout-type=5 /dev/sda
> $ sg_persist --out --register --param-rk=123abc /dev/sda
>
> With that, its impossible to fence iSCSI luns using corosync/pacemaker
> clusters.
>
> TCM (or LIO) project fully supports fencing and several other iSCSI
> features. It also supports userland backends that can extend backing
> devices so it supports: qcow2, ceph, etc...
>
> Despite being HA only or not, this use case is actually being used in
> this email to show the need to have a tool that configures kernel TCM
> (or LIO) capability as a supported tool (at least IMO).
>
> I have found a recent previous MIR attempt of 1/3 of what is needed:
>
> https://bugs.launchpad.net/ubuntu/+source/python-rtslib-fb/+bug/1854362
>
> But, afaict, we would need MIRs for:
>
> - python3-configshell-fb
> - python3-rtslib-fb
> - targetcli-fb
>
> To have the "targetcli" tool in [main]. Upstream projects are hosted
> together with open-iscsi repository, suggesting that they are actively
> maintained and in good shape.
>
> Has this ever been discussed ? It looks to me something we could/should
> have in 20.04. Thoughts ?
>

IIRC cinder-volume was the last bit holding back a switch.
$ reverse-depends -r focal tgt
Reverse-Depends
===============
* cinder-volume
* tgt-rbd [amd64 arm64 armhf ppc64el s390x]

And at least cinder-volume is in main.
So we'd have to have that changed to make the switch (as we should have
only one supported iSCSI in main).

IIRC that was also the reason we waited on last time and checking the bug
[1] confirms similar thoughts.
It seems you are working with jamespage already to make that switch happen.

Also security needs to process all the extra packages in just three days -
unlikely right?

IMHO while I agree It would be nice for 20.04 but if it is not doable in
time due to all these constraints it is ok as well to "just" target 20.10
with it.
Please be on the same page with @Josh Powers <josh.powers at canonical.com> on
this as this will be quite an intense ride to be squeezed into 20.04.

P.S. FYI another reason in the past was maas but they are in a snap now and
use their "own" tgt, so no dependency to consider anymore.
P.P.S. have you asked (TBH I'd not know where) if some of our primary
charms might depend on tgt?

[1]:
https://bugs.launchpad.net/ubuntu/+source/python-rtslib-fb/+bug/1854362/comments/17


Thanks!
>
> Rafael
>
> --
> ubuntu-server mailing list
> ubuntu-server at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-server
> More info: https://wiki.ubuntu.com/ServerTeam



-- 
Christian Ehrhardt
Staff Engineer, Ubuntu Server
Canonical Ltd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/ubuntu-server/attachments/20200224/f1b37068/attachment-0001.html>


More information about the ubuntu-server mailing list