I found that bug 1343245 is about the same general issue. The descriptions in there were great, but since I started to document the debug and potential coding and more here I dupp'ed it onto here. The thoughts there also already were around "how to get the translation done".
I changed title and description here - especially of the testcase - to now cover both. This shall show that it is a more general issue. On the bug itself still waiting for upstream feedback to my mail linked in c#16 ** Description changed: Apparmor prevents qemu-kvm guests from using ZFS volumes. [Impact] - * ZFS storage pools are not usable. + * storage pools are not usable. + Examples with zfs and LVM pools - [Test Case] - 0) Create a zpool (system specific so not documented here) - 1) Create a ZFS storage pool (named like your zpool, "internal" here) - virsh pool-define-as internal zfs - virsh pool-start internal - 2) Create a volume - virsh vol-create-as internal foo 2G - 2) Create a KVM guest - 4) Edit the guest's XML profile to use the ZFS volume (zvol) + [Test Case 1] + # Prep ZFS + 1) Create a zpool + $ for i in $(seq 1 3); do dd if=/dev/zero of=/tmp/fdisk${i} bs=1M count=1024; done + $ sudo zpool create internal /tmp/fdisk* + 2) Create a ZFS storage pool and volume (named like your zpool, "internal" here) + $ virsh pool-define-as internal zfs + $ virsh pool-start internal + $ virsh vol-create-as internal foo 2G + + # prep LVM + 4) prepare a (fake) LVM + $ for i in $(seq 1 3); do dd if=/dev/zero of=/tmp/lvdisk${i} bs=1M count=1024; done + $ sync + $ DISKS=$(for i in $(seq 1 3); do sudo losetup -f show /tmp/lvdisk${i}; done) + $ sudo pvcreate --verbose $DISKS + $ sudo vgcreate --verbose testvg $DISKS + 5) Create LVM Pool and volume + $ virsh pool-define-as testvg logical + $ virsh pool-start testvg + $ virsh vol-create-as testvg guest1 2G + + # Prep Guest and use Pools + 6) Create a KVM guest e.g. via uvtool + $ uvt-simplestreams-libvirt --verbose sync --source http://cloud-images.ubuntu.com/daily arch=amd64 label=daily release=xenial + $ ssh-keygen + $ uvt-kvm create --password=ubuntu testguest release=xenial arch=amd64 label=daily + 7) Edit the guest's XML profile to use the ZFS and LVM volumes (zvol) + <disk type='volume' device='disk'> + <driver name='qemu' type='raw' cache='none'/> + <source pool='internal' volume='foo'/> + <target dev='vda' bus='virtio'/> + </disk> <disk type='volume' device='disk'> - <driver name='qemu' type='raw' cache='none'/> - <source pool='internal' volume='foo'/> + <driver name='qemu' type='raw'/> + <source pool='testvg' volume='guest1'/> <target dev='vda' bus='virtio'/> </disk> - 5) Start the guest + 8) Start the guest The guest refuses to start: - # virsh start nms - error: Failed to start domain foo - error: internal error: process exited while connecting to monitor: 2017-03-29T22:07:31.507017Z qemu-system-x86_64: -drive file=/dev/zvol/internal/foo,format=raw,if=none,id=drive-virtio-disk0,cache=none: Could not open '/dev/zvol/internal/foo': Permission denied + # virsh start nms + error: Failed to start domain foo + error: internal error: process exited while connecting to monitor: 2017-03-29T22:07:31.507017Z qemu-system-x86_64: -drive file=/dev/zvol/internal/foo,format=raw,if=none,id=drive-virtio-disk0,cache=none: Could not open '/dev/zvol/internal/foo': Permission denied dmesg reveals the culprit: apparmor="DENIED" operation="open" profile="libvirt-988a8c25-5190-4762-8170-55dc75fc66ca" name="/dev/zd224" pid=23052 comm="qemu-system-x86" requested_mask="r" denied_mask="r" fsuid=109 ouid=109 apparmor="DENIED" operation="open" profile="libvirt-988a8c25-5190-4762-8170-55dc75fc66ca" name="/dev/zd224" pid=23052 comm="qemu-system-x86" requested_mask="wr" denied_mask="wr" fsuid=109 ouid=109 Checking /etc/apparmor.d/libvirt/libvirt-$UUID.files shows that no "/dev/zdXX" has been added. - [Additional info] # lsb_release -rd Description: Ubuntu 16.04.2 LTS Release: 16.04 # apt-cache policy libvirt-bin apparmor linux-image-generic libvirt-bin: - Installed: 1.3.1-1ubuntu10.8 - Candidate: 1.3.1-1ubuntu10.8 - Version table: - *** 1.3.1-1ubuntu10.8 500 - 500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages - 100 /var/lib/dpkg/status - 1.3.1-1ubuntu10 500 - 500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages + Installed: 1.3.1-1ubuntu10.8 + Candidate: 1.3.1-1ubuntu10.8 + Version table: + *** 1.3.1-1ubuntu10.8 500 + 500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages + 100 /var/lib/dpkg/status + 1.3.1-1ubuntu10 500 + 500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages apparmor: - Installed: 2.10.95-0ubuntu2.5 - Candidate: 2.10.95-0ubuntu2.5 - Version table: - *** 2.10.95-0ubuntu2.5 500 - 500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages - 100 /var/lib/dpkg/status - 2.10.95-0ubuntu2 500 - 500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages + Installed: 2.10.95-0ubuntu2.5 + Candidate: 2.10.95-0ubuntu2.5 + Version table: + *** 2.10.95-0ubuntu2.5 500 + 500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages + 100 /var/lib/dpkg/status + 2.10.95-0ubuntu2 500 + 500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages linux-image-generic: - Installed: 4.4.0.70.76 - Candidate: 4.4.0.70.76 - Version table: - *** 4.4.0.70.76 500 - 500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages - 500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages - 100 /var/lib/dpkg/status - 4.4.0.21.22 500 - 500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages + Installed: 4.4.0.70.76 + Candidate: 4.4.0.70.76 + Version table: + *** 4.4.0.70.76 500 + 500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages + 500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages + 100 /var/lib/dpkg/status + 4.4.0.21.22 500 + 500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages ProblemType: Bug DistroRelease: Ubuntu 16.04 Package: libvirt-bin 1.3.1-1ubuntu10.8 ProcVersionSignature: Ubuntu 4.4.0-70.91-generic 4.4.49 Uname: Linux 4.4.0-70-generic x86_64 NonfreeKernelModules: zfs zunicode zcommon znvpair zavl ApportVersion: 2.20.1-0ubuntu2.5 Architecture: amd64 Date: Wed Mar 29 17:48:06 2017 SourcePackage: libvirt UpgradeStatus: No upgrade log present (probably fresh install) modified.conffile..etc.default.libvirt-guests: [modified] modified.conffile..etc.libvirt.qemu.conf: [modified] modified.conffile..etc.libvirt.qemu.networks.default.xml: [modified] mtime.conffile..etc.default.libvirt-guests: 2016-08-29T21:09:57.632048 mtime.conffile..etc.libvirt.qemu.conf: 2017-03-29T17:26:03.924234 mtime.conffile..etc.libvirt.qemu.networks.default.xml: 2016-04-23T19:24:13.505208 -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1677398 Title: Apparmor prevents using storage pools To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1677398/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs