Stateless Linux experience...

Mike Herrick mherrick at corente.com
Mon Nov 15 18:13:29 UTC 2004


Thought I'd give this a try.  Still in progress, but a couple of pointers to
pass on to anyone who wants to give it a go.

 

1) First, make sure you get the latest source from CVS.  There are a couple
of bugs in parsing arguments that have been fixed (as noted in
https://listman.redhat.com/archives/fedora-devel-list/2004-November/msg00233
.html).

 

2) Even with the latest code, there is a typo on line 96 of
stateless-snapshooter.py ("--protosytem" should be "--protosystem").

 

3) I tried this on a machine that initially had 128MB of RAM.  When I got to
the "stateless-snapshooter -n -p DemoSystem" step, I ran out of memory:
"device-mapper ioctl cmd 9 failed: Cannot allocate memory".  I added 128MB
of RAM and still had the same problem, so I stopped some non-essential
services (httpd, sendmail, etc.).  Then I was able to continue.

 

4) Because I needed to reboot to add RAM, all of the files that I had copied
from the 'test' system to /srv/stateless/protosystem/DemoSystem seemed to
have been lost.  It wasn't until after I had re-copied them from the test
machine that I remembered the "mount /dev/mapper/VGStateless-DemoSystem
/srv/stateless/protosystems/DemoSystem" command in one of the previous
steps.  Moral of the story: add it to the /etc/fstab so it'll be
automatically remounted on reboots.

 

5) In the /etc/dhcpd.conf file, it refers to "linux-install/pxelinux.0" as
the PXE bootable image, but when the PXE client connects this file is not
found.  I copied /usr/lib/syslinux/pxelinux.0 (from syslinux RPM) to
/tftpboot/linux-install.

 

6) Because of the RAM problem above, I'm not sure that subsequent
invocations of "stateless-snapshooter -n -p DemoSystem" actually worked as
designed.  When I execute "stateless-snapshooter -l", I get:

 

Protosystems:

        DemoSystem

 

But it doesn't say anything about snapshots.  This makes me nervous.  What
should the output look like?

 

7) When I run "python statelessGenPXEConfig.py" after adding the MAC
addresses, I get "Unable to get NFS location of DemoSystem snapshot
DemoSystem-1".  I'm not exactly sure where it's supposed to have picked up
the NFS path definition from.  It appears to me from browsing some of the
code that somewhere along the line I was supposed to have executed
"stateless-servers", but I didn't see anything about that in the
documentation.

 

Since the statelssGenPXEConfig.py script failed to generate any PXE
configuration, I generated my own by hand:

 

DEFAULT stateless/DemoSystem/DemoSystem-1/vmlinuz
initrd=stateless/DemoSystem/DemoSystem-1/initrd.img
NFSROOT=6.6.6.1:/srv/stateless/snapshots/DemoSystem/DemoSystem-1

 

I then added the following to /etc/exports:

 

/srv/stateless/snapshots/DemoSystem/DemoSystem-1 *(ro,async)

 

With these changes, I was able to get a machine to boot from the snapshot,
but there were many errors/warnings stemming from having a read-only root
(and /var) filesystem on a diskless client.

 

When I finally got the machine to boot, it wouldn't let me login!  I suspect
some read-only root problem during the login process that prevented the
login process from completing.

 

Mike.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/fedora-devel-list/attachments/20041115/f69d3689/attachment.htm>


More information about the fedora-devel-list mailing list