[libvirt-users] ZFS: creating a pool in a created zfs does not work, only when using the whole zfs-pool.

Roman Bogorodskiy bogorodskiy at gmail.com
Mon Apr 24 14:37:39 UTC 2017


  Thies C. Arntzen wrote:

> Thank you for your reply.
> 
> I have managed to create a virtual machine on my ZFS-filesystem using
> virt-install:-) It seems to me that my version of libvirt (Ubuntu 17.04)
> has problems enumerating the devices when "virsh vol-list“ is used. The
> volumes are available for virt-install but not thru virsh or virt-manager.
> 
> As to when the volumes disappear in virsh vol-list - I have no idea. I’m
> not restarting libvirtd. It *seems* to me that (wild guess) they can be
> listed as long as they are fresh and  in some in memory cache and never get
> displayed if you have to enumerate from the filesystem. There are no
> error-messages that I can see - the volumes are simply not displayed.

I see what's the error. When I try to manually call 'pool-refresh', I can
see the error message:

2017-04-24 14:20:32.102+0000: 34500342784: error : virCommandWait:2572 : internal error: Child process (/sbin/zpool get -Hp health,size,free,allocated testpool0/zpool) unexpected exit status 1: cannot open 'testp
ool0/zpool': invalid character '/' in pool name

So, apparently, things work as expected only when the source pool is really
a pool (such as listed by e.g. 'zpool list'). Just like you described in
your original message.

I need to think if I can make this work in this nested scenario or at
least forbid source pool with "/" in it.


> Best regards,
> thies
> 
> 
> 
> 
> 
> 
> Am 23. April 2017 um 15:14:55, Roman Bogorodskiy (bogorodskiy at gmail.com)
> schrieb:
> 
> Thies C. Arntzen wrote:
> 
> > Hi,
> >
> > I’m new here so apologies if this has been answered before.
> >
> > I have a box that uses ZFS for everything (ubuntu 17.04) and I want to
> > create a libvirt pool on that. My ZFS pool is named „big"
> >
> > So i do:
> >
> > > zfs create big/zpool
> > > virsh pool-define-as --name zpool --source-name big/zpool --type zfs
> > > virsh pool-start zpool
> > > virsh pool-autostart zpool
> > > virsh pool-list
> > > virsh vol-create-as --pool zpool --name test1 --capacity 1G
> > > virsh vol-list zpool
> >
> > Everything seems to work (no error message, vol-list shows the created
> > volume, I can see the volume
> > via zfs list -t all). -BUT- I cannot use that volume via virt-manager
> 
> Could you check if you can use this volume via virsh, and paste an error
> message in case if it provides one? Or maybe an error message if
> virt-manager gives one.
> 
> > and after a short while it’s
> > no longer listed via virsh vol-list zpool. The very same thing works
> 
> Does "after a short while" involve host reboots, libvirtd restarts or
> anything like that?
> 
> Anyway, I've just checked the scenario you provided on FreeBSD and I was
> able to create a VM using this new 'test1' volume. I was using just
> virsh though.
> 
> I'll try to setup Ubutun 17.04 VM and check there.
> 
> > as expected if I create a new zfs
> > pool which I hand into libvirt. So instead of creating a pool from
> > "big/zpool“ I create a pool names
> > „somepool“ on a free device and -voila- everything works.
> >
> > Hope I did make myself clear?
> >
> > Best regards,
> > thies
> >
> > _______________________________________________
> > libvirt-users mailing list
> > libvirt-users at redhat.com
> > https://www.redhat.com/mailman/listinfo/libvirt-users
> 
> Roman Bogorodskiy

Roman Bogorodskiy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvirt-users/attachments/20170424/945617d0/attachment.sig>


More information about the libvirt-users mailing list