Il secondo prototipo della piattaforma ALP, in sostituzione di SUSE Linux Enterprise

SUSE ha pubblicato il secondo prototipo dell'ALP "Punta Baretti" (Piattaforma Linux Adattabile), posizionata come continuazione dello sviluppo della distribuzione SUSE Linux Enterprise. La differenza fondamentale tra ALP è la divisione della distribuzione principale in due parti: un “sistema operativo host” ridotto all’osso per l’esecuzione sull’hardware e un livello per il supporto delle applicazioni, finalizzato all’esecuzione in contenitori e macchine virtuali. Gli assiemi sono preparati per l'architettura x86_64. ALP viene inizialmente sviluppato utilizzando un processo di sviluppo aperto, in cui le build intermedie e i risultati dei test sono pubblicamente disponibili a tutti.

L'architettura ALP si basa sullo sviluppo nel “sistema operativo host” dell'ambiente minimamente necessario per supportare e gestire le apparecchiature. Si propone di eseguire tutte le applicazioni e i componenti dello spazio utente non in un ambiente misto, ma in contenitori separati o macchine virtuali eseguite sul “sistema operativo host” e isolate l’una dall’altra. Questa organizzazione consentirà agli utenti di concentrarsi sulle applicazioni e sui flussi di lavoro astratti lontano dall'ambiente di sistema e dall'hardware sottostanti.

Come base per il “sistema operativo host” viene utilizzato il prodotto SLE Micro, basato sugli sviluppi del progetto MicroOS. Per la gestione centralizzata vengono offerti i sistemi di gestione della configurazione Salt (preinstallato) e Ansible (opzionale). Sono disponibili gli strumenti Podman e K3s (Kubernetes) per eseguire contenitori isolati. Tra i componenti del sistema collocati nei contenitori ci sono yast2, podman, k3s, Cockpit, GDM (GNOME Display Manager) e KVM.

Tra le caratteristiche dell'ambiente di sistema si menziona l'utilizzo predefinito della crittografia del disco (FDE, Full Disk Encryption) con la possibilità di archiviare le chiavi nel TPM. La partizione root viene montata in modalità di sola lettura e non cambia durante il funzionamento. L'ambiente utilizza un meccanismo di installazione dell'aggiornamento atomico. A differenza degli aggiornamenti atomici basati su ostree e snap utilizzati in Fedora e Ubuntu, ALP utilizza un gestore di pacchetti standard e un meccanismo di snapshot nel file system Btrfs invece di creare immagini atomiche separate e distribuire infrastrutture di distribuzione aggiuntive.

Esiste una modalità configurabile per l'installazione automatica degli aggiornamenti (ad esempio, è possibile abilitare l'installazione automatica solo delle patch per le vulnerabilità critiche o tornare alla conferma manuale dell'installazione degli aggiornamenti). Sono supportate patch live per aggiornare il kernel Linux senza riavviare o interrompere il lavoro. Per mantenere la sopravvivenza del sistema (autoriparazione), l'ultimo stato stabile viene registrato utilizzando le istantanee Btrfs (se vengono rilevate anomalie dopo l'applicazione degli aggiornamenti o la modifica delle impostazioni, il sistema viene automaticamente trasferito allo stato precedente).

La piattaforma utilizza uno stack software multiversione: grazie all'utilizzo dei container è possibile utilizzare contemporaneamente diverse versioni di strumenti e applicazioni. Ad esempio, puoi eseguire applicazioni che utilizzano versioni diverse di Python, Java e Node.js come dipendenze, separando le dipendenze incompatibili. Le dipendenze di base vengono fornite sotto forma di set BCI (Base Container Images). L'utente può creare, aggiornare ed eliminare stack software senza influenzare altri ambienti.

Principali modifiche nel secondo prototipo ALP:

  • Viene utilizzato il programma di installazione D-Installer, in cui l'interfaccia utente è separata dai componenti interni di YaST ed è possibile utilizzare diversi frontend, incluso un frontend per la gestione dell'installazione tramite interfaccia web. L'interfaccia di base per la gestione dell'installazione è realizzata utilizzando tecnologie web e include un gestore che fornisce l'accesso alle chiamate D-Bus tramite HTTP e l'interfaccia web stessa. L'interfaccia web è scritta in JavaScript utilizzando il framework React e i componenti PatternFly. Per garantire la sicurezza, D-Installer supporta l'installazione su partizioni crittografate e consente di utilizzare TPM (Trusted Platform Module) per decrittografare la partizione di avvio, utilizzando le chiavi archiviate nel chip TPM anziché le password.
  • Abilitata l'esecuzione di alcuni client YaST (bootloader, iSCSIClient, Kdump, firewall, ecc.) in contenitori separati. Sono stati implementati due tipi di contenitori: quelli di controllo per lavorare con YaST in modalità testo, nella GUI e tramite l'interfaccia Web, e quelli di test per la messaggistica automatizzata. Numerosi moduli sono inoltre adattati per l'uso in sistemi con aggiornamenti transazionali. Per l'integrazione con openQA, viene proposta la libreria libyui-rest-api con un'implementazione API REST.
  • Esecuzione implementata in un contenitore della piattaforma Cockpit, sulla base della quale viene costruita l'interfaccia web del configuratore e installatore.
  • È possibile utilizzare la crittografia dell'intero disco (FDE, Full Disk Encryption) nelle installazioni su apparecchiature convenzionali e non solo nei sistemi di virtualizzazione e nei sistemi cloud.
  • GRUB2 viene utilizzato come bootloader principale.
  • Aggiunte configurazioni per la distribuzione di contenitori per la creazione di un firewall (firewalld-container) e gestione centralizzata di sistemi e cluster (warewulf-container).

Fonte: opennet.ru

Aggiungi un commento