Frigivelse af Kata Containers 3.2 med virtualiseringsbaseret isolering

Frigivelsen af ​​Kata Containers 3.2-projektet er blevet offentliggjort, der udvikler en stak til at organisere udførelsen af ​​containere ved hjælp af isolation baseret på fuldgyldige virtualiseringsmekanismer. Projektet blev skabt af Intel og Hyper ved at kombinere Clear Containers og runV-teknologier. Projektkoden er skrevet i Go and Rust, og distribueres under Apache 2.0-licensen. Udviklingen af ​​projektet overvåges af en arbejdsgruppe oprettet i regi af den uafhængige organisation OpenStack Foundation, som omfatter virksomheder som Canonical, China Mobile, Dell/EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE og ZTE .

Kata er baseret på runtime, som giver dig mulighed for at skabe kompakte virtuelle maskiner, der kører ved hjælp af en fuld hypervisor, i stedet for at bruge traditionelle containere, der bruger en fælles Linux-kerne og er isoleret ved hjælp af navnerum og cgroups. Brugen af ​​virtuelle maskiner giver dig mulighed for at opnå et højere sikkerhedsniveau, der beskytter mod angreb forårsaget af udnyttelse af sårbarheder i Linux-kernen.

Kata Containers er fokuseret på integration i eksisterende containerisoleringsinfrastrukturer med mulighed for at bruge lignende virtuelle maskiner til at forbedre beskyttelsen af ​​traditionelle containere. Projektet leverer mekanismer til at sikre kompatibilitet af lette virtuelle maskiner med forskellige containerisoleringsinfrastrukturer, containerorkestreringsplatforme og specifikationer såsom OCI (Open Container Initiative), CRI (Container Runtime Interface) og CNI (Container Networking Interface). Værktøjer er tilgængelige til integration med Docker, Kubernetes, QEMU og OpenStack.

Integration med containerstyringssystemer opnås ved hjælp af et lag, der simulerer containerstyring, som får adgang til den administrerende agent i den virtuelle maskine via gRPC-grænsefladen og en speciel proxy. Inde i det virtuelle miljø, som lanceres af hypervisoren, bruges en specielt optimeret Linux-kerne, som kun indeholder det mindste sæt af nødvendige muligheder.

Som hypervisor understøtter den brugen af ​​Dragonball Sandbox (en udgave af KVM optimeret til containere) med QEMU-værktøjssættet samt Firecracker og Cloud Hypervisor. Systemmiljøet inkluderer en initialiseringsdæmon og en agent. Agenten leverer udførelse af brugerdefinerede containerbilleder i OCI-format til Docker og CRI til Kubernetes. Når det bruges sammen med Docker, oprettes en separat virtuel maskine for hver container, dvs. Miljøet, der kører oven på hypervisoren, bruges til indlejret lancering af containere.

Frigivelse af Kata Containers 3.2 med virtualiseringsbaseret isolering

For at reducere hukommelsesforbruget bruges DAX-mekanismen (direkte adgang til filsystemet, omgåelse af sidecachen uden brug af blokenhedsniveauet), og til at deduplikere identiske hukommelsesområder bruges KSM (Kernel Samepage Merging) teknologi, som giver dig mulighed for at organisere deling af værtssystemressourcer og oprette forbindelse til forskellige gæstesystemer, dele en fælles systemmiljøskabelon.

I den nye version:

  • Ud over understøttelse af AMD64 (x86_64)-arkitekturen leveres udgivelser til arkitekturerne ARM64 (Aarch64) og s390 (IBM Z). Understøttelse af ppc64le-arkitekturen (IBM Power) er under udvikling.
  • Til at organisere adgangen til containerbilleder anvendes filsystemet Nydus 2.2.0, som anvender indholdsadressering til effektivt samarbejde med standardbilleder. Nydus understøtter on-the-fly indlæsning af billeder (downloads kun når det er nødvendigt), giver deduplikering af duplikerede data og kan bruge forskellige backends til faktisk opbevaring. POSIX-kompatibilitet er tilvejebragt (i lighed med Composefs kombinerer Nydus-implementeringen funktionerne i OverlayFS med EROFS- eller FUSE-modulet).
  • Dragonballs virtuelle maskine-manager er blevet integreret i hovedstrukturen af ​​Kata Containers-projektet, som nu vil blive udviklet i et fælles lager.
  • En fejlfindingsfunktion er blevet tilføjet til kata-ctl-værktøjet til at oprette forbindelse til en virtuel maskine fra værtsmiljøet.
  • GPU-administrationsmulighederne er blevet udvidet, og der er tilføjet understøttelse af videresendelse af GPU'er til containere til fortrolig databehandling (Confidential Container), som giver kryptering af data, hukommelse og eksekveringstilstand til beskyttelse i tilfælde af kompromittering af værtsmiljøet eller hypervisoren.
  • Et undersystem til styring af enheder, der bruges i containere eller sandkassemiljøer, er blevet tilføjet til Runtime-rs. Understøtter arbejde med vfio, blok, netværk og andre typer enheder.
  • Kompatibilitet med OCI Runtime 1.0.2 og Kubernetes 1.23.1 leveres.
  • Det anbefales at bruge version 6.1.38 med patches som Linux-kernen.
  • Udvikling er blevet overført fra at bruge Jenkins kontinuerlige integrationssystem til GitHub Actions.

Kilde: opennet.ru

Tilføj en kommentar