All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: storage considerations
       [not found] ` <7B7881568CF40E4388B615CD06F87B980989E9-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
@ 2009-02-03 16:38   ` Daniel Lezcano
       [not found]     ` <49887307.1080105-GANU6spQydw@public.gmane.org>
  0 siblings, 1 reply; 13+ messages in thread
From: Daniel Lezcano @ 2009-02-03 16:38 UTC (permalink / raw)
  To: Dietmar Maurer; +Cc: Linux Containers

Dietmar Maurer wrote:
> Hi Daniel,
>
> I think we should have several options for the root storage:
>
> 1.) simply use the host filesystem (like Openvz)
>
> 	- special quota support is needed (simfs?)
>
> 	- quota support depends on ext3 fs, so this only works for
> 	  local attached storage (does not work on NFS)
>
> 	- LVM snapshots are slow, because the snapshot includes all
> container
> 	  on that filesystem.
>
> 	- it is easy to expand/shrink storage
>
> 	- best storage consolidation (storage overcommit possible)
>   


> 2.) loop mounting an image (dm-loop)
>
> 	- quota works
>
> 	- works on any filesystem (even NFS)
>
> 	- don't know how to make snapshots?
>   
Perhaps we can use the future union mount or unionfs in order to make 
incremental snapshot ?
> 	- difficult to resize (but manageable)
>
> 	- slow
>
> 3.) use a block device
>
> 	- works great with LVM2 volumes 
>
> 	- quota works
>
> 	- best performance
>
> 	- works with shared block devices (incredible fast migrations)
>
> 	- snapshots works (at least when using an LVM2 volume)
>
> 	- it is difficult to resize block devices (but manageable)
>
> The question is: when do we mount the root block device?
>
> OpenVZ has one additional state, called 'mounted'. For example you can
> do:
>
> # vzctl mount VMID
> # vzctl umount VMID
>
> Or we simply mount the root when we create the container?
>
> What do you think?
>   
It is very interesting. Thanks for giving an overview of the available 
storage solutions.
You have a lot of idea and I need some time to compile them :)

At present lxc provides a rootfs which is symlink to the directory to 
chroot. It could be nice is to replace this by a directory and bind 
mount something on top of it. By "something" I mean one of the solutions 
you are proposing or something else.
I would prefer to find a generic solution, that is,  a configuration 
format which can be interpreted in a generic way by lxc.
The fstab file format is a good candidate :)
We can:
 1 - replace the fstab file by a new keyword lxc.mount = "a fstab line"
 2 - each time this keyword is found add a mntentry in a mount list of 
the configuration
 3 - automatically add the bind mount of the rootfs in this list when 
the lxc.rootfs is found

 From the point of view of the configuration / setup:

the lxc-create creates the fstab file (do not mount anything otherwise 
that will be lost at reboot).
the lxc-start/lxc-execute mount everything (it is up to the user to 
define the right order in the configuration file).

For example:

lxc.mount = myhost:/linux /linux nfs defaults 0 0
lxc.rootfs = /root/debian4

That will create the fstab file in the container configuration tree:

myhost:/mydistro /root/mydistro nfs defaults 0 0
/root/mydistro  /var/lxc/debian4/rootfs bind 0 0

This fstab can be used with a script for example to unshare the mount 
namespace, bind mount the fstab on top of /etc/fstab and call mount -a :)

In any case, the configuration file stays generic and a new fs support 
can be added without changing the lxc version.

Shall this fit your needs ?

^ permalink raw reply	[flat|nested] 13+ messages in thread

* RE: storage considerations
       [not found]     ` <49887307.1080105-GANU6spQydw@public.gmane.org>
@ 2009-02-03 17:14       ` Dietmar Maurer
  2009-02-04 16:05       ` Serge E. Hallyn
  2009-02-05  7:08       ` Dietmar Maurer
  2 siblings, 0 replies; 13+ messages in thread
From: Dietmar Maurer @ 2009-02-03 17:14 UTC (permalink / raw)
  To: Daniel Lezcano; +Cc: Linux Containers

> I would prefer to find a generic solution, that is,  a configuration
> format which can be interpreted in a generic way by lxc.
> The fstab file format is a good candidate :)
> We can:
>  1 - replace the fstab file by a new keyword lxc.mount = "a fstab
line"
>  2 - each time this keyword is found add a mntentry in a mount list of
> the configuration
>  3 - automatically add the bind mount of the rootfs in this list when
> the lxc.rootfs is found
> 
>  From the point of view of the configuration / setup:
> 
> the lxc-create creates the fstab file (do not mount anything otherwise
> that will be lost at reboot).
> the lxc-start/lxc-execute mount everything (it is up to the user to
> define the right order in the configuration file).
> 
> For example:
> 
> lxc.mount = myhost:/linux /linux nfs defaults 0 0
> lxc.rootfs = /root/debian4
> 
> That will create the fstab file in the container configuration tree:
> 
> myhost:/mydistro /root/mydistro nfs defaults 0 0
> /root/mydistro  /var/lxc/debian4/rootfs bind 0 0
> 
> This fstab can be used with a script for example to unshare the mount
> namespace, bind mount the fstab on top of /etc/fstab and call mount -a
> :)
> 
> In any case, the configuration file stays generic and a new fs support
> can be added without changing the lxc version.
> 
> Shall this fit your needs ?

Yes, I guess that would work for me.

- Dietmar

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: storage considerations
       [not found]     ` <49887307.1080105-GANU6spQydw@public.gmane.org>
  2009-02-03 17:14       ` Dietmar Maurer
@ 2009-02-04 16:05       ` Serge E. Hallyn
       [not found]         ` <20090204160518.GC2039-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
  2009-02-05  7:08       ` Dietmar Maurer
  2 siblings, 1 reply; 13+ messages in thread
From: Serge E. Hallyn @ 2009-02-04 16:05 UTC (permalink / raw)
  To: Daniel Lezcano; +Cc: Linux Containers, Dietmar Maurer

Quoting Daniel Lezcano (daniel.lezcano-GANU6spQydw@public.gmane.org):
> Dietmar Maurer wrote:
> > Hi Daniel,
> >
> > I think we should have several options for the root storage:
> >
> > 1.) simply use the host filesystem (like Openvz)
> >
> > 	- special quota support is needed (simfs?)
> >
> > 	- quota support depends on ext3 fs, so this only works for
> > 	  local attached storage (does not work on NFS)
> >
> > 	- LVM snapshots are slow, because the snapshot includes all
> > container
> > 	  on that filesystem.

I'm looking forward to the btrfs, tux3, and nilfs snapshotting
capabilities.

-serge

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: storage considerations
       [not found]         ` <20090204160518.GC2039-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
@ 2009-02-04 16:52           ` Daniel Lezcano
       [not found]             ` <4989C7C0.6060906-GANU6spQydw@public.gmane.org>
  0 siblings, 1 reply; 13+ messages in thread
From: Daniel Lezcano @ 2009-02-04 16:52 UTC (permalink / raw)
  To: Serge E. Hallyn; +Cc: Linux Containers, Dietmar Maurer

Serge E. Hallyn wrote:
> Quoting Daniel Lezcano (daniel.lezcano-GANU6spQydw@public.gmane.org):
>   
>> Dietmar Maurer wrote:
>>     
>>> Hi Daniel,
>>>
>>> I think we should have several options for the root storage:
>>>
>>> 1.) simply use the host filesystem (like Openvz)
>>>
>>> 	- special quota support is needed (simfs?)
>>>
>>> 	- quota support depends on ext3 fs, so this only works for
>>> 	  local attached storage (does not work on NFS)
>>>
>>> 	- LVM snapshots are slow, because the snapshot includes all
>>> container
>>> 	  on that filesystem.
>>>       
>
> I'm looking forward to the btrfs, tux3, and nilfs snapshotting
> capabilities.
>   
Interesting, especially the nilfs.
The COW file systems is missing in the linux kernel. Do you think the 
btrfs has a chance to go to mainline ?

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: storage considerations
       [not found]             ` <4989C7C0.6060906-GANU6spQydw@public.gmane.org>
@ 2009-02-04 17:09               ` Serge E. Hallyn
  2009-02-04 23:04               ` Oren Laadan
  1 sibling, 0 replies; 13+ messages in thread
From: Serge E. Hallyn @ 2009-02-04 17:09 UTC (permalink / raw)
  To: Daniel Lezcano; +Cc: Linux Containers, Dietmar Maurer

Quoting Daniel Lezcano (daniel.lezcano-GANU6spQydw@public.gmane.org):
> Serge E. Hallyn wrote:
>> Quoting Daniel Lezcano (daniel.lezcano-GANU6spQydw@public.gmane.org):
>>   
>>> Dietmar Maurer wrote:
>>>     
>>>> Hi Daniel,
>>>>
>>>> I think we should have several options for the root storage:
>>>>
>>>> 1.) simply use the host filesystem (like Openvz)
>>>>
>>>> 	- special quota support is needed (simfs?)
>>>>
>>>> 	- quota support depends on ext3 fs, so this only works for
>>>> 	  local attached storage (does not work on NFS)
>>>>
>>>> 	- LVM snapshots are slow, because the snapshot includes all
>>>> container
>>>> 	  on that filesystem.
>>>>       
>>
>> I'm looking forward to the btrfs, tux3, and nilfs snapshotting
>> capabilities.
>>   
> Interesting, especially the nilfs.
> The COW file systems is missing in the linux kernel. Do you think the  
> btrfs has a chance to go to mainline ?

It's in Linus' tree at the moment :)  Just needs to stabilize...

-serge

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: storage considerations
       [not found]             ` <4989C7C0.6060906-GANU6spQydw@public.gmane.org>
  2009-02-04 17:09               ` Serge E. Hallyn
@ 2009-02-04 23:04               ` Oren Laadan
       [not found]                 ` <498A1EE6.3000204-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
  1 sibling, 1 reply; 13+ messages in thread
From: Oren Laadan @ 2009-02-04 23:04 UTC (permalink / raw)
  To: Daniel Lezcano; +Cc: Linux Containers, Dietmar Maurer



Daniel Lezcano wrote:
> Serge E. Hallyn wrote:
>> Quoting Daniel Lezcano (daniel.lezcano-GANU6spQydw@public.gmane.org):
>>   
>>> Dietmar Maurer wrote:
>>>     
>>>> Hi Daniel,
>>>>
>>>> I think we should have several options for the root storage:
>>>>
>>>> 1.) simply use the host filesystem (like Openvz)
>>>>
>>>> 	- special quota support is needed (simfs?)
>>>>
>>>> 	- quota support depends on ext3 fs, so this only works for
>>>> 	  local attached storage (does not work on NFS)
>>>>
>>>> 	- LVM snapshots are slow, because the snapshot includes all
>>>> container
>>>> 	  on that filesystem.
>>>>       
>> I'm looking forward to the btrfs, tux3, and nilfs snapshotting
>> capabilities.
>>   
> Interesting, especially the nilfs.
> The COW file systems is missing in the linux kernel. Do you think the 
> btrfs has a chance to go to mainline ?

We've been using NILFS (v1) for 2 years already with Zap, and it works
quite well. We had to make slight (trivial) changes to be able to
control it nicely for c/r purposes.

See our DejaView paper at
	http://www.ncl.cs.columbia.edu/publications/sosp2007_dejaview.pdf

Oren.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* RE: storage considerations
       [not found]                 ` <498A1EE6.3000204-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
@ 2009-02-05  7:01                   ` Dietmar Maurer
       [not found]                     ` <7B7881568CF40E4388B615CD06F87B98098A12-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
  0 siblings, 1 reply; 13+ messages in thread
From: Dietmar Maurer @ 2009-02-05  7:01 UTC (permalink / raw)
  To: Oren Laadan, Daniel Lezcano; +Cc: Linux Containers

> >>> Dietmar Maurer wrote:
> >>>
> >>>> Hi Daniel,
> >>>>
> >>>> I think we should have several options for the root storage:
> >>>>
> >>>> 1.) simply use the host filesystem (like Openvz)
> >>>>
> >>>> 	- special quota support is needed (simfs?)
> >>>>
> >>>> 	- quota support depends on ext3 fs, so this only works for
> >>>> 	  local attached storage (does not work on NFS)
> >>>>
> >>>> 	- LVM snapshots are slow, because the snapshot includes all
> >>>> container
> >>>> 	  on that filesystem.
> >>>>
> >> I'm looking forward to the btrfs, tux3, and nilfs snapshotting
> >> capabilities.
> >>
> > Interesting, especially the nilfs.
> > The COW file systems is missing in the linux kernel. Do you think
the
> > btrfs has a chance to go to mainline ?
> 
> We've been using NILFS (v1) for 2 years already with Zap, and it works
> quite well. We had to make slight (trivial) changes to be able to
> control it nicely for c/r purposes.

NILFS, BTRFS, ... maybe provide solution for snapshots, but quota
support
is still missing (we need quotas on subdirectories)?

And a FS independent solution would be great, so that it works on top of
NFS too. 

So UnionFS looks good, but it does not provide real snapshots (using 
base + incremental change looks clumsy for our purpose). I am also not
sure
if quota works on UnionFS?

- Dietmar

^ permalink raw reply	[flat|nested] 13+ messages in thread

* RE: storage considerations
       [not found]     ` <49887307.1080105-GANU6spQydw@public.gmane.org>
  2009-02-03 17:14       ` Dietmar Maurer
  2009-02-04 16:05       ` Serge E. Hallyn
@ 2009-02-05  7:08       ` Dietmar Maurer
  2 siblings, 0 replies; 13+ messages in thread
From: Dietmar Maurer @ 2009-02-05  7:08 UTC (permalink / raw)
  To: Daniel Lezcano; +Cc: Linux Containers

> > 2.) loop mounting an image (dm-loop)
> >
> > 	- quota works
> >
> > 	- works on any filesystem (even NFS)
> >
> > 	- don't know how to make snapshots?
> >
> Perhaps we can use the future union mount or unionfs in order to make
> incremental snapshot ?

Or maybe it is possible to make an LVM snapshot of a dm-loop device? (I
already
asked that on the Linux-lvm mailing list but got no answer).

- Dietmar

^ permalink raw reply	[flat|nested] 13+ messages in thread

* RE: [Devel] RE: storage considerations
       [not found]                     ` <7B7881568CF40E4388B615CD06F87B98098A12-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
@ 2009-02-05 10:56                       ` Dietmar Maurer
  2009-02-05 15:36                       ` Serge E. Hallyn
  1 sibling, 0 replies; 13+ messages in thread
From: Dietmar Maurer @ 2009-02-05 10:56 UTC (permalink / raw)
  To: Oren Laadan, Daniel Lezcano; +Cc: Linux Containers

> And a FS independent solution would be great, so that it works on top
> of NFS too.

Replying to myself. I just noticed that this is not possible, because
NFS is a shared file system. So the only option for NFS would be a loop
mount.

- Dietmar

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: storage considerations
       [not found]                     ` <7B7881568CF40E4388B615CD06F87B98098A12-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
  2009-02-05 10:56                       ` [Devel] " Dietmar Maurer
@ 2009-02-05 15:36                       ` Serge E. Hallyn
       [not found]                         ` <20090205153638.GD27410-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
  1 sibling, 1 reply; 13+ messages in thread
From: Serge E. Hallyn @ 2009-02-05 15:36 UTC (permalink / raw)
  To: Dietmar Maurer; +Cc: Linux Containers

Quoting Dietmar Maurer (dietmar-YTcQvvOqK21BDgjK7y7TUQ@public.gmane.org):
> > >>> Dietmar Maurer wrote:
> > >>>
> > >>>> Hi Daniel,
> > >>>>
> > >>>> I think we should have several options for the root storage:
> > >>>>
> > >>>> 1.) simply use the host filesystem (like Openvz)
> > >>>>
> > >>>> 	- special quota support is needed (simfs?)
> > >>>>
> > >>>> 	- quota support depends on ext3 fs, so this only works for
> > >>>> 	  local attached storage (does not work on NFS)
> > >>>>
> > >>>> 	- LVM snapshots are slow, because the snapshot includes all
> > >>>> container
> > >>>> 	  on that filesystem.
> > >>>>
> > >> I'm looking forward to the btrfs, tux3, and nilfs snapshotting
> > >> capabilities.
> > >>
> > > Interesting, especially the nilfs.
> > > The COW file systems is missing in the linux kernel. Do you think
> the
> > > btrfs has a chance to go to mainline ?
> > 
> > We've been using NILFS (v1) for 2 years already with Zap, and it works
> > quite well. We had to make slight (trivial) changes to be able to
> > control it nicely for c/r purposes.
> 
> NILFS, BTRFS, ... maybe provide solution for snapshots, but quota
> support
> is still missing (we need quotas on subdirectories)?

Haven't thought it through 100%, but does it not suffice to be able
to specify quotas per user-namespace?  It won't help with NFS...

> And a FS independent solution would be great, so that it works on top of
> NFS too. 
> 
> So UnionFS looks good, but it does not provide real snapshots (using 
> base + incremental change looks clumsy for our purpose). I am also not
> sure
> if quota works on UnionFS?
> 
> - Dietmar

^ permalink raw reply	[flat|nested] 13+ messages in thread

* RE: storage considerations
       [not found]                         ` <20090205153638.GD27410-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
@ 2009-02-05 15:45                           ` Dietmar Maurer
       [not found]                             ` <7B7881568CF40E4388B615CD06F87B98098A22-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
  0 siblings, 1 reply; 13+ messages in thread
From: Dietmar Maurer @ 2009-02-05 15:45 UTC (permalink / raw)
  To: Serge E. Hallyn; +Cc: Linux Containers

> > NILFS, BTRFS, ... maybe provide solution for snapshots, but quota
> > support
> > is still missing (we need quotas on subdirectories)?
> 
> Haven't thought it through 100%, but does it not suffice to be able
> to specify quotas per user-namespace?  It won't help with NFS...

I was not aware that this is possible. How do I enable per
user-namespace quotas?

- Dietmar

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: storage considerations
       [not found]                             ` <7B7881568CF40E4388B615CD06F87B98098A22-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
@ 2009-02-05 16:04                               ` Serge E. Hallyn
       [not found]                                 ` <20090205160402.GE27410-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
  0 siblings, 1 reply; 13+ messages in thread
From: Serge E. Hallyn @ 2009-02-05 16:04 UTC (permalink / raw)
  To: Dietmar Maurer; +Cc: Linux Containers

Quoting Dietmar Maurer (dietmar-YTcQvvOqK21BDgjK7y7TUQ@public.gmane.org):
> > > NILFS, BTRFS, ... maybe provide solution for snapshots, but quota
> > > support
> > > is still missing (we need quotas on subdirectories)?
> > 
> > Haven't thought it through 100%, but does it not suffice to be able
> > to specify quotas per user-namespace?  It won't help with NFS...
> 
> I was not aware that this is possible. How do I enable per
> user-namespace quotas?

Oh you don't yet  :)  Just thinking ahead.  But I'm not clear on
your requirements - do you want per-uid quotas inside a container,
or just a gross quota for the whole container?

thanks,
-serge

^ permalink raw reply	[flat|nested] 13+ messages in thread

* RE: storage considerations
       [not found]                                 ` <20090205160402.GE27410-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
@ 2009-02-05 16:18                                   ` Dietmar Maurer
  0 siblings, 0 replies; 13+ messages in thread
From: Dietmar Maurer @ 2009-02-05 16:18 UTC (permalink / raw)
  To: Serge E. Hallyn; +Cc: Linux Containers

> Oh you don't yet  :)  Just thinking ahead.  But I'm not clear on
> your requirements - do you want per-uid quotas inside a container,
> or just a gross quota for the whole container?

both

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2009-02-05 16:18 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <7B7881568CF40E4388B615CD06F87B980989E9@clara.maurer-it.com>
     [not found] ` <7B7881568CF40E4388B615CD06F87B980989E9-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
2009-02-03 16:38   ` storage considerations Daniel Lezcano
     [not found]     ` <49887307.1080105-GANU6spQydw@public.gmane.org>
2009-02-03 17:14       ` Dietmar Maurer
2009-02-04 16:05       ` Serge E. Hallyn
     [not found]         ` <20090204160518.GC2039-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-02-04 16:52           ` Daniel Lezcano
     [not found]             ` <4989C7C0.6060906-GANU6spQydw@public.gmane.org>
2009-02-04 17:09               ` Serge E. Hallyn
2009-02-04 23:04               ` Oren Laadan
     [not found]                 ` <498A1EE6.3000204-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
2009-02-05  7:01                   ` Dietmar Maurer
     [not found]                     ` <7B7881568CF40E4388B615CD06F87B98098A12-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
2009-02-05 10:56                       ` [Devel] " Dietmar Maurer
2009-02-05 15:36                       ` Serge E. Hallyn
     [not found]                         ` <20090205153638.GD27410-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-02-05 15:45                           ` Dietmar Maurer
     [not found]                             ` <7B7881568CF40E4388B615CD06F87B98098A22-cHQ43lMKbBKenyD9vqZGNUEOCMrvLtNR@public.gmane.org>
2009-02-05 16:04                               ` Serge E. Hallyn
     [not found]                                 ` <20090205160402.GE27410-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-02-05 16:18                                   ` Dietmar Maurer
2009-02-05  7:08       ` Dietmar Maurer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.