[libvirt-users] Connect libvirt to iSCSI target

Marco
2013-12-18T00:13:24Z

Hi!

I'm new to libvirt and face problems connecting to an iSCSI target.
What I intend to do is to connect libvirt (I tried virt-manager and
virsh) to an iSCSI target and then boot from the LUNs which contain
the VMs.

I followed the documentation¹ but got stuck at section 12.1.5.4.3.

1)
  virsh pool-define-as \
    --name foo                             \
    --type iscsi                           \
    --source-host vmhost                   \
    --source-dev iqn.2013-11.vmhost:vmpool \
    --target /dev/disk/by-path

2)
  virsh pool-start foo
  error: Failed to start pool foo
  error: internal error: cannot find session

  virsh -c qemu:///system pool-start foo
  error: Failed to start pool foo
  error: internal error: cannot find session

Why can't libvirt find the session, and which session? Running

  iscsiadm --mode discovery --type sendtargets --portal vmhost:3260,1

succeeds and lists the targets. How to connect libvirt to the iSCSI
target?

System info:

Debian sid, Linux 3.11-2-amd64
libvirtd (libvirt) 1.1.4
virsh version: 1.1.4

iSCSI target: FreeNAS-9.1.1


Best regards
Marco

¹
https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Administration_Guide/chap-Virtualization_Administration_Guide-Storage_Pools-Storage_Pools.html#sect-Virtualization-Storage_Pools-Creating-iSCSI