Lançamento do Kata Containers 3.0 com isolamento baseado em virtualização

Após dois anos de desenvolvimento, foi lançado o projeto Kata Containers 3.0, que avança um stack para a execução de containers utilizando isolamento baseado em mecanismos completos de virtualização. O projeto foi criado pelas empresas Intel e Hyper, através da combinação das tecnologias Clear Containers e runV. O código do projeto é escrito nas linguagens Go e Rust, e é distribuído sob a licença Apache 2.0. O desenvolvimento do projeto é supervisionado por um grupo de trabalho criado sob os auspícios da organização independente OpenStack Foundation, que conta com empresas como Canonical, China Mobile, Dell/EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE e ZTE.

A base do Kata é um runtime que permite criar máquinas virtuais compactas, executadas utilizando um hipervisor completo, em vez de aplicar containers tradicionais que utilizam um kernel Linux compartilhado e são isolados por meio de namespaces e cgroups. A aplicação máquinas virtuais permite alcançar um nível de segurança mais elevado, protegendo contra ataques resultantes da exploração de vulnerabilidades no núcleo Linux.

Kata Containers é voltado para a integração em infraestruturas existentes de isolamento de contêineres, possibilitando o uso de máquinas virtuais semelhantes para reforçar a proteção de contêineres tradicionais. O projeto fornece mecanismos para garantir a compatibilidade de máquinas virtuais leves com várias infraestruturas de isolamento de contêineres, plataformas de orquestração de contêineres e especificações como OCI (Open Container Initiative), CRI (Container Runtime Interface) e CNI (Container Networking Interface). Ferramentas para integração com Docker, Kubernetes, QEMU e OpenStack estão disponíveis.

Lançamento do Kata Containers 3.0 com isolamento baseado em virtualização

A integração com sistemas de gerenciamento de contêineres é alcançada por meio de uma camada que simula o gerenciamento do contêiner, a qual, através de uma interface gRPC e um proxy especial, se comunica com o agente de gerenciamento na máquina virtual. Dentro do ambiente virtual, que é iniciado pelo hipervisor, é utilizado um núcleo Linux especialmente otimizado, contendo apenas o conjunto mínimo de funcionalidades necessárias.

Como hipervisor, é suportada a utilização do Dragonball Sandbox (edição KVM otimizada para contêineres) com a ferramenta QEMU, além do Firecracker e do Cloud Hypervisor. O ambiente do sistema inclui um daemon de inicialização e um agente (Agent). O agente garante a execução de imagens de contêiner específicas do usuário no formato OCI para Docker e CRI para Kubernetes. Quando utilizado em conjunto com o Docker, um máquina virtualou seja, o ambiente executável criado sobre o hipervisor é aplicado para o lançamento aninhado de contêineres.

Lançamento do Kata Containers 3.0 com isolamento baseado em virtualização

Para reduzir o consumo de memória, é utilizado o mecanismo DAX (acesso direto ao FS, contornando o cache de página sem o uso de unidades de bloco), e para deduplicar áreas de memória idênticas, é aplicada a tecnologia KSM (Kernel Samepage Merging), permitindo o compartilhamento de recursos do sistema host e a conexão de um modelo comum de ambiente do sistema a diferentes sistemas convidados.

Na nova versão:

  • Foi proposta uma runtime alternativo (runtime-rs), formando o núcleo dos containers, escrito na linguagem Rust (a runtime anterior era escrita na linguagem Go). A runtime é compatível com OCI, CRI-O e Containerd, permitindo seu uso com Docker e Kubernetes.
  • Um novo hipervisor dragonball foi proposto, baseado em KVM e rust-vmm.
  • Foi adicionada a supporte para a passagem de acesso a GPU, utilizando VFIO.
  • Foi adicionada a supporte para cgroup v2.
  • Foi implementada a supporte para a substituição de configurações sem alterar o arquivo de configuração principal, através da substituição de blocos em arquivos separados, localizados no diretório "config.d/".
  • Nos componentes escritos em Rust, uma nova biblioteca para trabalhar com caminhos de arquivos de forma segura foi utilizada.
  • O componente virtiofsd (escrito em C) foi substituído por virtiofsd-rs (escrito em Rust).
  • Foi adicionada a supporte para isolamento sandbox dos componentes QEMU.
  • No QEMU, para entrada/saída assíncrona, foi utilizado o API io_uring.
  • Para QEMU e Cloud-hypervisor, foi implementada a supporte para as extensões Intel TDX (Trusted Domain Extensions).
  • Os componentes foram atualizados: QEMU 6.2.0, Cloud-hypervisor 26.0, Firecracker 1.1.0, kernel Linux 5.19.2.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster