ENHANCED IMAGE SYSTEM – E.I.S.

Das Enhanced Image System ist eine von Mauro Guadagnini (www.ginformatik.ch) und Lars Vetter entwickelte Softwarelösung zur vollautomatisieren Verteilung von Computer Images. Enhanced Image System bedeutet erweitertes Image System. Zwar gibt es schon zahlreiche Produkte, welche es ermöglichen, Computer zu imagen, jedoch nicht zentral und vollautomatisiert. Herzstück des Systems ist ein Linux Debian Server. Von diesem aus werden die Clients verwaltet und die Images bereitgestellt. Alle Clients werden anhand der MAC-Adresse identifiziert. Die Clients befinden sich in einer MySQL Datenbank, welche ebenfalls auf dem Linux Debian Server ausgeführt wird. Zur Pflege läuft ein Apache Webserver, welcher das Web-GUI für den Systemadministrator bereitstellt. Das Web- GUI wurde in PHP umgesetzt, dies bietet zum einen die Möglichkeit, serverseitige Aktionen auszuführen (welche für unser System notwenig sind) und zum anderen ist PHP in Verbindung mit SQL eine ideale Anwendungsplattform. Clientseitig arbeitet ein eigens entwickeltes EIS-OS. Dieses wird über das PXE beim Client Start gebootet. Das EIS-OS besteht aus einem initrd und einem Linux Kernel. Die initrd Vorlage wurde von einem Debian Netinstaller verwendet. Gesamthaft ist das EIS-OS nur 15 MB gross, dies garantiert eine kurze Startdauer über das Netzwerk. Der Ablauf ist wie folgt.

  1. Den neuen Client manuell im EIS Web-GUI eintragen. (Anschliessend erstellt das System die nötigen Einträge im dhcpd.conf des Servers für statische IP-Adressen.)
  2. Nun hat man verschiedene Möglichkeiten den Client zu editieren, ferngesteuert zu starten, diesem einen Image Job einzutragen oder diesen zu löschen.
  3. Weiter besteht die Möglichkeit alle eingetragenen Clients zu starten oder zu imagen.
  4. Sollen ein oder mehrere Clients geimaged werden, drückt man lediglich den „imagen“ Button des Clients. (Anschliessend trägt das System die nötigen Daten in die Datenbank ein und kopiert für den oder die Clients benötigen PXE Bootfiles).
  5. Standardmässig verwendet der Client die default Konfiguration des TFTP Servers. Diese ist auf Localboot eingestellt. Muss ein Client geimaged werden, wird ein File mit seiner MAC-Adresse im TFTP Ordner erstellt. Der Client prüft beim booten, ob ein solches File vorhanden ist und behandelt es prioritär.
  6. Der Client startet das EIS-OS und prüft zuerst, ob die Systemvoraussetzungen für einen Imagevorgang gegeben sind. Dies umfasst das beziehen der IP-Adresse über den Mountvorgang des Netzlaufwerks.
  7. Sollen Fehler auftreten, startet sich der Client neu und beginnt erneut mit der Prüfung des Status.
  8. Der Client verbindet sich nun mit der MySQL Datenbank und prüft seinen Status.
  9. Ist der Status auf imagen gesetzt, startet der Client den Imagevorgang. Sollten hier Fehler auftreten, startet sich der Client wieder neu und beginnt den Imagevorgang von vorne.
  10. Ist das Image vollständig heruntergeladen, aktualisiert der Client seinen Status in der MySQL Datenbank und löscht das in Schritt 4 erstellte Bootfile. Anschliessend startet der Client neu und verwendet das default Bootfile, welches ihm den Localboot angibt. Alternativ kann auch im Web-GUI ausgewählt werden, dass der Client sich herunterfährt, wenn er das Image erfolgreich bezogen hat.

Sollten Sie Interesse an unserer vollautomatischen Image-Lösung haben, kontaktieren Sie mich bitte mittels Kontaktformular.