Lansarea Kata Containers 3.2 cu izolare bazată pe virtualizare

A fost publicat numărul 3.2 al proiectului Kata Containers, care dezvoltă un cadru pentru organizarea execuției containerelor folosind izolare bazată pe mecanisme de virtualizare complete. Proiectul a fost creat de companiile Intel și Hyper prin integrarea tehnologiilor Clear Containers și runV. Codul proiectului este scris în limbajele Go și Rust și este distribuit sub licența Apache 2.0. Dezvoltarea proiectului este coordonată de un grup de lucru înființat sub egida organizației independente OpenStack Foundation, în care participă companii precum Canonical, China Mobile, Dell/EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE și ZTE.

Bazându-se pe Kata, runtime-ul permite crearea de mașini virtuale compacte, executate folosind un hypervisor complet, în locul utilizării containerelor tradiționale, care folosesc un nucleu Linux comun și sunt izolate prin spații de nume și cgroups. Utilizarea mașini virtuale permite atingerea unui nivel mai înalt de securitate, protejând împotriva atacurilor cauzate de exploatarea vulnerabilităților din nucleul Linux.

Kata Containers este orientat spre integrarea în infrastructurile existente de izolare a containerelor, cu posibilitatea de a utiliza astfel de mașini virtuale pentru a spori protecția containerelor tradiționale. Proiectul oferă mecanisme pentru asigurarea compatibilității mașinilor virtuale ușoare cu diverse infrastructuri de izolare a containerelor, platforme de orchestrare a containerelor și specificații precum OCI (Open Container Initiative), CRI (Container Runtime Interface) și CNI (Container Networking Interface). Sunt disponibile instrumente pentru integrarea cu Docker, Kubernetes, QEMU și OpenStack.

Integrarea cu sistemele de gestionare a containerelor se realizează printr-un strat care simulează gestionarea containerului, care, prin intermediul unei interfețe gRPC și a unui proxy special, se adresează agentului de control din mașina virtuală. În interiorul mediului virtual care rulează pe hypervisor, se folosește un nucleu Linux optimizat, care conține doar setul minim de funcționalități necesare.

Ca hipervizor este acceptat Dragonball Sandbox (ediția KVM, optimizată pentru containere) cu instrumentele QEMU, precum și Firecracker și Cloud Hypervisor. Mediul de sistem include un demon de inițializare și un agent (Agent). Agentul asigură executarea anumitor imagini de container specificate de utilizator în format OCI pentru Docker și CRI pentru Kubernetes. Atunci când este utilizat împreună cu Docker, pentru fiecare container se creează o mașină virtuală separată mașină virtuală, adică mediul lansat deasupra hipervizorului este utilizat pentru lansarea încuplată a containerelor.

Lansarea Kata Containers 3.2 cu izolare bazată pe virtualizare

Pentru a reduce consumul de memorie, se aplică mecanismul DAX (acces direct la FS ocolind cache-ul paginilor fără a utiliza nivelul dispozitivelor de bloc), iar pentru deduplicarea zonelor de memorie identice se aplică tehnologia KSM (Kernel Samepage Merging), ceea ce permite organizarea utilizării comune a resurselor sistemului gazdă și conectarea unui șablon comun al mediului de sistem la diferite sisteme gazdă.

În noua versiune:

  • Pe lângă suportul pentru arhitectura AMD64 (x86_64), au fost realizate lansări pentru arhitecturile ARM64 (Aarch64) și s390 (IBM Z). Se află în dezvoltare suportul pentru arhitectura ppc64le (IBM Power).
  • Pentru organizarea accesului la imaginile containerelor, a fost utilizată sistemul de fișiere Nydus 2.2.0, care folosește adresarea pe baza conținutului pentru o colaborare eficientă cu imaginile standard. Nydus suportă încărcarea imaginilor la cerere (încărcându-le doar atunci când este necesar), asigură deduplicarea datelor repetitive și poate utiliza diferite backend-uri pentru stocarea efectivă. Oferă compatibilitate cu POSIX (similar cu Composefs, implementarea Nydus combină funcționalitățile OverlayFS cu EROFS sau un modul FUSE).
  • În componenta principală a proiectului Kata Containers a fost integrat managerul de mașini virtuale Dragonball, care va continua să evolueze în același repository.
  • Utilitarul kata-ctl a fost extins cu o funcție de depanare pentru a se conecta la mașina virtuală din mediu gazdă.
  • Au fost extinse capacitățile de gestionare a GPU-urilor și a fost adăugat suport pentru direcționarea GPU-urilor în containere pentru calculul confidențial (Confidential Container), care asigură criptarea datelor, memoriei și stării de execuție pentru protecția în caz de compromitere a mediului gazdă sau a hipervizorului.
  • În Runtime-rs a fost adăugată o subsistemă de gestionare a dispozitivelor utilizate în containere sau medii sandbox. Se suportă lucrul cu vfio, dispozitive de stocare, de rețea și alte tipuri de dispozitive.
  • S-a asigurat compatibilitatea cu OCI Runtime 1.0.2 și Kubernetes 1.23.1.
  • Ca nucleu Linux, se recomandă utilizarea versiunii 6.1.38 cu patch-uri.
  • Dezvoltarea a fost mutată de la sistemul de integrare continuă Jenkins la GitHub Actions.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster