just a few questions - but at first some explanations.
I want to setup an environment for booting an IBM BladeServer JS20 from the
network with SLES9. For example via NFS.
OK, I think the environment itself (dhcp, tftp, nfs) ist up and running. But
now I have to make some modifications related to the kernel. Because the
kernel has to mount the root fs based on an exported nfs directory.
Correct me if I'm wrong.
I've seen that there is an interface for kernel arguments (CONFIG_CMDLINE).
Can I use this interface (after recompiling the kernel)? If yes, what are
relevant paramaters for netbboting via NFS?
If not, what is the correct way for my setup?
Or is the combination linuxrc and zImage still the one and only way?
For that I searched the Novell support site for a passable tutorial -
without success.
Thanks in advance,
Torsten
Good so far. I assume you're using PXE (Preboot eXecution Environment)
on your blade servers.
> I've seen that there is an interface for kernel arguments (CONFIG_CMDLINE).
> Can I use this interface (after recompiling the kernel)? If yes, what are
> relevant paramaters for netbboting via NFS?
> If not, what is the correct way for my setup?
The kernel is only meant to get your system all put together and load
all the relevant drivers. It is then linuxrc's job to load all of the
processes that make up a linux system.
> Or is the combination linuxrc and zImage still the one and only way?
linuxrc is still required, but you don't need a zImage (although you
will need an initrd to get the system initially running). See the
tutorial below for how to use linuxrc to boot off of an NFS export,
which I believe is exactly what you are trying to do.
Here's a good tutorial for doing a diskless boot. It's a little more
generic, but it is easily adaptable to SuSE.
http://www.intra2net.com/opensource/diskless-howto/
Yup, it's all pretty ugly. Booting entirely from the network requires
getting into the guts of Linux, but hopefully IBM and other Blade
vendors will start to produce some preconfigured packages so you can
just unzip a tar into a TFTP folder, specify a path to an installation,
and away it goes.
If you ever do get it to work (I've gotten it to work, so it is
possible) there's some optimizations you should do:
/etc, /usr/local, /srv, /tmp and /var should be different for each
server. You can have separate linuxrc's depending on the MAC address of
the ethernet card, so thats how you can separate those NFS exports into
different folders so the servers don't trample each other.
/bin, /opt, /sbin, /lib, /home, /root, and /usr can be shared, so you
can have a single location for all these files, and have all the blades
share them. These directories (except /home and /root) are supposed to
be able to be read-only by the FHS standard, and SuSE follows FHS pretty
well.
/bin and /sbin should be included in the initrd optimally, so you don't
have to mount them as NFS exports (these two mount points are very
small, as they are only supposed to include the minimal programs
necessary to get the server to a working state).
Good Luck!
____________________
Justin Grote
Hi Justin,
thanks for the fast answer. That sounds very nice.
I'll take a look into the tutorial and give feedback if wanted.
But one hint. PXE can't be the right way. It is a POWER-based Blade. It's
better to use BOOTP here. :-)
Have a nice day,
Torsten
Ah, good point. I haven't worked with the IBM bladeservers, just the
Dell x86 ones.
________________
Justin Grote