Stateless Linux experience...

Jason Powers powers.jason at jimmy.harvard.edu
Tue Nov 16 15:08:35 UTC 2004


Mike Herrick wrote:
> 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).
> 

check

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

copy editor for hire

>  
> 
> 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.
> 

I'll have to settle for testing it with 1GB dual channel pc3200, we'll 
see if it makes a difference. We got that message when we were loading 
the 'vmlinuz' kernel instead of the pxelinux.0 boot image first.

>  
> 
> 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.
> 

entered into fstab, though mine kept that mount when I rebooted.

>  
> 
> 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.
> 

I changed this. Whatever is referred to as the pxelinux location is 
actually tacked onto /tftpboot/. I'm concerned that parts of the program 
may attempt to run and be looking inside /tftpboot/ for the images, or 
be looking for non-pxe files realitve to that path. Anyway I changed it 
to /pxelinux.0 and dropped the files in /tftpboot to make my life easier.

>  
> 
> 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?
> 

That's what mine looks 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.
> 

In the config.py you can control all the paths the python scripts look 
to. This need to be changed, I think, to run off the 
etc/sysconfig/stateless file, because users aren't going to manipulate 
python scripts (no matter how simple it may be).

> 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
> 

ah very helpful.

>  
> 
> I then added the following to /etc/exports:
> 
>  
> 
> /srv/stateless/snapshots/DemoSystem/DemoSystem-1 *(ro,async)
> 

I have the same, but added no_root_squash. I think I also put the subnet 
in there because I don't need to export the file to the whole internet.


>  
> 
> 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.
> 

Going to try it now. I had the initial install authorize of a 
pre-existing, usable ldap auth server, so maybe I'll get past this.

Jason




More information about the fedora-devel-list mailing list