Lançamento do conjunto de ferramentas de gerenciamento de contêineres LXC e LXD 4.0

A Canonical publicou lançamento de ferramentas para organização do trabalho com contêineres isolados LXC 4.0, gerenciador de contêineres LXD 4.0 e sistema de arquivos virtual LXCFS 4.0 para simulação em contêineres /proc, /sys e visualização virtualizada de cgroupfs para distribuições que não suportam namespaces para cgroup. A versão 4.0 é classificada como um lançamento com suporte a longo prazo, com atualizações disponibilizadas durante 5 anos

LXC é um runtime para executar contêineres de sistema e contêineres de aplicativos individuais (OCI). O LXC inclui a biblioteca liblxc, um conjunto de utilitários (lxc-create, lxc-start, lxc-stop, lxc-ls, etc.), modelos para a construção de contêineres e um conjunto de bindings para várias linguagens de programação. O isolamento é realizado usando os mecanismos padrão do kernel Linux. Para isolar processos, o stack de rede, ipc, uts, identificadores de usuários e pontos de montagem, é utilizado o mecanismo de namespaces. Para limitar recursos, aplicam-se cgroups. Para reduzir privilégios e limitar o acesso, são utilizadas funcionalidades do kernel, como perfis Apparmor e SELinux, políticas Seccomp, Chroots (pivot_root) e capabilities. O código do LXC é escrito é escrito em C e distribuído sob a licença GPLv2.

LXD é uma camada sobre o LXC, CRIU e QEMU, utilizada para gerenciamento centralizado de contêineres e máquinas virtuais em um ou vários servidores. Enquanto o LXC é uma ferramenta de baixo nível para manipulação em nível de contêineres individuais, o LXD é implementado como um processo em segundo plano que aceita solicitações pela rede através da API REST, permitindo criar configurações escaláveis implantadas em um cluster de vários servidores.
Suporta vários backends de armazenamento (árvore de diretórios, ZFS, Btrfs, LVM), snapshots com captura de estado, migração ao vivo de contêineres em operação de uma máquina para outra e ferramentas para organização de repositórios de imagens. O código do LXD é escrito é escrito em Go e distribuído sob a licença Apache 2.0.

Principais são no LXC 4.0:

  • O driver para trabalhar com cgroup foi completamente reescrito. Adicionada a suporte para a hierarquia unificada de cgroup (cgroup2). Funcionalidade do controlador freezer adicionada, permitindo parar a operação em cgroup e liberar temporariamente alguns recursos (CPU, entrada/saída e potencialmente até mesmo memória) para executar outras tarefas;
  • Infraestrutura para interceptação de chamadas de sistema implementada;
  • Suporte adicionado ao subsistema do núcleo 'pidfd', destinado a lidar com a reutilização de PID (pidfd está vinculado a um processo específico e não muda, enquanto o PID pode ser associado a outro processo após a conclusão do processo atual associado a esse PID);
  • Melhorias na criação e remoção de dispositivos de rede, bem como em suas movimentações entre namespaces do subsistema de rede;
  • Implementada a capacidade de mover dispositivos de rede sem fio (nl80211) para contêineres.

Principais são no LXD 4.0:

  • Suporte adicionado para iniciar não apenas contêineres, mas também máquinas virtuais;
  • Para segmentação de servidores LXD, foi proposta a concepção de projetos, que simplificam o gerenciamento de grupos de contêineres e máquinas virtuais. Cada projeto pode incluir seu próprio conjunto de contêineres, máquinas virtuais, imagens, perfis e volumes de armazenamento. Restrições específicas e alterações de configuração podem ser definidas em relação aos projetos;
  • Suporte adicionado para interceptação de chamadas de sistema para contêineres;
  • Implementada a criação de backups de ambientes e recuperação a partir deles;
  • Implementada a criação automatizada de snapshots de ambientes e volumes de armazenamento, com a possibilidade de definir a duração dos snapshots;
  • Adicionado API para monitorar o estado da rede (lxc network info);
  • Suporte adicionado shiftfs, FS virtual para mapear pontos de montagem com namespaces de identificadores de usuários (user namespace);
  • Novos tipos de adaptadores de rede 'ipvlan' e 'routed' propostos;
  • Backend adicionado para usar armazenamentos baseados em CephFS;
  • Suporte à replicação de imagens e configurações multi-arquitetura implementado para clusters;
  • Adicionada a capacidade de gerenciamento de acesso baseado em funções (RBAC);
  • Suporte adicionado ao CGroup2;
  • Possibilidade de configurar o endereço MAC e determinar o endereço de origem para NAT adicionada;
  • API adicionada para gerenciar vínculos no DHCP (leases);
  • Suporte adicionado ao Nftables.

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