On 18-Oct-07, [EMAIL PROTECTED] wrote: > Thanks, didn't know about the preseeding method. Also, there seems to be a > kickstart, at least for ubuntu. Has anyone compared FAI to kickstart (for > ubuntu/debian)?
The fundamental approach is rather different. As I understand it, kickstart basically runs a normal network install, but with your kickstart configuration file providing the various answers you'd normally have done manually, such as how to partition the hard disks, what packages to install, and what configuration options to supply to the packages as they install. Debian preseeding is much the same. FAI is different. It's a bit more complicated, but rather more flexible. It tries to work things out for itself, especially with regard to hard disk partitioning, and so is particularly useful if you're installing a wide variety of hardware types, since you don't need separate configurations for all of your hardware (although of course you can make specific changes for specific hardware types if you want). Basically, what happens in a FAI install is this: 1) NFS root is booted (if you can't do NFS root, there's also fai-cd, which creates a CD ROM to do the same thing) 2) SSH server is started (so from this point on an admin can get in and watch the install proceeding remotely - this is *amazingly* useful) 3) The FAI configuration files are obtained (either over NFS, or via CVS) 4) Scripts run which probe the hardware and set class variables according to what they find. You can supply custom scripts to do this according to whatever policy you have. For example, I wrote one which runs dmidecode and sets the machine's hostname according to what it finds in the machine's Asset Tag field, or, in the case of HP c-Class blades, what chassis it's in and slot number. I also automatically detect fibre channel cards for SAN-attached machines. All subsequent stages can use these classes to modify FAI's default behaviour for a particular type of machine. 5) The hard disks are partitioned, mounted, and a minimal install tarball is unpacked on the machine's disk. 6) Packages are installed according to the classes that are set; debconf answers can be set in the configuration for various classes too. 7) Once all the packages are installed, arbitrary shell or other scripts can be run to modify the system, according to the set classes. For example, on machines where a fibrechannel card was detected, multipath is automatically configured at this point. Because you're running in a more or less full Debian NFS root system, the sky's the limit in terms of what you can do here. I typically run a few network config tweaking scripts, and then kick off the machine's first cfengine run to update the config from our central policy server. 8) Optionally, the machine then reboots automatically, having stored the complete log of the install either on your central installation server, or locally on the node in /var/log/fai. On one of our cluster nodes, the entire install process typically takes about 5 minutes. Our desktops take a lot longer, more like 25 minutes, but that's because they have much more software installed. The real killer advantages of FAI, for me, are the SSH server so I can monitor the install remotely, and the detailed logging. Both of these are invaluable for diagnosing installation problems. Typically, I restrict FAI class-specific stuff to what's needed to get a particular bit of hardware working. Configuration to the ultimate purpose of the machine I leave to cfengine. Tim -- Dr Tim Cutts Informatics Systems Group Wellcome Trust Sanger Institute, Hinxton, Cambridge, CB10 1SA, UK -- The Wellcome Trust Sanger Institute is operated by Genome Research Limited, a charity registered in England with number 1021457 and a company registered in England with number 2742969, whose registered office is 215 Euston Road, London, NW1 2BE. _______________________________________________ Beowulf mailing list, Beowulf@beowulf.org To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo/beowulf