ΠΠΎΡΠ»Π΅ Π΄Π²ΡΡ Π»Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π²ΡΠΏΡΡΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠ° Kata Containers 3.0, ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΡΠ΅ΠΊ Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ Π½Π° Π±Π°Π·Π΅ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΡΠΎΠ΅ΠΊΡ ΡΠΎΠ·Π΄Π°Π½ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌΠΈ Intel ΠΈ Hyper ΠΏΡΡΡΠΌ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Clear Containers ΠΈ runV. ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ°Ρ Go ΠΈ Rust, ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0. Π Π°Π·Π²ΠΈΡΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΊΡΡΠΈΡΡΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°Ρ Π³ΡΡΠΏΠΏΠ°, ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ ΠΏΠΎΠ΄ ΡΠ³ΠΈΠ΄ΠΎΠΉ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ OpenStack Foundation, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ°ΡΡΠ²ΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΊΠ°ΠΊ Canonical, China Mobile, Dell/EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE ΠΈ ZTE.
ΠΡΠ½ΠΎΠ²Ρ Kata ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ runtime, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ°, Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ ΠΎΠ±ΡΠ΅Π΅ ΡΠ΄ΡΠΎ Linux ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΡΠ½ ΠΈ cgroups. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, Π·Π°ΡΠΈΡΠ°ΡΡΠ΅Π³ΠΎ ΠΎΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ, Π²ΡΠ·Π²Π°Π½Π½ΡΡ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠ΅ΠΉ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π² ΡΠ΄ΡΠ΅ Linux.
Kata Containers museurkeun kana integrasi kana infrastruktur isolasi wadah anu tos aya kalayan kamampuan ngagunakeun mesin virtual anu sami pikeun ningkatkeun panyalindungan wadah tradisional. ProyΓ©k nyadiakeun mΓ©kanisme pikeun mastikeun kasaluyuan mesin virtual lightweight jeung sagala rupa infrastruktur isolasi wadahna, platform orchestration wadahna jeung spΓ©sifikasi kayaning OCI (Open Container Initiative), CRI (Container Runtime Interface) jeung CNI (Container Networking Interface). Parabot sayogi pikeun integrasi sareng Docker, Kubernetes, QEMU sareng OpenStack.
Integrasi jeung sistem manajemen wadahna kahontal ngagunakeun lapisan nu simulates manajemΓ©n wadahna, nu ngakses agΓ©n menata dina mesin virtual ngaliwatan panganteur gRPC sarta proxy husus. Di jero lingkungan maya, anu diluncurkeun ku hypervisor, kernel Linux anu dioptimalkeun khusus dianggo, ngan ngandung set minimum kamampuan anu diperyogikeun.
Salaku hypervisor a, ngarojong pamakΓ©an Dragonball Sandbox (Γ©disi KVM dioptimalkeun pikeun wadahna) kalawan toolkit QEMU, kitu ogΓ© Firecracker na Cloud Hypervisor. Lingkungan sistem kalebet daemon inisialisasi sareng agΓ©n. AgΓ©n nyayogikeun palaksanaan gambar wadahna anu ditetepkeun ku pangguna dina format OCI pikeun Docker sareng CRI pikeun Kubernetes. Lamun dipakΓ© ditΓ©ang jeung Docker, dijieun mesin virtual misah pikeun tiap wadahna, i.e. Lingkungan ngajalankeun on luhureun hypervisor dipakΓ© pikeun nested peluncuran wadahna.
Pikeun ngirangan pamakean mΓ©mori, mΓ©kanisme DAX dianggo (aksΓ©s langsung kana sistem file, ngalangkungan cache halaman tanpa nganggo tingkat alat blok), sareng pikeun nga-deduplicate daΓ©rah mΓ©mori anu sami, tΓ©knologi KSM (Kernel Samepage Merging), anu ngamungkinkeun anjeun pikeun ngirangan konsumsi mΓ©mori. pikeun ngatur babagi sumberdaya sistem host tur sambungkeun ka sistem tamu bΓ©da babagi template lingkungan sistem umum.
Dina versi anyar:
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ runtime (runtime-rs), ΡΠΎΡΠΌΠΈΡΡΡΡΠΈΠΉ Π½Π°ΡΠΈΠ½ΠΊΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ², Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° ΡΠ·ΡΠΊΠ΅ Rust (ΡΠ°Π½Π΅Π΅ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ runtime Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Go). Runtime ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ Ρ OCI, CRI-O ΠΈ Containerd, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Ρ Docker ΠΈ Kubernetes.
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π½ΠΎΠ²ΡΠΉ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ dragonball, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π° KVM ΠΈ rust-vmm.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΠ±ΡΠΎΡΠ° Π΄ΠΎΡΡΡΠΏΠ° ΠΊ GPU, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ VFIO.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° cgroup v2.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΌΠ΅Π½Ρ Π±Π»ΠΎΠΊΠΎΠ² Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»Π°Ρ , ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅ΠΌΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Β«config.d/Β».
- Π ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ Rust Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Π° Π½ΠΎΠ²Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΌΠΈ ΠΏΡΡΡΠΌΠΈ.
- ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ virtiofsd (Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π‘ΠΈ) Π·Π°ΠΌΠ΅Π½ΡΠ½ Π½Π° virtiofsd-rs (Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Rust).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° sandbox-ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² QEMU.
- Π QEMU Π΄Π»Ρ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π° Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ API io_uring.
- ΠΠ»Ρ QEMU ΠΈ Cloud-hypervisor ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ Intel TDX (Trusted Domain Extensions).
- ΠΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ: QEMU 6.2.0, Cloud-hypervisor 26.0, Firecracker 1.1.0, ΡΠ΄ΡΠΎ Linux 5.19.2.
sumber: opennet.ru