"Stateless Linux" project

David Malcolm dmalcolm at redhat.com
Tue Sep 14 19:07:17 UTC 2004


On Tue, 2004-09-14 at 10:31 -0400, Erik LaBianca wrote:
> > 
> > Hi,
> > 
> > Red Hat engineering is starting a new project we're calling
> > "stateless Linux" for lack of a better name - some components of this
> > are already in Rawhide, and others will be appearing shortly.
> > 
> > Appreciate feedback, especially from anyone who has time to try out
> > the HOWTO. We expect the code to change quite a bit as issues and
> > suggestions come in.
> > 
> > Havoc
> > 
> 
> I too am thrilled to see this happening. It's this sort of technology
> that has the potential to give linux a solid leg up on the competition
> for both the desktop and the server. 
> 
> I have a couple of questions. 
> 
> 1. Do I need to be running rawhide to test out the read-only root rpms
> and the HOWTO?

You could ask this question separately for the client and the server.

Most of our recent testing on this has been against the latest versions
of FC3 for both client and server, since we've trying as far as possible
to integrate support for this into the rest of the OS.  There have been
small fixes in various packages to make booting with a readonly root
filesystem easier, on the client side, and I believe there have been
some LVM fixes on the server side.  I don't have a list to hand,
unfortunately.

It would be interesting to see how well the HOWTO works against, say,
FC2.  You'll need to rebuild the various packages (SRPMs are in my
people.redhat.com site); the main new dependency IIRC is python-ldap,
which is Rawhide and the FC3 test isos but not in FC2 (though there are
RPMs of it on Fedora us.

Another thing you may want to try is to use the Live CD creation tool in
the readonly-root package; I hope that with an appropriate selection of
packages you'd be able to squeeze a bootable Fedora onto a Live CD.

> 
> 2. Configuration management. I've been trying to extract my
> configuration from running systems for a while now, but not really been
> entirely successful. Typically the list of files to "watch" gets
> unwieldy, or someone forgets to make the .orig file, or commit to cvs. I
> think ideally a configuration management system would integrate rpm (to
> know what files are config files) and cvs/subversion (to provide
> revision control) in such a way that you have revision controlled
> configuration files available off-system. 
> 
> In a truly stateless system, you could just export all the config files
> from CVS into the ramdisk on bootup.
> 
> I'd REALLY like to be able to edit files on a "live" system, and type a
> command to "check in" my changes. I'd like to be able to use the same
> system to show my the change history for a given file, and to ease
> forward migration. 

So, in the terminology of the HOWTO, you'd want to boot off a
protosystem directly in read/write mode, make some changes, then take a
new snapshot.  We're some way towards this, but not there yet.

> 
> Is this sort of thing within the scope of this project?
> 
> 3. I'd like to recommend looking at including the linux-vserver [1]
> patches and tools with the OS distribution for server-side applications.
> All the aforementioned technology would be an ideal fit in virtual
> servers, and the ability to keep all your "logical servers" in virtual
> sandboxes makes testing and deployment in smaller environments much
> easier. 
> 
> Statelessness would make virtual servers far more efficient, since you
> could run them all off the same physical filesystem instead of making
> hard link trees. 
> 
> I'm already close to running "stateless servers" just by keeping them in
> virtual machines, where I can shut them down and rsync them to a
> different physical machine without leaving my desk.
> 
> Thanks
> 
> --erik
> 
> 
> [1] http://www.linux-vserver.net/
> 
> 





More information about the fedora-devel-list mailing list