[linux-lvm] LVM performance vs direct dm-thin
Stuart D. Gathman
stuart at gathman.org
Sun Jan 30 21:39:30 UTC 2022
On Sun, 2022-01-30 at 11:45 -0500, Demi Marie Obenour wrote:
> On Sun, Jan 30, 2022 at 11:52:52AM +0100, Zdenek Kabelac wrote:
> >
>
> > Since you mentioned ZFS - you might want focus on using 'ZFS-only'
> > solution.
> > Combining ZFS or Btrfs with lvm2 is always going to be a painful
> > way as
> > those filesystems have their own volume management.
>
> Absolutely! That said, I do wonder what your thoughts on using loop
> devices for VM storage are. I know they are slower than thin
> volumes,
> but they are also much easier to manage, since they are just ordinary
> disk files. Any filesystem with reflink can provide the needed
> copy-on-write support.
I use loop devices for test cases - especially with simulated IO
errors. Devs really appreciate having an easy reproducer for
database/filesystem bugs (which often involve handling of IO errors).
But not for production VMs.
I use LVM as flexible partitions (i.e. only classic LVs, no thin pool).
Classic LVs perform like partitions, literally using the same driver
(device mapper) with a small number of extents, and are if anything
more recoverable than partition tables. We used to put LVM on bare
drives (like AIX did) - who needs a partition table? But on Wintel,
you need a partition table for EFI and so that alien operating systems
know there is something already on a disk.
Your VM usage is different from ours - you seem to need to clone and
activate a VM quickly (like a vps provider might need to do). We
generally have to buy more RAM to add a new VM :-), so performance of
creating a new LV is the least of our worries.
Since we use LVs like partitions - mixing with btrfs is not an issue.
Just use the LVs like partitions. I haven't tried ZFS on linux - it
may have LVM like features that could fight with LVM. ZFS would be my
first choice on a BSD box.
We do not use LVM raid - but either run mdraid underneath, or let btrfs
do it's data duplication thing with LVs on different spindles.
More information about the linux-lvm
mailing list