Thread (12 messages) 12 messages, 6 authors, 2012-12-28

Re: Another novice question & comment

From: Chris Murphy <hidden>
Date: 2012-12-28 05:03:18

On Dec 27, 2012, at 5:34 PM, Russell Coker [off-list ref] wrote:
On Fri, 28 Dec 2012, Chris Murphy [off-list ref] wrote:
quoted
On Dec 27, 2012, at 12:27 PM, Gene Czarcinski [off-list ref] wrote:
quoted
Oh thanks for that little reminder that you can put btrfs on an LV.
I find it's more trouble than it's worth. It doesn't bring much to the
table.
I've tried using LVM and BTRFS together.  While they work the combination 
doesn't seem to offer much benefit.  LVM is good for snapshots (which BTRFS does 
better) and also for dividing a device that is larger than your filesystem can 
properly support (also not a problem for BTRFS).

http://etbe.coker.com.au/2012/12/17/using-btrfs/

At the above URL I've documented some of the things I'm currently doing with 
BTRFS in production.  I'm still considering what's the best way of managing 
virtual machines. My current method is to run a server with two disks that 
have separate LVM VGs and give each VM a pair of block devices to run BTRFS 
RAID-1.

The other option I'm considering is a single BTRFS RAID-1 taking all disk 
space and giving each VM a single block device that's a file on the BTRFS 
filesystem.  Presumably that will give a significant performance hit because of 
double filesystem overhead but will make management a little easier and 
possibly reduce seeks when multiple VMs are writing to disk.
What the VMs are doing makes a big difference. But in any case you'd need to benchmark the various configurations that are possible.

Off hand it seems to be better to have the host running the more complex/capable file system, in this case btrfs on whole drives. And then the guests write to a file, with a simpler file system like ext4, and optionally disable journaling.

For a handful of VMs that aren't doing heavy writes, then either dedicated partitions or LVs (in effect the same thing), is probably OK. But I suspect as you get busier VMs, or add more VMs, this will not scale. You'll quickly get too much disk contention, VM's demanding their own disk region is being written to NOW and will simply slow down while they wait for the disk to handle the request. Whereas if you have the VM guests use ext4 (optionally disable journaling) to a file, either XFS or Btrfs will aggregate those requests much more efficiently than individual VMs can.

But still needs to be tested.

Chris Murphy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help