Het tweede prototype van het ALP-platform, ter vervanging van SUSE Linux Enterprise

SUSE heeft het tweede prototype van de ALP "Punta Baretti" (Adaptable Linux Platform) gepubliceerd, gepositioneerd als een voortzetting van de ontwikkeling van de SUSE Linux Enterprise-distributie. Het belangrijkste verschil tussen ALP is de verdeling van de kerndistributie in twee delen: een uitgekleed ‘host-besturingssysteem’ voor het draaien bovenop hardware en een laag voor het ondersteunen van applicaties, gericht op het draaien in containers en virtuele machines. De assemblages zijn voorbereid voor de x86_64-architectuur. ALP wordt in eerste instantie ontwikkeld met behulp van een open ontwikkelingsproces, waarbij tussentijdse builds en testresultaten voor iedereen openbaar beschikbaar zijn.

De ALP-architectuur is gebaseerd op de ontwikkeling in het “host OS” van de omgeving die minimaal noodzakelijk is om de apparatuur te ondersteunen en te beheren. Er wordt voorgesteld om alle applicaties en componenten van de gebruikersruimte niet in een gemengde omgeving te laten draaien, maar in afzonderlijke containers of virtuele machines die bovenop het “host-besturingssysteem” draaien en van elkaar geïsoleerd zijn. Dankzij deze organisatie kunnen gebruikers zich concentreren op applicaties en abstracte workflows, weg van de onderliggende systeemomgeving en hardware.

Het SLE Micro-product, gebaseerd op de ontwikkelingen van het MicroOS-project, wordt gebruikt als basis voor het “host-besturingssysteem”. Voor gecentraliseerd beheer worden configuratiebeheersystemen Salt (voorgeïnstalleerd) en Ansible (optioneel) aangeboden. Er zijn Podman- en K3s-tools (Kubernetes) beschikbaar om geïsoleerde containers uit te voeren. Tot de systeemcomponenten die in containers zijn geplaatst, behoren yast2, podman, k3s, cockpit, GDM (GNOME Display Manager) en KVM.

Onder de kenmerken van de systeemomgeving wordt het standaardgebruik van schijfversleuteling (FDE, Full Disk Encryption) genoemd met de mogelijkheid om sleutels in TPM op te slaan. De rootpartitie wordt in de alleen-lezenmodus aangekoppeld en verandert niet tijdens het gebruik. De omgeving maakt gebruik van een atomair update-installatiemechanisme. In tegenstelling tot atomaire updates gebaseerd op ostree en snap die in Fedora en Ubuntu worden gebruikt, gebruikt ALP een standaard pakketbeheerder en snapshot-mechanisme in het Btrfs-bestandssysteem in plaats van afzonderlijke atomaire afbeeldingen te bouwen en een aanvullende leveringsinfrastructuur in te zetten.

Er is een configureerbare modus voor de automatische installatie van updates (u kunt bijvoorbeeld de automatische installatie van alleen patches voor kritieke kwetsbaarheden inschakelen of terugkeren naar het handmatig bevestigen van de installatie van updates). Er worden live patches ondersteund om de Linux-kernel bij te werken zonder het werk opnieuw op te starten of te stoppen. Om de overlevingskansen van het systeem (zelfherstel) te behouden, wordt de laatste stabiele toestand vastgelegd met behulp van Btrfs-snapshots (als er afwijkingen worden gedetecteerd na het toepassen van updates of het wijzigen van instellingen, wordt het systeem automatisch overgezet naar de vorige staat).

Het platform maakt gebruik van een softwarestack met meerdere versies - dankzij het gebruik van containers kunt u tegelijkertijd verschillende versies van tools en applicaties gebruiken. U kunt bijvoorbeeld toepassingen uitvoeren die verschillende versies van Python, Java en Node.js als afhankelijkheden gebruiken, waarbij incompatibele afhankelijkheden worden gescheiden. Basisafhankelijkheden worden geleverd in de vorm van BCI-sets (Base Container Images). De gebruiker kan softwarestacks maken, bijwerken en verwijderen zonder andere omgevingen te beïnvloeden.

Belangrijkste veranderingen in het tweede ALP-prototype:

  • Er wordt gebruik gemaakt van de D-Installer installer, waarbij de gebruikersinterface gescheiden is van de interne componenten van YaST en het mogelijk is om diverse frontends te gebruiken, waaronder een frontend voor het beheren van de installatie via een webinterface. De basisinterface voor het beheer van de installatie is gebouwd met behulp van webtechnologieën en omvat een handler die toegang biedt tot D-Bus-oproepen via HTTP, en de webinterface zelf. De webinterface is geschreven in JavaScript met behulp van het React-framework en PatternFly-componenten. Om de veiligheid te garanderen ondersteunt D-Installer installatie op gecodeerde partities en kunt u TPM (Trusted Platform Module) gebruiken om de opstartpartitie te decoderen, met behulp van sleutels die zijn opgeslagen in de TPM-chip in plaats van wachtwoorden.
  • Uitvoering van sommige YaST-clients (bootloader, iSCSIClient, Kdump, firewall, etc.) in afzonderlijke containers mogelijk gemaakt. Er zijn twee soorten containers geïmplementeerd: controlecontainers voor het werken met YaST in tekstmodus, in de GUI en via de webinterface, en testcontainers voor geautomatiseerd sms'en. Een aantal modules is ook aangepast voor gebruik in systemen met transactionele updates. Voor integratie met openQA wordt de libyui-rest-api-bibliotheek met een REST API-implementatie voorgesteld.
  • Uitvoering geïmplementeerd in een container van het Cockpit platform, op basis waarvan de webinterface van de configurator en installer wordt gebouwd.
  • Het is mogelijk om full-disk encryptie (FDE, Full Disk Encryption) te gebruiken in installaties bovenop conventionele apparatuur, en niet alleen in virtualisatiesystemen en cloudsystemen.
  • GRUB2 wordt gebruikt als de belangrijkste bootloader.
  • Configuraties toegevoegd voor het inzetten van containers voor het bouwen van een firewall (firewalld-container) en gecentraliseerd beheer van systemen en clusters (warewulf-container).

Bron: opennet.ru

Voeg een reactie