ba
 FAI - Techn. Details
swirl
 Home
 FAI - Techn. Details
 Dienstleistung
 Kontakt
 Links

Die Voraussetzungen, um FAI einsetzen zu können, sind einfach:

Ein Installserver der folgende Dienste zur Verfügung stellt:

  • DHCP Server, ein TFTP Server (nur wenn der Client von Netzwerkkarte gebootet wird)
  • NFS Server (mit ca. 300 Mbytes Plattenplatz)
  • Optional ein lokaler Spiegel der Debian Software via HTTP, FTP oder NFS

Der Installserver kann ein beliebiger Unix Server sein, idealerweise ist es aber ein Debian System. Es ist auch möglich diese Dienste auf mehrere Server zu verteilen.

Ein zu installierender Rechner, genannt Install Klient. Er braucht weder CD-ROM, Tastatur oder Graphikkarte. Eine Netzwerkkarte mit PXE-Unterstützung wird empfohlen. Die Installation kann auch von CD/DVD oder USB Stick erfolgen.

Beide Rechner müssen über eine Netzwerkkarte verfügen.

 

Ablauf einer Installation mit FAI

Der zu installierende Client bootet einen Linux Kernel (3.x oder 4.x), der sein Root Verzeichnis über NFS vom Installationsserver bekommt.

Die Klassen und Variabeln werden definiert durch die Ausführung von verschiedenen Skripten. Die vorhandene Hardware wird automatisch erkannt und notwendige Kernel-Treiber werden geladen.

Die Klassen definieren, für welche Aufgabe der Client installiert werden soll. So gibt es vordefinierte Klassen für Beowulf Knoten, ein WWW-Kiosk System, einen Rechner für Debian Entwickler, einen Demo-Rechner und viele andere Ansprüche.

Danach werden die lokalen Festplatten partitioniert und die Dateisysteme erzeugt. Dabei ist es möglich, die Daten einzelner Partitionen zu sichern und nicht zu überschreiben. Die Dateisysteme werden nun gemountet, und anschliessend werden alle gewünschten Softwarepakete installiert. Existierende Abhängigkeiten von anderen Paketen werden automatisch aufgelöst. Anschliessend können beliebige Skripte klassenbasiert ausgeführt werden, um das neue Betriebssystem oder die Anwendungen den lokalen Gegebenheiten anzupassen. FAI unterstützt für diesen Zweck verschiedene Skriptsprachen wie z.B Perl, cfengine, expect und Bourne Shell Skripte.

Als letztes werden alle Log-Dateien, die die Installation protokoliert haben, lokal auf dem Clienten, aber auch zentral auf dem Installationsserver gespeichert. So hat man an zentraler Stelle alle notwendingen Informationen der Installation verfügbar. Der Client startet anschliessend automatisch das neu installerte System.

Solch eine Installation braucht auf einem Athlon 500Mhz Rechner nur  ca. 10 Minuten, wenn ca. 640 Mbytes an Software installiert werden. Bei einem Umfang von ca. 160 Mbytes an Software (etwa für einen Beowulf Knoten) dauert es nur 2 Minuten.

Ausführlicher Artikel über technische Details von FAI und 10 Jahre FAI Projekt.

Weitere Details, Screenshots und Videos gibt es auf der Projektseite
 

Besondere Merkmale von FAI

  • Eine voll automatische Installation ohne jegliche Interaktion ist möglich
  • FAI skaliert optimal im Clustereinsatz
  • Zentrale Speicherung aller Konfigurationsinformationen
  • Verschiedene Bootmethoden werden unterstützt (PXE,DHCP,BOOTP,Diskette)
  • Volle Remotekontrolle während der Installation (via ssh)
  • Protokolldateien werden zentral auf dem Installationserver abgelegt
  • Fertige Konfiguration für Beowulf-Cluster
  • Diskless Installationen werden unterstützt
  • Zugriff auf Debian Spiegel via NFS, FTP oder HTTP
  • Dateisysteme mit ext2, ext3, XFS und ReiserFS sind möglich
  • Es kann als Rescue-System zur Datenrettung und Systeminstandsetzung und Systemreparatur genutzt werden
  • Installation von CD ohne Installserver möglich