[libvirt] iscsi support?

Hi folks, I would like to try out iscsi for virtual block devices. This would be very interesting especially for a migration at run time. Problem is: It still doesn't work :-(. libvirt can login to the iscsi pool, but using virsh vol-list I just get an empty list, even though /dev/disk/by-path shows the expected block devices. There was an old thread on this list describing the procedure: http://www.mail-archive.com/libvir-list@redhat.com/msg06320.html Are there any news about this? I am using libvirt 0.8.1, iet 1.4.20.1 and open-iscsi 2.0.871.3, as included in Debian Testing. Regards Harri

On 07/09/2010 10:15 PM, Harald Dunkel wrote:
Hi folks,
I would like to try out iscsi for virtual block devices. This would be very interesting especially for a migration at run time.
Hi Harald, Would the steps used for Fedora help? Chris Curran has been writing detailed step by step procedures for exactly this, but for Fedora. This is a snapshot of the docs from yesterday, as they're still being actively expanded, but may help get you started? http://justinclift.fedorapeople.org/Virtualization_Guide/chap-Virtualization... Any use? Regards and best wishes, Justin Clift

On Fri, Jul 09, 2010 at 02:15:58PM +0200, Harald Dunkel wrote:
Hi folks,
I would like to try out iscsi for virtual block devices. This would be very interesting especially for a migration at run time.
Problem is: It still doesn't work :-(. libvirt can login to the iscsi pool, but using virsh vol-list I just get an empty list, even though /dev/disk/by-path shows the expected block devices.
There was an old thread on this list describing the procedure:
http://www.mail-archive.com/libvir-list@redhat.com/msg06320.html
Are there any news about this?
I am using libvirt 0.8.1, iet 1.4.20.1 and open-iscsi 2.0.871.3, as included in Debian Testing.
Hi Harri, It works fine on my Fedora boxes across several versions, so there must be some difference in where information is located in Debian and Fedora. I'm having a quick look. Are you familiar enough with C that you could have a look through the libvirt code and try to track it down? Dave

On Fri, Jul 09, 2010 at 11:30:59AM -0400, Dave Allan wrote:
On Fri, Jul 09, 2010 at 02:15:58PM +0200, Harald Dunkel wrote:
Hi folks,
I would like to try out iscsi for virtual block devices. This would be very interesting especially for a migration at run time.
Problem is: It still doesn't work :-(. libvirt can login to the iscsi pool, but using virsh vol-list I just get an empty list, even though /dev/disk/by-path shows the expected block devices.
There was an old thread on this list describing the procedure:
http://www.mail-archive.com/libvir-list@redhat.com/msg06320.html
Are there any news about this?
I am using libvirt 0.8.1, iet 1.4.20.1 and open-iscsi 2.0.871.3, as included in Debian Testing.
Hi Harri,
It works fine on my Fedora boxes across several versions, so there must be some difference in where information is located in Debian and Fedora. I'm having a quick look. Are you familiar enough with C that you could have a look through the libvirt code and try to track it down?
Hi Harri, I spun up a Debian testing box with the versions of libvirt, iet & open-iscsi that you're using, and it works fine for me. My pool xml is: <pool type="iscsi"> <name>iscsitest</name> <source> <host name="localhost"/> <device path="iqn.2001-04.com.example:foobarbaz"/> </source> <target> <path>/dev/disk/by-path</path> </target> </pool> Gives the 3 configured LUs as volumes: Name Path ----------------------------------------- 3.0.0.0 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-0 3.0.0.1 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-1 3.0.0.2 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-2 Is your target path in your xml what you think it is? Dave

Hi Dave, Sorry for the delay. See below On 07/12/10 20:23, Dave Allan wrote:
Hi Harri,
I spun up a Debian testing box with the versions of libvirt, iet& open-iscsi that you're using, and it works fine for me. My pool xml is:
<pool type="iscsi"> <name>iscsitest</name> <source> <host name="localhost"/> <device path="iqn.2001-04.com.example:foobarbaz"/> </source> <target> <path>/dev/disk/by-path</path> </target> </pool>
Gives the 3 configured LUs as volumes:
Name Path ----------------------------------------- 3.0.0.0 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-0 3.0.0.1 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-1 3.0.0.2 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-2
In my environment the new volume is not listed by virsh vol-list, even though /dev/disk/by-path shows the iscsi block devices: # virsh vol-list --pool iscsi.dpcl064 Name Path ----------------------------------------- # ls -al /dev/disk/by-path/ total 0 drwxr-xr-x 2 root root 320 Jul 15 10:56 . drwxr-xr-x 6 root root 120 Jul 15 2010 .. lrwxrwxrwx 1 root root 9 Jul 15 10:56 ip-172.19.97.183:3260-iscsi-iqn.2010-07.de.aixigo.ac.dpcl064:storage-lun-0 -> ../../sdd lrwxrwxrwx 1 root root 10 Jul 15 10:56 ip-172.19.97.183:3260-iscsi-iqn.2010-07.de.aixigo.ac.dpcl064:storage-lun-0-part1 -> ../../sdd1 lrwxrwxrwx 1 root root 10 Jul 15 10:56 ip-172.19.97.183:3260-iscsi-iqn.2010-07.de.aixigo.ac.dpcl064:storage-lun-0-part2 -> ../../sdd2 lrwxrwxrwx 1 root root 9 Jul 15 09:32 pci-0000:00:03.0-usb-0:2:1.0-scsi-0:0:0:0 -> ../../sdc lrwxrwxrwx 1 root root 9 Jul 15 09:33 pci-0000:01:0e.0-scsi-0:0:0:0 -> ../../sda : : The virt-manager GUI knows about the defined iscsi volume, so I would guess this is just a minor bug in virsh. Regards Harri

On Thu, Jul 15, 2010 at 11:11:40AM +0200, Harald Dunkel wrote:
Hi Dave,
Sorry for the delay. See below
On 07/12/10 20:23, Dave Allan wrote:
Hi Harri,
I spun up a Debian testing box with the versions of libvirt, iet& open-iscsi that you're using, and it works fine for me. My pool xml is:
<pool type="iscsi"> <name>iscsitest</name> <source> <host name="localhost"/> <device path="iqn.2001-04.com.example:foobarbaz"/> </source> <target> <path>/dev/disk/by-path</path> </target> </pool>
Gives the 3 configured LUs as volumes:
Name Path ----------------------------------------- 3.0.0.0 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-0 3.0.0.1 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-1 3.0.0.2 /dev/disk/by-path/ip-127.0.0.1:3260-iscsi-iqn.2001-04.com.example:foobarbaz-lun-2
In my environment the new volume is not listed by virsh vol-list, even though /dev/disk/by-path shows the iscsi block devices:
# virsh vol-list --pool iscsi.dpcl064 Name Path -----------------------------------------
# ls -al /dev/disk/by-path/ total 0 drwxr-xr-x 2 root root 320 Jul 15 10:56 . drwxr-xr-x 6 root root 120 Jul 15 2010 .. lrwxrwxrwx 1 root root 9 Jul 15 10:56 ip-172.19.97.183:3260-iscsi-iqn.2010-07.de.aixigo.ac.dpcl064:storage-lun-0 -> ../../sdd lrwxrwxrwx 1 root root 10 Jul 15 10:56 ip-172.19.97.183:3260-iscsi-iqn.2010-07.de.aixigo.ac.dpcl064:storage-lun-0-part1 -> ../../sdd1 lrwxrwxrwx 1 root root 10 Jul 15 10:56 ip-172.19.97.183:3260-iscsi-iqn.2010-07.de.aixigo.ac.dpcl064:storage-lun-0-part2 -> ../../sdd2 lrwxrwxrwx 1 root root 9 Jul 15 09:32 pci-0000:00:03.0-usb-0:2:1.0-scsi-0:0:0:0 -> ../../sdc lrwxrwxrwx 1 root root 9 Jul 15 09:33 pci-0000:01:0e.0-scsi-0:0:0:0 -> ../../sda : :
The virt-manager GUI knows about the defined iscsi volume, so I would guess this is just a minor bug in virsh.
I set up a debian testing box with the same versions of the software you have, and I don't see any problems. Virsh displays the voumes correctly, so I don't think this is a bug. Virsh and virt-manager get their information from the same source. If you're seeing a difference in the volume listing, then you're very likely looking at two different pools. Can you post the output of virsh pool-dumpxml iscsi.dpcl064 Dave

I did an upgrade to libvirt-0.8.2 today. Using this new version the problem seems to be gone. I would guess you started your test with 0.8.2, too? Many thanx for your help. Regards Harri

On Mon, Jul 19, 2010 at 03:01:29PM +0200, Harald Dunkel wrote:
I did an upgrade to libvirt-0.8.2 today. Using this new version the problem seems to be gone. I would guess you started your test with 0.8.2, too?
Many thanx for your help.
Regards
Harri
Harri, Glad it's working for you now. However, as I said before, I installed the *exact same versions you did* and it worked properly. I do not want to leave the impression in the archives that something was broken. I saw no evidence of a problem. My iSCSI pool worked properly. Dave
participants (3)
-
Dave Allan
-
Harald Dunkel
-
Justin Clift