Kata Containers 3.0:n julkaisu virtualisointipohjaisella eristyksellä

Kahden vuoden kehitystyön jälkeen on julkaistu Kata Containers 3.0 -projektin julkaisu, joka kehittää pinon konttien toteutuksen organisoimiseen täysimittaisiin virtualisointimekanismeihin perustuvan eristyksen avulla. Intel ja Hyper loivat projektin yhdistämällä Clear Containers ja runV-teknologiat. Projektikoodi on kirjoitettu Go and Rustilla, ja sitä jaetaan Apache 2.0 -lisenssillä. Projektin kehitystä valvoo itsenäisen OpenStack Foundationin alaisuudessa muodostettu työryhmä, johon kuuluvat muun muassa Canonical, China Mobile, Dell/EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE ja ZTE. .

Katan ytimenä on ajonaika, joka tarjoaa mahdollisuuden luoda kompakteja virtuaalikoneita, jotka toimivat täydellä hypervisorilla sen sijaan, että käytettäisiin perinteisiä säiliöitä, jotka käyttävät yleistä Linux-ydintä ja on eristetty nimiavaruuksien ja c-ryhmien avulla. Virtuaalikoneiden käyttö mahdollistaa korkeamman suojaustason, joka suojaa Linux-ytimen haavoittuvuuksien hyödyntämisen aiheuttamilta hyökkäyksiltä.

Kata Containers on keskittynyt integrointiin olemassa oleviin konttien eristysinfrastruktuureihin, ja se pystyy käyttämään vastaavia virtuaalikoneita perinteisten säiliöiden suojan parantamiseksi. Projekti tarjoaa mekanismeja, joilla varmistetaan kevyiden virtuaalikoneiden yhteensopivuus erilaisten konttieristysinfrastruktuurien, konttien orkestrointialustojen ja spesifikaatioiden, kuten OCI (Open Container Initiative), CRI (Container Runtime Interface) ja CNI (Container Networking Interface) kanssa. Työkaluja on saatavana integroitaviksi Dockerin, Kubernetesin, QEMU:n ja OpenStackin kanssa.

Kata Containers 3.0:n julkaisu virtualisointipohjaisella eristyksellä

Integrointi kontinhallintajärjestelmiin saavutetaan käyttämällä kontinhallintaa simuloivaa kerrosta, joka käyttää virtuaalikoneen hallintaagenttia gRPC-rajapinnan ja erityisen välityspalvelimen kautta. Hypervisorin käynnistämässä virtuaaliympäristössä käytetään erityisesti optimoitua Linux-ydintä, joka sisältää vain vähimmäisjoukon tarvittavia ominaisuuksia.

Hypervisorina se tukee Dragonball Sandboxin (säiliöille optimoitu KVM-versio) QEMU-työkalupakin sekä Firecracker- ja Cloud Hypervisor -ohjelmiston käyttöä. Järjestelmäympäristö sisältää alustusdemonin ja agentin. Agentti tarjoaa käyttäjän määrittämien säilökuvien suorittamisen OCI-muodossa Dockerille ja CRI-muodossa Kubernetesille. Kun sitä käytetään yhdessä Dockerin kanssa, jokaiselle säilölle luodaan erillinen virtuaalikone, ts. Hypervisorin päällä olevaa ympäristöä käytetään säiliöiden sisäkkäiseen käynnistämiseen.

Kata Containers 3.0:n julkaisu virtualisointipohjaisella eristyksellä

Muistin kulutuksen vähentämiseksi käytetään DAX-mekanismia (suora pääsy tiedostojärjestelmään, sivuvälimuistin ohittaminen ilman lohkolaitetasoa) ja identtisten muistialueiden duplikaattien poistamiseen käytetään KSM-tekniikkaa (Kernel Samepage Merging), jonka avulla voit järjestää isäntäjärjestelmän resurssien jakamisen ja muodostaa yhteyden eri vierasjärjestelmiin jakaa yhteinen järjestelmäympäristömalli.

Uudessa versiossa:

  • Vaihtoehtoista ajonaikaa (runtime-rs), joka muodostaa säiliöiden täytön, ehdotetaan Rust-kielellä (aiemmin toimitettu ajoaika kirjoitettiin Go-kielellä). Runtime on yhteensopiva OCI:n, CRI-O:n ja Containerdin kanssa, joten sitä voidaan käyttää Dockerin ja Kubernetesin kanssa.
  • On ehdotettu uutta Dragonball-hypervisoria, joka perustuu KVM- ja rust-vmm-tekniikkaan.
  • Lisätty tuki GPU:n pääsyn edelleenlähettämiseen VFIO:n avulla.
  • Lisätty tuki cgroup v2:lle.
  • Tuki asetusten muuttamiseen muuttamatta pääkonfiguraatiotiedostoa on toteutettu korvaamalla lohkot erillisissä tiedostoissa, jotka sijaitsevat "config.d/"-hakemistossa.
  • Rust-komponentit sisältävät uuden kirjaston tiedostopolkujen turvalliseen työskentelyyn.
  • virtiofsd-komponentti (kirjoitettu C:ssä) on korvattu virtiofsd-rs:llä (kirjoitettu ruosteella).
  • Lisätty tuki hiekkalaatikko-QEMU-komponenteille.
  • QEMU käyttää io_uring API:ta asynkroniselle I/O:lle.
  • Tuki Intel TDX (Trusted Domain Extensions) -laajennuksille on otettu käyttöön QEMU:lle ja Cloud-hypervisorille.
  • Päivitetyt komponentit: QEMU 6.2.0, Cloud-hypervisor 26.0, Firecracker 1.1.0, Linux-ydin 5.19.2.

Lähde: opennet.ru

Lisää kommentti