Zweiter Prototyp der ALP-Plattform, die SUSE Linux Enterprise ersetzen soll.

Die Firma SUSE hat den zweiten Prototyp der ALP-Plattform „Punta Baretti“ (Adaptable Linux Platform) veröffentlicht, die als Fortsetzung der Entwicklung der SUSE Linux Enterprise-Distribution positioniert wird. Ein wesentlicher Unterschied von ALP ist die Aufteilung der Basis der Distribution in zwei Teile: ein minimales „Host OS“ für den Betrieb auf der Hardware und eine Schicht zur Unterstützung von Anwendungen, die auf Container und virtuelle Maschinen ausgerichtet ist. Die Builds sind für die Architektur x86_64 vorbereitet. ALP wird ursprünglich mit einem offenen Entwicklungsprozess entwickelt, bei dem Zwischen-Builds und Testergebnisse öffentlich allen Interessierten zur Verfügung stehen.

Die Architektur von ALP basiert auf der Entwicklung einer „Host OS“-Umgebung, die minimal erforderlich ist, um Hardware zu unterstützen und zu verwalten. Alle Anwendungen und Komponenten des Benutzerraums sollen nicht in einer gemischten Umgebung, sondern in separaten Containern oder in virtuellen Maschinen, die über dem „Host OS“ ausgeführt werden und voneinander isoliert sind. Eine solche Organisation ermöglicht es den Benutzern, sich auf die Anwendungen zu konzentrieren und die Arbeitsabläufe zu abstrahieren, indem sie von der niedrigstufigen Systemumgebung und Hardware getrennt werden.

Als Grundlage für das „Host OS“ wird das Produkt SLE Micro verwendet, das auf den Ergebnissen des Projekts MicroOS basiert. Für das zentrale Management werden die Konfigurationsmanagement-Systeme Salt (vorinstalliert) und Ansible (Option) angeboten. Für den Betrieb isolierter Container stehen die Werkzeuge Podman und K3s (Kubernetes) zur Verfügung. Zu den in Container ausgegliederten Systemkomponenten gehören yast2, podman, k3s, cockpit, GDM (GNOME Display Manager) und KVM.

Zu den Besonderheiten der Systemumgebung gehört die standardmäßige Verwendung von Festplattenschlüsselung (FDE, Full Disk Encryption) mit der Möglichkeit, Schlüssel im TPM zu speichern. Die Root-Partition wird schreibgeschützt gemountet und während des Betriebs nicht verändert. In der Umgebung kommt ein Mechanismus für atomare Updates zur Anwendung. Im Gegensatz zu den atomaren Updates auf Basis von ostree und snap, die in Fedora und Ubuntu verwendet werden, verwendet ALP anstelle des Aufbaus separater atomarer Images und der Bereitstellung zusätzlicher Lieferinfrastrukturen den standardmäßigen Paketmanager und den Snapshot-Mechanismus im Btrfs-Dateisystem.

Es ist ein konfigurierbarer automatischer Update-Modus vorgesehen (zum Beispiel kann die automatische Installation nur für kritische Sicherheitsupdates aktiviert werden oder es kann zur manuellen Bestätigung der Installation von Updates zurückgekehrt werden). Für das Aktualisieren des Linux-Kernels ohne Neustart und ohne Unterbrechung des Betriebs werden Live-Patches unterstützt. Zur Aufrechterhaltung der Systemresilienz (Self-Healing) wird der letzte stabile Zustand mithilfe von Btrfs-Snapshots festgehalten (bei Erkennung von Anomalien nach der Anwendung von Updates oder Änderungen an den Einstellungen wird das System automatisch in den vorherigen Zustand zurückversetzt).

In der Plattform wird ein mehrversionales Software-Stack verwendet – dank der Verwendung von Containern können verschiedene Versionen von Werkzeugen und Anwendungen gleichzeitig genutzt werden. Beispielsweise können Anwendungen, die unterschiedliche Versionen von Python, Java und Node.js in ihren Abhängigkeiten nutzen, gestartet werden, während inkompatible Abhängigkeiten voneinander getrennt werden. Die Grundabhängigkeiten werden in Form von BCI (Base Container Images) bereitgestellt. Benutzer können Software-Stacks erstellen, aktualisieren und löschen, ohne andere Umgebungen zu beeinträchtigen.

Die wichtigsten Änderungen im zweiten Prototyp von ALP:

  • Der D-Installer wurde aktiviert, bei dem die Benutzeroberfläche von den internen Komponenten von YaST getrennt ist und die Möglichkeit besteht, verschiedene Frontends zu nutzen, einschließlich eines Frontends zur Verwaltung der Installation über eine Web-Oberfläche. Die grundlegende Oberfläche zur Verwaltung der Installation ist mit Web-Technologien erstellt und umfasst einen Handler, der den Zugriff auf D-Bus-Aufrufe über HTTP ermöglicht, sowie die eigentliche Web-Oberfläche. Die Web-Oberfläche ist in JavaScript unter Verwendung des React-Frameworks und der PatternFly-Komponenten geschrieben. Um die Sicherheit zu gewährleisten, unterstützt der D-Installer die Installation auf verschlüsselten Partitionen und ermöglicht die Verwendung von TPM (Trusted Platform Module) zur Entschlüsselung der Bootpartition, wobei anstelle von Passwörtern Schlüssel verwendet werden, die im TPM-Chip gespeichert sind.
  • Die Ausführung einiger YaST-Kunden (Bootloader, iSCSIClient, Kdump, Firewall usw.) in separaten Containern wurde sichergestellt. Es wurden zwei Containerarten umgesetzt – verwaltende für die Arbeit mit YaST im Textmodus, in der GUI und über das Web-Interface, sowie Testcontainer für die Durchführung automatisierter Tests. Eine Reihe von Modulen wurde auch für den Einsatz in Systemen mit transaktionalen Updates angepasst. Zur Integration mit openQA wurde die Bibliothek libyui-rest-api mit der Implementierung eines REST API vorgeschlagen.
  • Die Ausführung in einem Container der Cockpit-Plattform, auf deren Grundlage das Web-Interface des Konfigurators und des Installationsprogramms erstellt wurde, wurde implementiert.
  • Die Möglichkeit der Verwendung von vollständiger Festplattenverschlüsselung (FDE, Full Disk Encryption) wurde in Installationen auf gewöhnlicher Hardware, nicht nur in Virtualisierungssystemen und Cloud-Systemen, sichergestellt.
  • Als primärer Bootloader wurde GRUB2 eingesetzt.
  • Konfigurationen zum Bereitstellen von Containern zum Aufbau einer Firewall (firewalld-container) und zur zentralisierten Verwaltung von Systemen und Clustern (warewulf-container) wurden hinzugefügt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4