Kata Containers 3.0 su virtualizacija pagrįstu izoliavimu išleidimas

Po dvejų metų kūrimo buvo paskelbtas Kata Containers 3.0 projekto leidimas, kuriame sukurtas konteinerių vykdymo organizavimas naudojant izoliaciją, pagrįstą visaverčiais virtualizacijos mechanizmais. Projektą sukūrė Intel ir Hyper, derindami Clear Containers ir runV technologijas. Projekto kodas parašytas Go and Rust ir platinamas pagal Apache 2.0 licenciją. Projekto plėtrą prižiūri nepriklausomos organizacijos „OpenStack Foundation“ globoje sukurta darbo grupė, į kurią įeina tokios įmonės kaip „Canonical“, „China Mobile“, „Dell/EMC“, „EasyStack“, „Google“, „Huawei“, „NetApp“, „Red Hat“, „SUSE“ ir „ZTE“. .

Kata esmė yra vykdymo laikas, suteikiantis galimybę kurti kompaktiškas virtualias mašinas, veikiančias naudojant visą hipervizorių, o ne naudojant tradicinius konteinerius, naudojančius bendrą Linux branduolį ir atskirtus naudojant vardų sritis ir cgrupes. Virtualiųjų mašinų naudojimas leidžia pasiekti aukštesnį saugumo lygį, kuris apsaugo nuo atakų, kurias sukelia Linux branduolio pažeidžiamumo išnaudojimas.

„Kata Containers“ yra orientuota į integraciją į esamas konteinerių izoliavimo infrastruktūras su galimybe naudoti panašias virtualias mašinas, kad pagerintų tradicinių konteinerių apsaugą. Projekte numatyti mechanizmai, užtikrinantys lengvų virtualių mašinų suderinamumą su įvairiomis konteinerių izoliavimo infrastruktūromis, konteinerių orkestravimo platformomis ir tokiomis specifikacijomis kaip OCI (Open Container Initiative), CRI (Container Runtime Interface) ir CNI (Container Networking Interface). Įrankius galima integruoti su Docker, Kubernetes, QEMU ir OpenStack.

Kata Containers 3.0 su virtualizacija pagrįstu izoliavimu išleidimas

Integracija su konteinerių valdymo sistemomis pasiekiama naudojant konteinerio valdymą imituojantį sluoksnį, kuris virtualioje mašinoje pasiekia valdymo agentą per gRPC sąsają ir specialų tarpinį serverį. Virtualioje aplinkoje, kurią paleidžia hipervizorius, naudojamas specialiai optimizuotas Linux branduolys, kuriame yra tik minimalus būtinų galimybių rinkinys.

Kaip hipervizorius, jis palaiko Dragonball Sandbox (konteineriams optimizuotas KVM leidimas) su QEMU įrankių rinkiniu, taip pat Firecracker ir Cloud Hypervisor naudojimą. Sistemos aplinka apima inicijavimo demoną ir agentą. Agentas teikia vartotojo apibrėžtų konteinerių vaizdų vykdymą OCI formatu, skirtu Docker ir CRI, skirtu Kubernetes. Naudojant kartu su Docker, kiekvienam konteineriui sukuriama atskira virtuali mašina, t.y. Hipervizoriaus viršuje veikianti aplinka naudojama talpyklų paleidimui.

Kata Containers 3.0 su virtualizacija pagrįstu izoliavimu išleidimas

Atminties sąnaudoms sumažinti naudojamas DAX mechanizmas (tiesioginė prieiga prie failų sistemos, apeinant puslapio talpyklą nenaudojant blokinio įrenginio lygio), o identiškų atminties zonų dubliavimuisi naudojama KSM (Kernel Samepage Merging) technologija, kuri leidžia Norėdami organizuoti dalijimąsi priimančiosios sistemos ištekliais ir prisijungti prie skirtingų svečių sistemų, bendrinkite bendrą sistemos aplinkos šabloną.

Naujoje versijoje:

  • Siūlomas alternatyvus vykdymo laikas (runtime-rs), kuris formuoja konteinerių užpildymą, parašytas Rust kalba (anksčiau pateiktas vykdymo laikas buvo parašytas Go kalba). Vykdymo laikas yra suderinamas su OCI, CRI-O ir Containerd, todėl jį galima naudoti su Docker ir Kubernetes.
  • Buvo pasiūlytas naujas Dragonball hipervizorius, pagrįstas KVM ir rust-vmm.
  • Pridėtas prieigos prie GPU peradresavimo naudojant VFIO palaikymas.
  • Pridėtas cgroup v2 palaikymas.
  • Nustatymų keitimo palaikymas nekeičiant pagrindinio konfigūracijos failo buvo įgyvendintas pakeičiant blokus į atskirus failus, esančius „config.d/“ kataloge.
  • Rūdžių komponentuose yra nauja biblioteka, skirta saugiai dirbti su failų keliais.
  • virtiofsd komponentas (parašytas C) buvo pakeistas virtiofsd-rs (parašytas Rust).
  • Pridėtas palaikymas smėlio dėžės QEMU komponentams.
  • QEMU naudoja io_uring API asinchroniniam I/O.
  • Intel TDX (Trusted Domain Extensions) plėtinių palaikymas įdiegtas QEMU ir Cloud-hypervisor.
  • Atnaujinti komponentai: QEMU 6.2.0, Cloud-hypervisor 26.0, Firecracker 1.1.0, Linux branduolys 5.19.2.

Šaltinis: opennet.ru

Добавить комментарий