Vrystelling van Kata Containers 3.0 met virtualisasie-gebaseerde isolasie

Na twee jaar van ontwikkeling is die vrystelling van die Kata Containers 3.0-projek gepubliseer, wat 'n stapel ontwikkel vir die organisering van die uitvoering van houers met behulp van isolasie gebaseer op volwaardige virtualiseringsmeganismes. Die projek is deur Intel en Hyper geskep deur Clear Containers en runV-tegnologie te kombineer. Die projekkode is geskryf in Go and Rust en versprei onder die Apache 2.0-lisensie. Die ontwikkeling van die projek word toesig gehou deur 'n werkgroep wat geskep is onder die vaandel van die onafhanklike organisasie OpenStack Foundation, wat maatskappye soos Canonical, China Mobile, Dell / EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE en ZTE insluit. .

Die kern van Kata is die looptyd, wat die vermoë bied om kompakte virtuele masjiene te skep wat met 'n volwaardige hipervisor werk, in plaas daarvan om tradisionele houers te gebruik wat 'n algemene Linux-kern gebruik en isoleer deur naamruimtes en cgroups te gebruik. Die gebruik van virtuele masjiene laat jou toe om 'n hoër vlak van sekuriteit te bereik wat beskerm teen aanvalle wat veroorsaak word deur die uitbuiting van kwesbaarhede in die Linux-kern.

Kata Containers is gefokus op die integrasie in bestaande houer-isolasie-infrastruktuur met die vermoë om sulke virtuele masjiene te gebruik om die beskerming van tradisionele houers te verbeter. Die projek verskaf meganismes om ligte virtuele masjiene versoenbaar te maak met verskeie houer-isolasieraamwerke, houerorkestrasieplatforms en spesifikasies soos OCI (Open Container Initiative), CRI (Container Runtime Interface) en CNI (Container Networking Interface). Integrasies met Docker, Kubernetes, QEMU en OpenStack is beskikbaar.

Vrystelling van Kata Containers 3.0 met virtualisasie-gebaseerde isolasie

Integrasie met houerbestuurstelsels word bereik deur 'n laag wat houerbestuur simuleer, wat deur die gRPC-koppelvlak en 'n spesiale proxy toegang tot die beheeragent in die virtuele masjien verkry. Binne die virtuele omgewing, wat deur die hypervisor geloods word, word 'n spesiaal geoptimaliseerde Linux-kern gebruik, wat slegs die minimum stel nodige kenmerke bevat.

As 'n hiperviser word die gebruik van Dragonball Sandbox (KVM-uitgawe geoptimaliseer vir houers) met QEMU toolkit, sowel as Firecracker en Cloud Hypervisor ondersteun. Die stelsel omgewing sluit die inisialisering daemon en die agent. Die agent bestuur gebruikersgedefinieerde houerbeelde in OCI-formaat vir Docker en CRI vir Kubernetes. Wanneer dit saam met Docker gebruik word, word 'n aparte virtuele masjien vir elke houer geskep, d.w.s. die hipervisor-geloodsde omgewing word gebruik om houers te nes.

Vrystelling van Kata Containers 3.0 met virtualisasie-gebaseerde isolasie

Om geheueverbruik te verminder, word die DAX-meganisme gebruik (direkte toegang tot die FS wat die bladsykas omseil sonder om die bloktoestelvlak te gebruik), en KSM (Kernel Samepage Merging)-tegnologie word gebruik om identiese geheue-areas te ontduik, wat dit moontlik maak om gasheerstelselhulpbronne te deel en die koppeling van 'n gemeenskaplike stelsel omgewing sjabloon aan verskillende gas stelsels.

In die nuwe weergawe:

  • 'n Alternatiewe looptyd (runtime-rs) word voorgestel, wat die vulsel van houers vorm, geskryf in die Rust-taal (die voorheen verskafde looptyd is in die Go-taal geskryf). Runtime is versoenbaar met OCI, CRI-O en Containerd, wat dit versoenbaar maak met Docker en Kubernetes.
  • 'n Nuwe dragonball-hypervisor gebaseer op KVM en roes-vmm is voorgestel.
  • Bygevoeg ondersteuning vir GPU toegang aanstuur met behulp van VFIO.
  • Bygevoeg ondersteuning vir cgroup v2.
  • Ondersteuning geïmplementeer vir die verandering van instellings sonder om die hoofkonfigurasielêer te verander deur blokke in aparte lêers te vervang wat in die "config.d/"-gids geleë is.
  • Roeskomponente gebruik 'n nuwe biblioteek om veilig met lêerpaaie te werk.
  • Die virtiofsd-komponent (geskryf in C) is vervang met virtiofsd-rs (geskryf in Rust).
  • Bygevoeg ondersteuning vir sandbox isolasie van QEMU komponente.
  • QEMU gebruik die io_uring API vir asynchrone I/O.
  • Ondersteuning vir Intel TDX (Trusted Domain Extensions) uitbreidings is geïmplementeer vir QEMU en Cloud-hypervisor.
  • Opgedateerde komponente: QEMU 6.2.0, Cloud-hypervisor 26.0, Firecracker 1.1.0, Linux-kern 5.19.2.

Bron: opennet.ru

Voeg 'n opmerking