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

Foi publicada a versão 3.2 do projeto Kata Containers, que desenvolve um stack para a execução de contêineres usando isolamento com base em mecanismos de virtualização completos. O projeto foi criado pelas empresas Intel e Hyper, unindo 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 a égide da organização independente OpenStack Foundation, que inclui 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 com um hipervisor completo, em vez de utilizar contêineres tradicionais que compartilham o núcleo Linux 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.

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.2 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:

  • Além do suporte à arquitetura AMD64 (x86_64), foram lançadas versões para as arquiteturas ARM64 (Aarch64) e s390 (IBM Z). O suporte à arquitetura ppc64le (IBM Power) está em desenvolvimento.
  • Para organizar o acesso às imagens de contêiner, é utilizada a sistema de arquivos Nydus 2.2.0, que utiliza endereçamento por conteúdo para uma colaboração eficiente com imagens padrão. O Nydus suporta carregamento de imagens sob demanda (carrega apenas quando necessário), garante a deduplicação de dados repetidos e pode utilizar diferentes backends para o armazenamento real. A compatibilidade com POSIX é garantida (semelhante ao Composefs, a implementação do Nydus combina as capacidades do OverlayFS com EROFS ou um módulo FUSE).
  • O gerenciador de máquinas virtuais Dragonball foi integrado ao núcleo do projeto Kata Containers, e agora será desenvolvido no repositório geral.
  • A ferramenta kata-ctl foi aprimorada com uma função de depuração para conectar-se à máquina virtual a partir do ambiente host.
  • Ampliação das capacidades de gerenciamento de GPU e suporte para passthrough de GPU em contêineres para computação confidencial (Confidential Container), que oferece criptografia de dados, memória e estado de execução para proteção em caso de comprometimento do ambiente host ou do hipervisor.
  • No Runtime-rs, foi adicionada uma subsistema de gerenciamento de dispositivos utilizados em contêineres ou ambientes sandbox. Suporte é oferecido para vfio, dispositivos de bloco, de rede e outros tipos de dispositivos.
  • Compatibilidade assegurada com OCI Runtime 1.0.2 e Kubernetes 1.23.1.
  • Recomenda-se usar a versão 6.1.38 do núcleo Linux com patches.
  • O desenvolvimento foi transferido da utilização do sistema de integração contínua Jenkins para o GitHub Actions.

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