Compania SUSE a publicat al doilea prototip al platformei ALP „Punta Baretti” (Adaptable Linux Platform), poziționată ca o continuare a dezvoltării distribuției SUSE Linux Enterprise. Principalul diferențiator al ALP este separarea bazei fundamentale a distribuției în două părți: un „host OS” redus pentru funcționarea pe hardware și un strat pentru suportul aplicațiilor, orientat spre rularea în containere și mașini virtuale. Versiunile sunt pregătite pentru arhitectura x86_64. ALP este dezvoltată inițial folosind un proces deschis, în care versiunile intermediare și rezultatele testării sunt disponibile public tuturor doritorilor.
Arhitectura ALP se bazează pe dezvoltarea unui mediu „host OS”, minim necesar pentru suportul și gestionarea hardware-ului. Toate aplicațiile și componentele spațiului utilizator sunt propuse pentru a fi rulate nu într-un mediu mixt, ci în containere separate sau în virtuálne mašini, executate deasupra „host OS” și izolate una de cealaltă. O astfel de organizare va permite utilizatorilor să se concentreze pe aplicații și să abstreacă fluxurile de lucru, separându-le de mediul sistemic de bază și de echipament.
Ca bază pentru „host OS” este utilizat produsul SLE Micro, bazat pe lucrările proiectului MicroOS. Pentru gestionarea centralizată se propun sisteme de gestionare a configurației Salt (preinstalat) și Ansible (opțional). Pentru rularea containerelor izolate sunt disponibile instrumentele Podman și K3s (Kubernetes). Printre componentele sistemului mutate în containere se numără yast2, podman, k3s, cockpit, GDM (GNOME Display Manager) și KVM.
Printre caracteristicile mediului sistemic se menționează utilizarea, în mod implicit, a criptării complete a discului (FDE, Full Disk Encryption) cu posibilitatea de stocare a cheilor în TPM. Partiția de bază este montată în modul doar pentru citire și nu se modifică în timpul funcționării. În mediu se aplică mecanismul de instalare atomică a actualizărilor. Spre deosebire de actualizările atomice bazate pe ostree și snap, utilizate în Fedora și Ubuntu, în ALP, în loc de construirea de imagini atomice separate și desfășurarea unei infrastructuri suplimentare de livrare, se utilizează managerul de pachete standard și mecanismul de instantanee în FS Btrfs.
Se preconizează un mod configurabil de instalare automată a actualizărilor (de exemplu, se poate activa auto-instalarea doar a corecțiilor pentru vulnerabilitățile critice sau se poate reveni la confirmarea manuală a instalării actualizărilor). Pentru actualizarea nucleului Linux fără repornire și suspendarea activității, sunt acceptate patch-uri live. Pentru menținerea rezilienței sistemului (self-healing), se realizează fixarea ultimei stări stabile prin intermediul snapshot-urilor Btrfs (în caz de detectare a anomaliilor după aplicarea actualizărilor sau modificarea setărilor, sistemul este automat revertat la starea anterioară).
În platformă se utilizează un stivă software multi-version — datorită utilizării containerelor, pot fi folosite simultan versiuni diferite ale instrumentelor și aplicațiilor. De exemplu, pot fi rulate aplicații care utilizează versiuni diferite de Python, Java și Node.js în dependențe, separând dependențele incompatibile. Dependențele de bază sunt livrate sub formă de seturi BCI (Base Container Images). Utilizatorul poate crea, actualiza și șterge stive software fără a afecta alte medii.
Principalele modificări în al doilea prototip ALP:
- A fost activat instalatorul D-Installer, care are o interfață utilizator separată de componentele interne YaST și permite utilizarea diferitelor frontend-uri, inclusiv un frontend pentru gestionarea instalării printr-o interfață web. Interfața de bază pentru gestionarea instalării este construită utilizând tehnologii web și include un procesator care oferă acces la apelurile D-Bus prin HTTP și interfața web propriu-zisă. Interfața web este scrisă în JavaScript folosind cadrul React și componentele PatternFly. Pentru a asigura securitatea, D-Installer suportă instalarea pe partiții criptate și permite utilizarea TPM (Trusted Platform Module) pentru decriptarea partiției de boot, folosind în locul parolelor chei stocate în cipul TPM.
- Este asigurată execuția unor clienți YaST (bootloader, iSCSIClient, Kdump, firewall etc.) în containere separate. Au fost implementate două tipuri de containere - de gestionare pentru a lucra cu YaST în modul text, în GUI și prin interfața web și de testare pentru a realiza testări automatizate de tip text. Un număr de module au fost adaptate pentru utilizarea în sistemele cu actualizări tranzacționale. Pentru integrarea cu openQA, a fost propusă biblioteca libyui-rest-api cu implementarea REST API.
- A fost implementată executarea într-un container al platformei Cockpit, pe baza căruia este construită interfața web a configuratorului și instalatorului.
- Este asigurată posibilitatea utilizării criptării complete a discului (FDE, Full Disk Encryption) în instalările pe echipamente obișnuite, nu doar în sistemele de virtualizare și în sistemele cloud.
- Ca bootloader principal este utilizat GRUB2.
- Au fost adăugate configurații pentru desfășurarea de containere pentru construirea unui firewall (firewalld-container) și pentru gestionarea centralizată a sistemelor și clusterelor (warewulf-container).
Sursa: opennet.ro
