Kata Containers 3.0 kaleratzea birtualizazioan oinarritutako isolamenduarekin

Bi urteko garapenaren ondoren, Kata Containers 3.0 proiektuaren kaleratzea argitaratu da, birtualizazio mekanismo osoetan oinarritutako isolamendua erabiliz edukiontzien exekuzioa antolatzeko pila bat garatuz. Proiektua Intel eta Hyper-ek sortu zuten Clear Containers eta runV teknologiak konbinatuz. Proiektuaren kodea Go eta Rust-en idatzita dago, eta Apache 2.0 lizentziapean banatzen da. Proiektuaren garapena OpenStack Foundation erakunde independentearen babespean sortutako lantalde batek gainbegiratzen du, Canonical, China Mobile, Dell/EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE eta ZTE bezalako enpresak biltzen dituena. .

Kata-ren muina exekuzio-denbora dago, hipervisor osoa erabiliz exekutatzen diren makina birtual trinkoak sortzeko gaitasuna ematen duena, Linux kernel arrunta erabiltzen duten eta izen-guneak eta cgroups erabiliz isolatuta dauden edukiontzi tradizionalak erabili beharrean. Makina birtualak erabiltzeari esker, Linux kerneleko ahultasunak ustiatzeak eragindako erasoetatik babesten duen segurtasun-maila handiagoa lortzen duzu.

Kata Containers lehendik dauden edukiontzi isolatzeko azpiegituretan integratzera bideratzen da, antzeko makina birtualak erabiltzeko gaitasuna duten edukiontzi tradizionalen babesa hobetzeko. Proiektuak makina birtual arinen bateragarritasuna bermatzeko mekanismoak eskaintzen ditu hainbat edukiontzi isolatzeko azpiegiturarekin, edukiontzien orkestrazio plataformarekin eta zehaztapenekin, hala nola OCI (Open Container Initiative), CRI (Container Runtime Interface) eta CNI (Container Networking Interface). Tresnak eskuragarri daude Docker, Kubernetes, QEMU eta OpenStack-ekin integratzeko.

Kata Containers 3.0 kaleratzea birtualizazioan oinarritutako isolamenduarekin

Edukiontzien kudeaketa-sistemekin integrazioa edukiontzien kudeaketa simulatzen duen geruza baten bidez lortzen da, zeina makina birtualeko agente kudeatzailea gRPC interfazearen eta proxy berezi baten bidez sartzen dena. Hipervisorak abiarazten duen ingurune birtualean, bereziki optimizatutako Linux kernel bat erabiltzen da, beharrezko gaitasunen gutxieneko multzoa soilik duena.

Hipervisor gisa, Dragonball Sandbox (edukiontzietarako optimizatutako KVM-ren edizioa) QEMU tresna-tresnarekin erabiltzea onartzen du, baita Firecracker eta Cloud Hypervisor ere. Sistemaren inguruneak hasierako deabru bat eta agente bat ditu. Agenteak erabiltzaileak definitutako edukiontzien irudiak exekutatzen ditu Docker-erako OCI formatuan eta Kubernetes-erako CRI. Dockerrekin batera erabiltzen denean, makina birtual bereizia sortzen da edukiontzi bakoitzeko, hau da. Hipervisorearen gainean exekutatzen den ingurunea edukiontziak habiaratuta abiarazteko erabiltzen da.

Kata Containers 3.0 kaleratzea birtualizazioan oinarritutako isolamenduarekin

Memoria-kontsumoa murrizteko, DAX mekanismoa erabiltzen da (fitxategi-sistemarako sarbide zuzena, orrialdeen cachea saihestuz blokeo-gailuaren maila erabili gabe), eta memoria-eremu berdinak desbikoizteko, KSM (Kernel Samepage Merging) teknologia erabiltzen da, eta horrek aukera ematen du. ostalari-sistemaren baliabideak partekatzea antolatzeko eta gonbidatutako sistema desberdinetara konektatzeko sistema-ingurunearen txantiloi komun bat partekatzeko.

Bertsio berrian:

  • Exekuzio-denbora alternatibo bat (runtime-rs) proposatzen da, edukiontziak betetzea osatzen duena, Rust hizkuntzan idatzia (lehen emandako exekuzio-denbora Go hizkuntzan idatzi zen). Runtime OCI, CRI-O eta Containerd-ekin bateragarria da, eta Docker eta Kubernetes-ekin erabiltzeko aukera ematen du.
  • KVM eta rust-vmm-n oinarritutako dragoi bolaren hipervisor berri bat proposatu da.
  • VFIO erabiliz GPUrako sarbidea birbidaltzeko laguntza gehitu da.
  • cgroup v2rako euskarria gehitu da.
  • Konfigurazio fitxategi nagusia aldatu gabe ezarpenak aldatzeko laguntza inplementatu da "config.d/" direktorioan dauden fitxategi bereizietan blokeak ordezkatuz.
  • Rust osagaiek liburutegi berri bat dute fitxategien bideekin modu seguruan lan egiteko.
  • virtiofsd osagaia (C-n idatzia) virtiofsd-rs-ekin (Herdoil-ez idatzia) ordezkatu da.
  • Sandboxing QEMU osagaietarako laguntza gehitu da.
  • QEMU-k io_uring APIa erabiltzen du I/O asinkronoetarako.
  • Intel TDX (Trusted Domain Extensions) luzapenetarako laguntza inplementatu da QEMUrako eta Cloud-hypervisorerako.
  • Eguneratu diren osagaiak: QEMU 6.2.0, Cloud-hypervisor 26.0, Firecracker 1.1.0, Linux kernel 5.19.2.

Iturria: opennet.ru

Gehitu iruzkin berria