Subject: Re: Current state of Logical Volumes in NetBSD
To: Alistair Crooks <agc@pkgsrc.org>
From: Adam Hamsik <haaaad@gmail.com>
List: netbsd-users
Date: 11/11/2007 22:17:57
On Nov,Sunday 11 2007, at 12:36 PM, Alistair Crooks wrote:

> On Sun, Nov 11, 2007 at 11:35:45AM +0100, Markus Kolb wrote:
>> Hi,
>>
>> I am thinking of switching to NetBSD.
>> But I need a Logical Volume Management solution for resizing  
>> partitions
>> and at least expanding the fs on them and I can't find any up-to-date
>> information related to this.
>> - Vinum is removed
>> - ccd seems to only concatenate different physical disks
>> - dk wedges seem to be for partitioning big disks or have I  
>> misunderstood?
>>
>> If there is anything with PV, PVGroups, LVGroups and LVolumes  
>> possible
>> how is it called in NetBSD?
>
> Yes, vinum was removed because it was not really being maintained, and
> had some bitrot problems.  ccds will span across multiple physical
> disks, but isn't the dynamic volume manager that you're looking for.
>
> I don't want to try to speak for mycroft, but my understanding of
> his idea of wedges was that they are just simple things, which use
> the strategy functionality to route requests to different areas
> on the block device(s). Something crafted on top of this could provide
> a nice, light volume manager.

Yes, that's absolutely true. NetBSD wedges provides linear disk blocks  
mapping same as Linux md. IMO it should be not so hard to write simple  
volume manager for NetBSD on top of wedges. There are 3-4 options how  
to do it:

1)use this years SOC code from ZFS port. I don't know if this code is  
in useable state.
   if not it would be good give more effort at this.

2)port Linux libdevmapper and lvm2 tools to netbsd on top of our  
wedges with some support. I think that this way we keep GPL out of  
kernel and we can use IMO really good linux lvm NetBSD volume manager.  
Intro to Linux Lvm internals [2].

3) write tools + wedge device library from scratch

I prefer 2 because of

Pros

a) well tested code
b) was already done [1]
c) I think that linux LVM is better than nothing.

Cons

a) add GPL stuff to netbsd base system :(
b) too much people here hate Linux and Linux stuff :).

>
> In general, though, you're right - volume management is something we
> need to do better.  Whether that's by gobbing the disks altogether in
> a pool a la ZFS is something we want to do (and I should imagine the
> security types would have a view on that), or by going the more
> traditional route with volume management (see the wedges route above),
> we need to start looking into this more fully. Especially as our
> iSCSI initiator (plug, plug) now exists and works well.
>
> I'd be really interested in talking about this, though it might be
> better hosted on tech-kern.
>

[1]http://mail-index.netbsd.org/netbsd-users/2003/02/04/0012.html
[2]http://mail-index.netbsd.org/tech-kern/2005/06/04/0010.html
Regards

Adam.