Ändert sich ihr Aufgabenbereich von der Betreuung von Einzelsystemen hin zu
ganzen Rechnerverbünden mit weitestgehend ähnlicher oder im Idealfall sogar
identischer Software, müssen Sie sich Gedanken darüber machen, wie Sie diese
Herde an Systemen in Schach halten — das heißt diese Softwarelandschaft auf
allen betreffenden Systemen installieren und pflegen (sofern es sich nicht
um Wegwerf-Systeme handelt). Beispielsweise zählen dazu Rechner für Klassen-
und Schulungsräume, Cloud-Infrastrukturen sowie Rechencluster. Behalten Sie
bei der Auswahl einer Lösung auch im Blick, dass es durchaus auch
verschiedene Rechnerklassen in ihrem Verbund geben kann. Beispiele dafür
sind Anwendungsserver (application server), Clients (end user client),
Mailserver und auch Fileserver (storage system).
Drei Begriffe, die häufig in diesem Zusammenhang genutzt werden, sind:
-
Hardware provisioning und OS provisioning
-
das vorherige Auswählen von
Softwarekomponenten für die im System verbaute Hardware und das darauf
genutzte Betriebssystem, bspw. der Linux-Kernel und das Paket für den
passenden Grafiktreiber samt Einstellungen.
-
Konfigurationsmanagement
-
das Verwalten und Pflegen der zuvor definierten
Rechnerklassen samt Liste der Softwarepakete und den Einstellungen zum
jeweiligen Paket.
Unabhängig davon, wieviele Einzelrechner oder Rechenknoten letztendlich im
Verbund zu berücksichtigen sind, gibt es für jede Rechnerklasse stets entweder
eine bestehende Referenzinstallation (genannt Master) oder zumindest eine
hinterlegte Konfiguration, auf deren Basis sich die weiteren Rechner identisch
zur Referenz aufsetzen lassen. Dieses Kapitel beleuchtet anhand verschiedener
Vorgehensweisen, wie Sie diesen Schritt in der Praxis umsetzen. Übliche
Varianten sind:
-
Klonen des Masters durch Erstellen einer Eins-zu-eins-Kopie (auch Image
genannt) ausgewählter Inhalte und eine nachträgliche, mimimale Detailanpassung,
bspw. der Netzwerkkonfiguration. Aktualisierungen erfolgen durch Beziehen und
Überspielen des Images, wobei die Detailanpassung, zusätzliche Software und
auch persönliche Daten auf dem Zielsystem nicht in jedem Fall verändert werden.
Beispiele aus der Praxis sind Netzwerkrouter für WLAN/DSL sowie Smartphones
und Tablets.
-
Die Referenz bildet eine Paketliste samt Konfiguration der einzelnen Pakete.
Debian kennt das unter dem Begriff Preseeding und beschreibt das Beantworten
der Fragen des Debian Installers im Vorfeld. Paketliste und Konfiguration
liegen entweder a) in einer Datenbank oder b) werden direkt aus dem Master
vorher ausgelesen. In der Vergangenheit wurden dafür bereits verschiedene
Lösungen entworfen und genutzt. Zu den Vertretern für a) gehören bspw.
Jumpstart (Sun OS) [jumpstart], Kickstart [kickstart-webseite] und Cobbler
[cobbler-webseite], FAI [FAI-Projekt], Crowbar [crowbar], Foreman [foreman],
OpenQRM [openqrm] und Spacewalk [spacewalk]. Für b) stehen Ihnen die
Werkzeuge
dpkg
, debconf-get-selections
, debconf-set-selections
und
apt-clone
zur Verfügung. Darauf gehen wir unter Mit Debian-Werkzeugen
in Abschnitt Abschnitt 35.3, „Mit Debian-Werkzeugen“ ausführlich ein.