[ L T Net ] OPEN-EVENTS :: OPEN MUSIC :: MINICONTENT :: KNOPPIX LINUXTAG.org 
Cornerstone
// LinuxTag 2005
Besuchen Sie uns auch nächstes Jahr wieder auf dem LinuxTag 2005 im Karlsruher Messe- und Kongresszentrum. Für nähere Details und den genauen Termin besuchen Sie bitte die LinuxTag Homepage.
EUROPAS GRÖSSTE GNU/LINUX MESSE UND KONFERENZ
KONFERENZ-DVD 2004
 Hauptseite   Vorträge   Bücher   History   Software   Knoppix   Sponsoren   Abspann   Impressum 
Hauptseite // Vorträge // Softwareverteilungssystem m23: Installation und Administration von Clients in Netzwerken

Softwareverteilungssystem m23: Installation und Administration von Clients in Netzwerken

Hauke Goos-Habermann

m23-Team (http://m23.sf.net)

Daniel Kasten

Dieser Beitrag ist lizensiert unter der GNU General Public License.

June 2004

Zusammenfassung

Softwareverteilungssystem m23

Was ist Softwareverteilung?

Softwareverteilung setzt sich zum Ziel, Software auf vielen Rechnern in einem Netzwerk zu installieren und zu administrieren und so die Kosten für Administration gering zu halten. Was ist m23?

m23 ist das Softwareverteilungssystem für GNU/Linux, das Clients partitionieren, formatieren,das Linux-Basisbetriebssystem und tausende von Anwendungen installieren kann. Als erstes Softwareverteilungssystem setzt m23 komplett auf OpenSource-Anwendungen und unterliegt selbst der GPL. So steht Ihnen als Anwender jederzeit eine kostenlose Alternative zu proprietären und kostspieligen Softwarelösungen offen. Durch m23 können Sie niemals in einen Lizenzierungszwang geraten.

Bei der Installation mit m23 werden die Komponenten im Client per Hardwareerkennung identifiziert und die Treiber installiert. Nachträglich können weitere Softwarepakete vom Webbrowser über Spiele bis zum Office-Paket installiert werden. Sicherheitsupdates können ebenfalls einfach auf allen Clients installiert werden.

Alle Installations-, Administrations und Updatejobs werden durch dem m23-Server vorgenommen. Die Administration erfolgt über ein Webinterface, das bequem durch einen Webbrowser im Intranet bedient werden kann. Inhalte des Vortrages: - Sinn und Zweck von Softwareverteilung - Die Komponenten hinter m23: Linux, Apache, MySQL, DHCP,... - Wie funktioniert m23? (Wie spielen die einzelnen Komponenten hinter der Oberfläche zusammen?) - Vorstellung der m23-Administrations-Oberfläche - Live Demonstration: Aufsetzen eines Clients mit m23 - Fragen


Softwareverteilungssystem m23: Installation und Administration von Clients in Netzwerken

http://m23.sf.net

m23-Server

m23-Clients

Download & Informationen

Das ISO zum Brennen der m23-Server-Installations-CD sowie Dokumentationen, das offizelle m23-Support-Forum und weitere Informationen gibt es unter: http://m23.sf.net .

Bestandteile von m23

m23 besteht aus einer Vielzahl von OpenSource-Komponenten, ohne die es einige Jahrzehnte gedauert hätte, m23 in dieser Form zu entwickeln. Allein durch die Arbeit unzähliger Freiwilliger ist m23 möglich geworden. Vor allem sind es folgende Programme, die in m23 zum Einsatz kommen:

  • Betriebssystem: m23 basiert vollständig auf Debian GNU/Linux, einer freien Linux-Distribution. Sowohl der Server als auch die m23-Clients sind Debian GNU/Linux-Systeme. Wir haben bei der Entwicklung von m23 auf Transparenz aller Vorgänge und besonders auf lizenzfreie Clients und Server geachtet! Debian bietet derzeit ca. 25.000 Softwarepakete, die aus dem Internet heruntergeladen und auf beliebig vielen Clients installiert werden können.

  • Apache: wird von m23 als Datei-Server und für die Generierung der m23-Administrations-Oberfläche und Skripte benutzt.

  • PHP: ist die am häufigsten in m23 verwendete Programmiersprache: Die Oberfläche sowie die komplette Skriptgenerierung sind in PHP geschrieben.

  • MySQL: dient der Speicherung der meisten Daten, die von m23 verwaltet werden.

  • Etherboot: kann als alternative Methode zum Starten der Clients über das Netzwerk verwendet werden.

  • DHCP, ATFTP: machen das Booten der Clients erst möglich.

  • BusyBox: wird für das Mini-System der Installations-CD sowie das Netzwerk-Bootimage verwendet, um eine Menge Platz zu sparen.

  • und viele mehr...

Voraussetzungen für m23

Zur Integration des m23-Software-Verteilungssystems in Ihr Netzwerk benötigen Sie folgendes:

m23-Server

Der m23-Server übernimmt die komplette Verteilung der Software und erfüllt verschiedene Aufgaben:

  • Generierung der Administrationsoberfläche

  • Bereitstellung von Installations-Skripten zur Laufzeit

  • Softwarepakete-Cache

  • Datenbank

  • Boot-Server

  • DHCP-Server

m23-Clients

Auf den m23-Clients können verschiedene Debian-Versionen (Woody, Sarge, Sid) inklusive grafischer Benutzeroberfläche (KDE 3.2 oder Gnome 2.x) installiert werden. Außerdem gibt es die Möglichkeit, kein grafisches System zu installieren, um den Client z.B. als Webserver etc. zu benutzen.

Um die Softwareverteilung zu vereinfachen, sollten Sie darauf achten, daß die Clients Wake-On-Lan-fähig sind, da m23 die Clients dann eigenständig für Installationsaufträge starten und nach Abschluß wieder in den Ruhezustand versetzen kann. Auch ist der Einsatz von Netzwerkkarten, die ein Bootrom enthalten, empfehlenswert, da die Clients so über das Netzwerk gebootet werden können, ohne daß sie per Bootdiskette/CD gestartet werden müssen. Dies ist allerdings nur für das Aufspielen des Betriebbsystems erforderlich. m23 unterstützt PXE und Etherboot als Bootstandards.

Internetzugang

Für m23 benötigen Sie einen Internetzugang, da die ganzen Softwarepakete nicht auf der CD enthalten sind, sondern aus dem Internet heruntergeladen und ständig aktualisiert werden.

PC mit Webbrowser

Für die Administration benötigen Sie einen Webbrowser, mit dem Sie auf den Server zugreifen können.

m23-Server-Installations-CD

Um einen m23-Server aufzusetzen, benötigen Sie die m23-Server-Installations-CD die es zum kostenlosen Download auf http://m23.sf.net gibt. Brennen Sie die ISO-Datei einfach mit einem Brennprogramm und booten Sie danach den Server davon. Die Installationsprozedur ist menügesteuert und sollte jeman-dem, der sich mit den grundlegenden Begriffen der Netzwerkadministration auskennt, keine Schwierigkeiten bereiten. Hilfestellung gibt es im m23-Benutzerhandbuch, das auf der CD enthalten ist und von der m23-Projektseite heruntergeladen werden kann.

Kurzeinstieg in die Administration

Ziel von m23 ist es, die Administration von Linux-Clients für den System-verwalter so einfach wie möglich zu machen. Alle Administrationaufgaben werden in einem Webinterface vorgenommen und können so von jedem Rechner mit installiertem Webbrowser ausgeführt werden, der eine Verbindung zum m23-Server herstellen kann.

Administration in 3 Schritten

Die Administration eines m23-Clients erfolgt in 3 Schritten:

  1. Eintragen des Clients in die m23-Oberfläche

  2. Automatische Erkennung der Hardware- und Partitionierungsdaten des Clients, die in der Oberfläche angezeigt werden. Nun können Sie den Client partitionieren und formatieren und das Betriebssystem inklusive grafischer Oberfläche zuweisen.

  3. De/Installation weiterer Software

Vorgehen beim Hinzufügen eines Clients

Hier wird das allgemeine Vorgehen beim Hinzufügen eines neuen Clients beschrieben. Sehen Sie selbst, wie einfach die Administration mit m23 ist:

  1. Schließen Sie den Client an das Netzwerk an, so daß Client und Server aufeinander zugreifen können.

  2. Erstellen Sie ggf. eine Bootdiskette für den Client und legen Sie diese ein. Eine Bootdiskette benötigen Sie nur, falls Ihr Client nicht über eine Netzwerkkarte mit PXE verfügt.

  3. Starten Sie den Client und notieren Sie sich die MAC-Adresse (z.B. 00:45:23:3A:96:F3).

  4. Geben Sie die MAC-Adresse zusammen mit den anderen benötigten Daten ein und legen Sie den Client an.

  5. Sollte der Client nicht automatisch booten, dann rebooten Sie ihn und lassen die evtl. erstellte Bootdiskette im Laufwerk.

  6. Nun bootet der Client und sendet Hardware- und Partitionierungs-Informationen an dem m23-Server.

  7. Im Webinterface können Sie diese Daten begutachten. Fahren Sie mit dem Partitionieren und Formatieren fort.

  1. Weisen Sie anschließend das Betriebssystem und die grafische Benutzeroberfläche zu.

  1. Nun können Sie zusätzliche Software installieren bzw. deinstallieren.

Weitere Fähigkeiten von m23

  • Wiederherstellung eines Clients: Wenn Sie einen Client wiederherstellen, wird er wieder so eingerichtet, wie er installiert wurde. Dies schließt Neupartitionierung und Formatierung mit ein. Es werden alle Softwarepakete neu installiert, die von m23 installiert wurden.

  • Notfallsystem starten: Möchten Sie zu Reparatur- oder Diagnosezwecken einen Client booten, so können Sie das Notfallsystem über Netzwerk booten. Nach dem Booten startet der Client eine Console, auf der Sie arbeiten können.

  • m23-Bootdiskette erstellen: Diese Diskette wird benötigt, um Clients einzurichten und ist im normalen Betrieb nicht mehr nötig. Anstelle der Bootdiskette können Sie auch das Bootrom Ihrer Netzwerkkarte oder die Client-Boot-CD benutzen.

MDK: Das m23-Development-Kit

Das MDK bietet Ihnen eine Vielzahl von Möglichkeiten, m23 zu modifizieren und weiterzuentwickeln. Wenn Sie z.B. einen angepaßten Kernel für Ihren Server oder eigene Debian-Pakete benötigen, habe Sie mit dem MDK eine einfache Möglichkeit, diese Modifikationen durchzuführen. Das MDK ist menügesteuert, was Ihnen die Arbeit erleichtert.

Mit dem MDK können Sie z.B.:

  • Server-Installations-CDs oder

  • Client-Installations-CDs und Bootimages erstellen,

  • Extra-Pakete erzeugen,

  • das Handbuch und den Development-Guide zusammenstellen und im PDF- und HTML-Format ausgeben lassen.

In das MDK ist ein Hilfesystem integriert.

Technischer Ablauf einer Clientinstallation

  • Aufnahme der Clients in die Datenbank und dhcpd.conf.

  • Starten des Clients über Bootrom, CDRom oder Diskette.

  • Laden des Linux-Kernels über Netzwerk und booten des Clients.

  • Dieser sendet Hardware- und Partitionsdaten an den Server, die dort in die Datenbank geschrieben werden.

  • Auswahl der Partitionierung und Formatierung des Clients in der Administrationsoberfläche und Speicherung dieser Informationen in der Datenbank.

  • Aus diesen Daten wird das Partitionierungs- und Formatierungs-Skript generiert und vom Client ausgeführt.

  • Auswahl des Betriebssystems und des Desktops in der Administrations-oberfläche und Speicherung dieser Informationen in der Datenbank.

  • Generierung des Betriebssystemsinstallationsskriptes und Ausführung durch den Client.

  • Der Client erkennt die Hardware und richtet die dazugehörigen Treiber ein. Außerdem werden die in die Administrationsoberfläche eingegeben Informationen zum Setzten der Grundeinstellungen benutzt.

  • Reset bzw. Herunterfahren des Clients.

  • Nun ist der Client bereit, weitere Software zu installieren.

FAQ

Worin ist m23 programmiert?

m23 ist zum größten Teil in PHP geschrieben, so z.B. die Administrationsober-fläche und die Skriptgenerierung. Einige Tools z.B. das Programm zum Senden der Partitionierungs- und Hardwareinformationen sind in C/C++ programmiert. Die generierten Skripte und das m23-Server-Installations-Skript sind BASH-Programme.

Welche Systeme unterstützt m23?

m23 setzt auf Client- und Serverseite Debian-Linux ein. Die Unterstützung von proprietären Betriebssystemen wie Windows ist nicht geplant und auch nicht mit dem Ziel eines freien Softwareverteilungssystems zu vereinbaren. Andere Linux-Distributionen werden vielleicht in näherer Zukunft integriert werden. Der erste Schritt in diese Richtung wurde bereits gemacht, indem alle distributionsspezifischen Funktionen ausgelagert wurden, so daß nur diese und nicht das komplette m23-System für eine neue Distribution portiert werden müssen.

Warum Debian-Linux?

Debian-Linux wurde ausgewählt, da es sich leicht aktuell halten läßt und komplett aus dem Internet heruntergeladen werden kann. Debian ist keine Firma sondern eine Gemeinschaft von unabhängigen Entwicklern, so daß es für alle Zeiten frei bleiben wird und somit eine sichere Grundlage darstellt. Außerdem bietet das von Debian verwendete APT-Paketsystem eine einfache Möglichkeit, Software von verschiedenen Quellen (Netzwerke, CDRom, Festplatten, ...) zu installieren und deinstallieren.

Wie funktioniert die Basissysteminstallation?

Die m23-Clients werden nicht (mehr) mit einem statischen Image aufgesetzt, sondern benutzen eine Debian-eigene Methode, die den Rechner aus den Debian-Softwarepaketen installiert.

Woher kommt die Software, die auf den Clients installiert wird?

Die Softwarepakete werden aus dem Internet heruntergeladen, auf dem m23-Server zwischengespeichert und auf den Clients installiert. Als Quellen für die Softwarepakete stehen die öffentlichen Debian-Server und eine Reihe weitere Server zur Verfügung, die weitere Pakete bereitstellen. Die Debian-Server stellen ca. 10.300 verschiedene Softwarepakete vom Webbrowser über Office-Pakete bis zu Spielen bereit.

m23 bietet eine einfache Möglichkeit, verschiedene Paketquellen zu verwalten.

Stellt die Administrationsoberfläche spezielle Anforderungen?

Die Administrationsoberfläche wurde so entwickelt, daß sie weder Java, noch JavaScript oder Frames enthält. So sollte sie auf jedem Browser (selbst Textmodusbrowsern) benutzbar sein.

Wie kann ich die Fähigkeiten von m23 erweitern?

m23 bietet die Möglichkeit, Plugins zu entwickeln, die dynamisch in die m23-Oberfläche eingebunden werden können. Diese können alle mit PHP programmierbaren Aktionen ausführen.

Um „normale“ Debian-Pakete mit einer zusätzlichen Optionen-Seite zu erweitern (z.B. das Apache-Paket mit einem Dialog für den Serverport oder das DocumentRoot-Verzeichnis), können Sie ein einfaches Skript erstellen, das sowohl das Design für den Dialog, als auch die auf dem Client auszuführenden Kommandos enthält. Dabei sind alle Aktionen auf dem Client möglich, die in BASH programmiert werden können oder durch installierte Pakete möglich sind.

Lizensierung von m23

m23 ist ein OpenSource-Produkt, das unter der GPL (GNU General Public License) steht! Die genauen Lizenzbedingungen der GPL sind unter http://www.gnu.org/licenses/gpl.html nachzulesen. Das beutet im Groben für Sie:

  • Die Nutzung ist kostenlos.

  • Der komplette Quellcode ist verfügbar.

  • Sie dürfen den Quellcode verändern.

  • Sie dürfen m23 kopieren und weitergeben, so oft Sie wollen.

  • Änderungen von Ihnen an m23 müssen ebenfalls unter der GPL veröffentlicht werden!

 
Impressum // © 2004 LinuxTag e.V.