[Beowulf] Diskless booting - NIC BIOS
andrew.robbie at gmail.com
Tue Jun 19 04:18:44 PDT 2007
On 19/06/2007, at 7:58 PM, Robert G. Brown wrote:
> On Mon, 18 Jun 2007, Ellis Wilson wrote:
>> Thanks Brian, Matt, and rgb,
>> The floppy idea is great (I think I remember now reading about it in
>> rgb's book, but had forgotten), and I certainly will look into that.
>> The motherboards are in some cases years and years old; one
>> computer I'm
>> deciding whether I'll use or not does have a 400mhz processor in
>> it, so
>> their age is sufficient to make me worry.
> Two points. One is that these days if your system has a BIOS that can
> manage booting from CD, I'd advise booting from CD instead of floppy.
> There are a variety of reasons for this -- CD's are cheap, you can
> put a
> large kernel on it, you can actually put a whole linux image on it and
> avoid having to "boot diskless" over the network, although of
> course you
> can still do that as well. Floppies are pretty much obsolete at this
> point and it isn't easy to get a properly bootable image of a modern
> kernel to live on one -- I think you'll find building tight kernels
> will fit moderately frustrating.
I disagree that floppies are obsolete! But putting the kernel on the
floppy is. On our old cluster we used floppies with a custom build of
grub (easy to do). Just build grub with support for the network
adapters in your cluster and throw in a config file. The config file
can list any number of boot kernels (and optionally associated root
paths) which is really handy for having eg a production kernel, a
debug kernel, a testing kernel, memtest, etc. Though the grub config
file is hardcoded into the binary which is not ideal. When I had to
create new grub configs it only took a few minutes to dd the floppy
image. Far, far quicker than burning 20 copies of a CD.
The same technique can be extended to modern computers with PXE Grub,
which is even better because the config file can be sucked off the
TFTP server too.
> Second, remember that one dual dual core 64-bit opteron processor
> -- currently available for maybe $1600 if you shop hard -- is going to
> be faster than a 32 node 400 MHz P6 cluster, and the latter will cost
> around $3000/year to leave powered on 24x7 (estimate $1/watt/year,
> if you're not paying for it...:-). So you're building your cluster to
> learn and have fun, not for speed or to save money. If you have real
> work to do and want to do it as cheaply as possible, it would be wiser
> to go with a very small cluster of dual core 64 bit modern CPUs.
Very true. But it is usually someone else paying for juice. Though
logically I should be able to go to the building management people
and say 'I can save you $1000 if you give me $2000' in practice I
don't think it would work...
> One other thing to play with that can suck you right in but that
> prove to be very rewarding in the future is virtualization -- look
> vmware-player and the library of VM appliances, including prebuilt
> ready-to-play cluster nodes.
I can highly recommend this approach if you need to run stuff on
windows. Far easier to netboot linux and start a vmware instance than
to try to netboot windows (though emBoot makes things easier).
More information about the Beowulf