Project

General

Profile

OpenSLX NG

Diese Seiten beschreiben das OpenSLX der nächsten Generation. Hierbei gibt es einige wesentliche Änderungen gegenüber der Version 5:
  • Es gibt einen neuen zentralen Konfigurationsserver, den PreBootServer (PBS). Dieser bindet das Stage2 des OpenSLX Export-Servers ein, um aus diesem client-spezifische Konfigurationen on-demand zu erzeugen.
  • Der PBS soll dabei in der Lage sein unter verschiedenen Benutzeraccounts (10k+) verschiedene Maschinenkonfigurationen zu verwalten (einzelne Nutzer können dabei eine oder mehrere private Maschinen haben, Gruppen von Nutzern - Pooladministratoren, Grid/Cluster-Manager - bis zu 1000+). Größere Zahlen von Maschinen sollen dabei im Block angelegt und verwaltet werden können.
  • Es wird eine größere Unabhängigkeit von PXE/DHCP/TFTP angestrebt, indem ein sogenanntes PreBoot vorgeschaltet werden kann. Damit können dann auch Maschinen ohne PXE booten, auch über Medien wie WLAN oder Infiniband. Dieses PreBoot soll es dem Nutzer erlauben bei Bedarf client-spezifische Änderungen auf dem PBS zu veranlassen.
  • Der PBS arbeitet mit einer nutzer-, bzw. maschinenzentrierten Konfiguration (im Gegensatz zu Version 4 und 5 in denen eine system-zentrierte Konfiguration erfolgte).
  • Die Zentrierung auf den PBS erlaubt es bestimmte Dienste, wie DNS/DHCP aber auch Monitoring von diesem aus für (Gruppen von) Clients abzuleiten.
  • Stage3 wird stark vereinfacht. Es gibt keine distributions- und plugin-spezifischen Konfigurationsabläufe mehr. Stattdessen beschafft sich der Client vom PBS ein auf ihn angepasstes "ConfTGZ", welches alle notwendigen Ändungen am späteren Stage4 Filesystem vornimmt.
  • Es soll einfacher möglich sein, das Aussehen des Stage4-Rootfilesystems anzupassen, in dem
    • Ein User eine eigene Schicht bspw. von seinem USB-Stick einfügen lassen kann
    • Verschiedene Quellen kombiniert das Stage4 ergeben (Basissystem vom OpenSLX Export-Server, eigene Erweiterungen von einem anderen/eigenen Server)
  • Plugins gibt es nun in stark vereinfachter Form, die noch näher zu definieren ist.
  • Das System soll dabei so angelegt sein, dass einerseits eine Trennung in öffentliche Bereiche (Basissystem) und lokale Bereiche (z.B. Overlays mit eigenen Zusatzkomponenten) möglich ist, andererseits sich das ganze System vernünftig absichern lässt.

Abstrakte Architektur

OpenSLX NG kennt neben den zentralen Servern PBS und Boot/Rootfilesystem Benutzer und OpenSLX Clients (verwaltete Maschinen).

Bootprozess

Ein OpenSLX-Client bekommt in Zukunft eine PreBoot-Phase vorgeschaltet, die sich für bestimmte Standardumgebungen (PXE) u.U. einsparen lässt. Diese PreBoot-Phase sorgt dafür, dass ein Client an einer beliebigen Stelle des Internets mit ausreichender Bandbreite und geringer Verzögerung booten kann und löst die Abhängigkeit von DHCP- und TFTP-Server. In Zukunft könnten Bootmedien, wie Festplatten, USB-Sticks, optische Medien, aber auch geeignete DHCP/TFTP-Server, ein ca. 10MByte großes Basisimage mit der PreBoot-Funktionalität bereitstellen.

Konfiguration

Anders als bei früheren OpenSLX-Versionen findet der Hauptteil der Konfiguration auf dem PBS statt. Das hat mehrere Vorteile:
  • Das InitRamFS (Stage3) kann stark vereinfacht werden und beinhaltet nur noch Abhängigkeiten zum jeweiligen Kernel, nicht jedoch zu den jeweiligen Distributionen.
  • Die Client-Konfiguration vereinfacht sich, da alles in einer vollständigen (Skript- und höhere Programmiersprachen) Systemumgebung des PBS vorbereitet werden kann und dann erweitert um Ergänzungen des Filesystems (als erweitertes ConfTGZ) zum Client in einem Schritt übertragen werden kann.
  • Die Erstellung von Plugins wird vereinfacht und die hohe Komplexität dieser (insbesondere bei den distro-spezifischen Anpassungen) reduziert.

openslxng.png (81.2 KB) schmelzs, 12/08/2010 05:53 PM