Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1595681 - RFE: storage: support iSER transport for iSCSI pool
Summary: RFE: storage: support iSER transport for iSCSI pool
Status: NEW
Alias: None
Product: Virtualization Tools
Classification: Community
Component: libvirt
Version: unspecified
Hardware: x86_64
OS: Linux
Target Milestone: ---
Assignee: Libvirt Maintainers
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2018-06-27 11:00 UTC by
Modified: 2019-03-28 20:58 UTC (History)
11 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed:

Attachments (Terms of Use)

Description 2018-06-27 11:00:53 UTC
Description of problem:
libvirt always tries to use the tcp transport even if iser is available and tcp is not.

Version-Release number of selected component (if applicable):
libvirt 4.4.0
open-iscsi 2.0

How reproducible:
Every time.

Steps to Reproduce:
1. Set up a iscsi target with iSER support.
2. Try to connect to it with a client that supports iSER, observe it connecting over TCP.
2. Force disable iscsi_tcp and observe libvirt not being able to make a connection, despite manual invocation working.

Additional info:
It does not even pick up an already existing iSER connection.
I tried looking at src/util/viriscsi.c and strace logs of libvirtd, but as I am not familiar with the project, could not figure out a fix for this.

This is also running on NixOS, but I assume/hope that does not make any difference.

Comment 1 Cole Robinson 2018-06-27 12:58:28 UTC
Thanks for the report. Are you using a libvirt iscsi storage pool, or an iscsi network <disk> attached to the VM? Please provide the associate XML

Comment 2 2018-06-28 13:43:11 UTC
I am using a libvirt iscsi storage pool.

Comment 3 Cole Robinson 2018-06-28 14:19:02 UTC
Please provide your pool xml, you can edit out any hostnames if you want: sudo virsh pool-dumpxml $poolname

Comment 4 2018-06-28 14:45:31 UTC
I was trying to attach it, but the attachment tool was giving me 400 bad request. So I will just paste it below:

OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
  virsh pool-edit windows
or other application using the libvirt API.

<pool type='iscsi'>
  <capacity unit='bytes'>0</capacity>
  <allocation unit='bytes'>0</allocation>
  <available unit='bytes'>0</available>
    <host name='nas'/>
    <device path=''/>

Comment 5 Cole Robinson 2018-07-12 20:38:25 UTC
Yeah I don't think libvirt has any support for it. Googling brings up some patches but nothing applied that I can tell:

July 2010 for storage pool:
Dec 2017 for qemu iscsi:

There's something in openstack docs about a libvirt iser driver but I'm guessing it's implemented outside of libvirt somehow:

Note You need to log in before you can comment on or make changes to this bug.