SLE 15 Unified Installer - ist weniger wirklich mehr?
Mit SUSE Linux Enterprise Server 15 (SLES) wurden nicht nur neue Software-Pakete eingeführt - eine weitere große Änderung war die Modularisierung selbiger. Im Vergleich zu früheren Versionen verfügt SLES das erste Mal über ein generisches Installationsmedium - bei früheren Version gab es beispielsweise für die SLES for SAP- oder SUSE Manager-Veredelungen ein eigenes Abbild.
Ein Resultat dieser Umstellung ist ein deutlich kleineres Installationsabbild von knapp 600 MB, welches nur ein Grundsystem ohne YaST installiert. Benötigte Zusatzpakete können während der Installation vom SUSE Customer Center (SCC), SUSE Subscription Manager (SMT), SUSE Repository Mirroring Tool (RMT) oder von ISO-Abbildern bezogen werden. Neben der Installations-DVD (SLE-15-SP1-Installer-DVD-x86_64-GM-DVD1.iso, 660 MB) gibt es eine Paket-ISO (SLE-15-SP1-Packages-x86_64-GM-DVD1.iso, 8 GB). Die jeweils mit -DVD2.iso beschrifteten ISO-Abbilder beinhalten übrigens lediglich Quellcode-Pakete und dürften daher für die meisten Installationen weniger interessant sein.
Doch leider ist weniger nicht immer mehr, in manchen Szenarien ist der Administrator mit einem größeren Abbild besser bedient.
Produkte, Module und Extensions
SUSE unterteilt die für SLE verfügbare Software in Produkte, Module und Extensions. Zugegebenermaßen ein Konstrukt, das auf den ersten Blick eher verwirrt als einleuchtet. Die folgenden drei Regeln können jedoch helfen, die Unterteilung zu verstehen:
- Auf einem System ist mindestens ein Produkt installiert, welches mindestens ein Modul beinhaltet
- Produkte können durch optionale Module oder Extensions (welche wiederrum mindestens ein Modul enthalten) erweitert werden
- Extensions sind in der Regel mit zusätzlichen Kosten verbunden
Produkte
Name | Beschreibung | Dokumentation |
---|---|---|
SUSE JeOS | Just enough Operating System, Minimal-Abbilder für verschiedene Hypervisor- und Cloud-Umgebungen | [klick!] |
SUSE Enterprise Storage | Enterprise-Speicher auf Ceph-Basis | [klick!] |
SUSE Linux Enterprise Desktop (SLED) | Enterprise Desktop mit gängigen Anwendungen | [klick!] |
SUSE Linux Enterprise Server for SAP Applications (SLES-SAP) | Für SAP-Applikationen optimierter SLES | [klick!] |
SUSE Linux Enterprise for High-Performance Computing | Für Parallel Computing-, Simulations- und Analyse-Anwendungen optimierter SLES | [klick!] |
SUSE Linux Enterprise Real Time | Geringere Systemlatenzen für Echtzeit-Anwendungen | [klick!] |
SUSE Manager SUSE Manager for Retail | Verwaltung von Linux-Infrastruktur | [klick!] |
SUSE OpenStack Cloud | OpenStack-Derivat | [klick!] |
Module
Name | Beschreibung | Lifecycle-Support |
---|---|---|
Base System | Basis-System | 10 Jahre (+ 3 Jahre LTSS) |
Development Tools | Entwicklungstools, SLE SDK | |
Server Applications | Webserver, NVDIMM, Infiniband,... | |
High Availability | Corosync, Hawk, CRM,... | |
Containers | Docker und Tools | 10 Jahre |
Desktop Applications | Grundlegender Desktop | |
Workstation Extension | Office und Multimedia | |
High Performance Computing | OpenMPI, Fortran,... | 10 Jahre (+3 Jahre LTSS und 1 Jahr ESPOS) |
SAP Applications | SAP-spezifische Pakete, z. B. saplocales, IBM JRE,... | |
Legacy | Migrationstools | |
Public Cloud | Azure-/AWS-/OpenStack-/GCP-Tools | |
Live-Patching | Kernel-Patches ohne Reboot | |
Web-Scripting | Jakarta, Tomcat, PHP, NodeJS,... | |
Python2 | Legacy Python-Applikationen | |
Real Time | Geringere Systemlatenzen | |
SUSE-CAP Tools | Tools zur Interaktion mit SUSE Cloud Application Platform | |
Transactional Server | Atomare Updates und Rollbacks |
Extensions
Name | Beschreibung | Dokumentation |
---|---|---|
SUSE Linux Enterprise Live Patching | Kernel-Patches ohne Reboot | [klick!] |
SUSE Linux Enterprise High Availability Extension | Cluster-Werkzeuge | [klick!] |
SUSE Linux Enterprise Workstation Extension | Office und Multimedia | [klick!] |
SUSE Package Hub | Community-Pakete (kostenlos) | [klick!] |
Weniger ist mehr? Mitnichten.
Weder ist Geiz geil, noch ist weniger immer gleichzeitig mehr. Ich verstehe den Ansatz, Installationsabbilder zu vereinheitlichen und zu verkleinern, um den Wartungsaufwand zu minimieren. Im Fall der neuen Installations-DVD fehlen mir jedoch die Basesystem- und Server Applications-Module. Die meisten Installationen kommen nicht ohne Pakete aus besagten Modulen aus und nicht jedes System hat direkt während oder nach der Installation Zugriff auf einen Paketserver. An dieser Stelle ist der Name des Abbilds irreführend - eine eindeutigere Bezeichnung wäre Minimal-ISO oder Netinstall-ISO.
Vor allem wer automatisierte Installationen mittels AutoYaST durchführt erlebt mit der neuen einheitlichen ISO sein Waterloo. Hier fehlen das Basesystem-Modul und das autoyast2-Paket. Je nach YaST-Profil können natürlich noch weitere Module (z. B. Server Applications) fehlen.
Erstellen eines benutzerdefinierten ISO-Abbilds
Dieses Vorgehen entfällt voraussichtlich mit SLE 15 SP2, siehe auch: SP2 Release Notes
Die Lösung des Problems ist die Erstellung einer benutzerdefinierten ISO-Abbilds mithilfe des `mksusecd´-Tools, welches in OpenSUSE und der SUSE Package Hub-Extension enthalten ist. Dieses kann aus von den DVDs vermischten Ordnerstrukturen wieder eine bootbare Datei erstellen. Falls noch nicht geschehen, muss dieses Tool zunächst installiert werden:
1# zypper install mksusecd
Der Ausgangspunkt sollte immer die Installations-DVD 1 sein, deren Inhalt in einen Ordner kopiert werden muss - beispielsweise durch Einbinden der ISO-Datei:
1$ mount -o loop,ro SLE-15-SP1-Installer-DVD-x86_64-GM-DVD1.iso /mnt
2$ mkdir ~/suse-custom
3$ rsync -aqz /mnt ~/suse-custom
Anschließend wird die Packages-DVD eingehängt und benötigte Inhalte kopiert. Die einzelnen Module und Products finden sich direkt als Unterordner im Hauptverzeichnis. In diesem Beispiel werden die Module Basesystem und Server-Applications kopiert:
1$ umount /mnt
2$ mount -o loop,ro SLE-15-SP1-Packages-x86_64-GM-DVD1.iso /mnt
3$ rsync -aqz /mnt/Module-{Basesystem,Server-Applications} ~/suse-custom
Der nächste Schritt ist es, die Datei media.1/products
um Einträge der neuen Module zu erweitern. Eine Zeile besteht aus dem Pfad und der Modul-Bezeichnung. Diese Informationen sind auch unter dem gleichen Pfad auf der Packages-DVD zu finden und können so selektiv kopiert werden:
1/ SLES15-SP1 15.1-0
2/Module-Basesystem Basesystem-Module 15.1-0
3/Module-Server-Applications Server-Applications-Module 15.1-0
Abschließend erzeugt mksusecd
ein neues Abbild. Das Erstellen einer kryptografischen Prüfsumme empfiehlt sich, wenn die Datei auf weitere Systeme kopiert werden soll:
1$ mksusecd --create SLE-15-SP1-Pinkepank-x86_64-DVD.iso ~/suse-custom
2Repositories:
3 SLES15-SP1 [15.1-0]
4 Basesystem-Module [15.1-0]
5 Server-Applications-Module [15.1-0]
6assuming repo-md sources
7El-Torito legacy bootable (x86_64)
8El-Torito UEFI bootable (x86_64)
9building: 100%
10calculating sha256...
11$ sha256sum SLE-15-SP1-Pinkepank-x86_64-DVD.iso > SLE-15-SP1-Pinkepank-x86_64-DVD.iso.sha256
Inhalte der Packages-DVD
Die folgende Tabelle enthält eine Übersicht über verfügbare Inhalte der Packages-DVD:
Name | Größe (ca.) |
---|---|
Module-Basesystem | 2 GB |
Module-CAP-Tools | 5 MB |
Module-Containers | 78 MB |
Module-Desktop-Applications | 1,5 GB |
Module-Development-Tools | 1,3 GB |
Module-HPC | 650 MB |
Module-Legacy | 300 MB |
Module-Live-Patching | 17 MB |
Module-Public-Cloud | 45 MB |
Module-Python2 | 50 MB |
Module-RT | 280 MB |
Module-SAP-Applications | 15 MB |
Module-Server-Applications | 400 MB |
Module-Transactional-Server | 1 MB |
Module-Web-Scripting | 50 MB |
Product-HA | 80 MB |
Product-HPC | 1 MB |
Product-RT | 1 MB |
Product-SLED | 1 MB |
Product-SLES | 1 MB |
Product-SLES_SAP | 1 MB |
Product-SUSE-Manager-Proxy-4.0 | 1 MB |
Product-SUSE-Manager-Retail-Branch-Server-4.0 | 1 MB |
Product-SUSE-Manager-Server-4.0 | 1 MB |
Product-WE | 1 MB |