[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ next ]
The homepage of FAI is http://www.informatik.uni-koeln.de/fai
.
There you will find information about FAI, for example the mailing list
archive. The FAI package is also available as a Debian package from http://www.informatik.uni-koeln.de/fai/download
.
It's an official Debian package and is available from all Debian mirrors. To
access the newest versions of the FAI packages, you can add the following line
to your /etc/apt/sources.list
file.
deb http://www.informatik.uni-koeln.de/fai/download sarge koeln
Send any bug or comment to fai@informatik.uni-koeln.de
.
You can also use the Debian bug tracking system (BTS) http://www.debian.org/Bugs/
for
reporting errors.
You can access the subversion repository containing the newest developer version of FAI from a Bourne shell using the following commands.
> svn co svn://svn.debian.org/svn/fai/trunk fai
You can also use the web interface for the subversion repository at:
svn.debian.org/
wsvn/fai/
(and
fai-kernels
).
Now read this manual, then enjoy the fully automatic installation and your saved time.
Have you ever performed identical installations of an operating system several times? Would you like to be able to install a Linux cluster with dozens of nodes single handedly?
Repeating the same task time and again is boring -- and will surely lead to mistakes. Also a whole lot of time could be saved if the installations were done automatically. An installation process with manual interaction does not scale. But clusters have the habit of growing over the years. Think long-term rather than planning just a few months into the future.
In 1999, I had to organize an installation of a Linux cluster with one server and 16 clients. Since I had much experience doing automatic installations of Solaris operating systems on SUN SPARC hardware, the idea to build an automatic installation for Debian was born. Solaris has an automatic installation feature called JumpStart[1]. In conjunction with the auto-install scripts from Casper Dik[2], I could save a lot of time not only for every new SUN computer, but also for re-installation of existing workstations. For example, I had to build a temporary LAN with four SUN workstations for a conference, which lasted only a few days. I took these workstations out of our normal research network and set up a new installation for the conference. When it was over, I simply integrated the workstations back into the research network, rebooted just once, and after half an hour, everything was up and running as before. The configuration of all workstations was exactly the same as before the conference, because everything was performed by the same installation process. I also used the automatic installation for reinstalling a workstation after a damaged hard disk had been replaced. It took two weeks until I received the new hard disk but only a few minutes after the new disk was installed, the workstation was running as before. And this is why I chose to adapt this technique to a PC cluster running Linux.
FAI is a non-interactive system to install a Debian GNU/Linux operating system unattended on a single computer or a whole cluster. You can take one or more virgin PCs, turn on the power and after a few minutes Linux is installed, configured and running on the whole cluster, without any interaction necessary. Thus, it's a scalable method for installing and updating a cluster unattended with little effort involved. FAI uses the Debian GNU/Linux distribution and a collection of shell and Perl scripts for the installation process. Changes to the configuration files of the operating system can be made by cfengine, shell, Perl and expect scripts.
FAI's target group are system administrators who have to install Debian onto one or even hundreds of computers. Because it's a general purpose installation tool, it can be used for installing a Beowulf cluster, a rendering farm or a Linux laboratory or a classroom. Also large-scale Linux networks with different hardware or different installation requirements are easy to establish using FAI. But don't forget to plan your installation. Plan your installation, and FAI installs your plans, Chapter 5 has some useful hints for this topic.
First, some terms used in this manual are described.
The host where the package FAI is installed. It provides several services and data for all install clients. In the examples of this manual this host is called kueppers.
A host which will be installed using FAI and a configuration from the install server. Also called client for short. In this manual, the example hosts are called demohost, nucleus, atom01, atom02,...
The details of how the installation of the clients should be performed. This includes information about:
Hard disk layout
Local filesystems, their types, mount points and mount options
Software packages
Keyboard layout, time zone, NIS, XFree86 configuration, remote filesystems, user accounts, printers ...
A (chroot) filesystem located on the install server. It's the complete filesystem for the install clients during the installation process. All clients share the same nfsroot, which they mount read only.
The install client which will be installed using FAI, is booted from floppy disk or via network card. It gets an IP address and boots a Linux kernel which mounts its root filesystem via NFS from the install server. After the operating system is running, the FAI startup script performs the automatic installation which doesn't need any interaction. First, the hard disks will be partitioned, filesystems are created and then software packages are installed. After that, the new installed operating system is configured to your local needs using some scripts. Finally the new operating system will be booted from the local disk.
The details of how to install the computer (the configuration) are stored in the configuration space on the install server. Configuration files are shared among groups of computers if they are similar using the class concept. So you need not create a configuration for every new host. Hence, FAI is a scalable method to install a big cluster with a great number of nodes.
FAI can also be used as a network rescue system. You can boot your computer, but it will not perform an installation. Instead it will run a fully functional Debian GNU/Linux without using the local hard disks. Then you can do a remote login and backup or restore a disk partition, check a filesystem, inspect the hardware or do any other task.
A fully automated installation can be performed.
Very quick unattended installation
Update of running systems without reinstallation
Hosts can boot from floppy, network card or CD.
Easy creation of the boot floppy or CD
DHCP and BOOTP protocol and PXE boot method are supported.
No initial ramdisk is needed, runs even on a 486 CPU.
Remote login via ssh during installation process possible.
Two additional virtual terminals available during installation
All similar configurations are shared among all install clients.
Log files for all installations are saved to the installation server.
Shell, Perl, expect and cfengine scripts are supported for the configuration setup.
Access to a Debian mirror via NFS, FTP or HTTP
Keyboard layout selectable
Can be used as a rescue system.
Tested on SUN SPARC hardware running Linux or Solaris.
Flexible system through easy class concept
Predefined Beowulf classes included
Diskless client support
Easily add your own functions via hooks.
Easily change the default behavior via hooks.
Lilo and grub support
ReiserFS, ext3 and XFS filesystem support
Automatic hardware detection
So, you do not like to read the whole manual? You like to try an installation without reading the manual? OK. Here's how to succeed in a few minutes.
Install fai and all recommended packages (see Setting up FAI, Section 2.3 on your install server).
Edit /etc/fai.conf,run fai-setup -v and read its output.
Install the simple examples into the configuration space:
cp -a /usr/share/doc/fai-doc/examples/simple/* /usr/local/share/fai/
Get the MAC address of your demo host.
Add your host (try to name it demohost) to dhcpd.conf
and /etc/hosts
(=your DNS) on the FAI server.
When using PXE, tell the install client to boot the install kernel and perform an installation during the next boot
fai-chboot -IFv demohost
If you want to try FAI without setting up a PXE+DNS+DHCP-Environment: put the
hostnames into /etc/hosts
inside the nfsroot and use a
bootfloppy/CD/DVD to boot the client. See make-fai-bootfloppy(8)
Boot your demo host and enjoy the fully automatic installation.
If the installation has finished successfully, the computer should boot a small Debian system. You can login as user demo or root with password fai.
But now don't forget to read chapters Plan your installation, and FAI installs your plans, Chapter 5, Overview of the installation sequence, Chapter 4 and Installation details, Chapter 6 !
[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ next ]
FAI Guide (Fully Automatic Installation)
FAI Guide version 2.5.4, 20 april 2006 for FAI package version 2.10.1lange@informatik.uni-koeln.de