Runj - kit de ferramentas compatível com OCI para gerenciar contêineres baseados na prisão do FreeBSD

Samuel Karp, engenheiro da Amazon que desenvolve a distribuição Bottlerocket Linux e tecnologias de isolamento de contêineres para AWS, está desenvolvendo um novo runtime runj baseado em ambientes de prisão do FreeBSD para fornecer lançamento isolado de contêineres projetados de acordo com a iniciativa de especificação OCI (Open Container). . O projeto posiciona-se como experimental, desenvolvido no tempo livre da obra principal e ainda se encontra em fase de protótipo. O código é escrito em Go e distribuído sob a licença BSD.

Depois de levar o desenvolvimento ao nível adequado, o projeto pode potencialmente crescer para um nível que permite usar runj para substituir o tempo de execução regular em sistemas Docker e Kubernetes, usando FreeBSD em vez de Linux para executar contêineres. No tempo de execução do OCI, atualmente são implementados comandos para criar, excluir, iniciar, forçar o encerramento e avaliar o estado dos contêineres. O preenchimento do contêiner é criado com base no ambiente padrão ou simplificado do FreeBSD.

Como a especificação OCI ainda não oferece suporte ao FreeBSD, o projeto desenvolveu uma série de parâmetros adicionais relacionados à configuração do jail e do FreeBSD, que estão planejados para serem enviados para inclusão na especificação principal do OCI. Para gerenciar o jail, são usados ​​os utilitários jail, jls, jexec, kill e ps do FreeBSD, sem acessar diretamente as chamadas do sistema. Os planos futuros incluem adicionar suporte para gerenciamento de limitação de recursos por meio da interface RCTL do kernel.

Além do runtime próprio, também está sendo desenvolvida uma camada experimental no repositório do projeto para uso com runtime containerd (usado no Docker), modificado para suportar FreeBSD. Um utilitário especial é oferecido para converter rootfs do FreeBSD em uma imagem de contêiner compatível com OCI. A imagem criada pode posteriormente ser importada para o containerd.

Fonte: opennet.ru

Adicionar um comentário