[openstack-dev] Feedback wanted please on proposal to make root disk size variable
Day, Phil
philip.day at hp.com
Thu Jun 6 15:33:13 UTC 2013
Hi Scott,
Just to be clear I'm not proposing that we change the current approach to having a shared backing file with a FS in it as part of this change. I agree that would need wider discussion in a separate thread, and probably took us down a bit of a rat hole by talking about the issues with that.
So that leaves us with the question of whether it is a significant issue or not to have potentially many different backing files on a host if users decide to use non-standard min-disk sizes on their images. I think the jury is still out on that one.
Cheers,
Phil
-----Original Message-----
From: Scott Moser [mailto:smoser at ubuntu.com]
Sent: 05 June 2013 17:23
To: OpenStack Development Mailing List
Cc: Leggett, Thomas; Toft, Peter (HP Cloud Services)
Subject: Re: [openstack-dev] Feedback wanted please on proposal to make root disk size variable
On Wed, 5 Jun 2013, Parthipan, Loganathan (Cloud Services) wrote:
>
> >
> > Hi Scott,
> >
> > > The other thing I don't like about it is that, currently (at least
> > > in libvirt driver), ephemeral disks are cached. This is because
> > ephemeral
> > > disks are attached with a filesystem already created on them. That
> > > allows the user to immediately use the disk without having to do
> > mkfs,
> > > and the caching of that image saves the host from having to do it
> > > on every instance launch.
> > >
> > > If you use:
> > > ephemeral_gb = (flavor.root_gb + flavor.ephemeral_gb) -
> > > instance.root_gb and instance.root_gb all of a sudden varies
> > > greatly amoung instances, then the host will be creating ephemeral
> > > images
> > (and
> > > mkfs'ing them) possibly for every instance.
> >
> > It is my understanding that the filesystem is created on the COW
> > layer of the ephemeral disks (disk.local) and not on the backing
> > file itself by cloudinit or similar software after instance startup.
> > I'm not sure if there's any data on the backing file itself.
> >
>
> You're right. A filesystem is indeed created on the backing file.
> Sorry :)
fwiw, it would be possible to have the host only attach a blank drive to the instances as ephemeral0. However, then every guest OS that wanted to use this would have to do 'mkfs /dev/vdb'. That would end up
a.) slowing down the instance's ability to use that device
b.) creating another flurry of IO on instance boot as the instances
'mkfs /dev/vdb'
The host creates it and mkfs's is a substantial optimization in both feature and IO.
Additionally, if you changed that now, you'd be breaking guest expectation, which should be a very big no-no.
Just a quick test for some information, mkfs.ext3 (1.42.5-1ubuntu4):
openstack guest 20G /dev/vdb took 4.624s real 0m0.884s sys
ec2 guest 160G /dev/xvda2: 1m14.649s real, 0m2.072s sys.
(in both cases, subsequent runs are faster, possibly because the backing disk is much less sparse at that point).
Scott
_______________________________________________
OpenStack-dev mailing list
OpenStack-dev at lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
More information about the OpenStack-dev
mailing list