Lançamento do CRIU 4.0, sistema para salvaguarda e recuperação do estado de processos no Linux.

Foi lançado o CRIU 4.0 (Checkpoint and Restore In Userspace), uma ferramenta destinada a salvar e restaurar processos no espaço do usuário. A ferramenta permite salvar o estado de um ou mais processos e, em seguida, retomar a operação a partir da posição salva, mesmo após a reinicialização do sistema ou em outro servidor, sem interromper conexões de rede já estabelecidas. O código do projeto é escrito em C e é distribuído sob a licença GPLv2. O CRIU é utilizado em sistemas de gerenciamento de contêineres, como OpenVZ, LXC/LXD e Docker. As modificações necessárias para o funcionamento do CRIU estão incluídas no núcleo principal do Linux.

Entre as áreas de aplicação da tecnologia CRIU, destacam-se a reinicialização do sistema operacional sem interromper a continuidade da execução de processos que duram muito tempo, a migração ao vivo de contêineres isolados, a aceleração do início de processos lentos (é possível iniciar a partir de um estado salvo após a inicialização), a realização de atualizações do núcleo sem reiniciar serviços, a salvaguarda periódica do estado de tarefas computacionais de longa duração para retomar o trabalho em caso de falha, o balanceamento de carga em nós de clusters, a duplicação de processos em outra máquina (fork em um sistema remoto), e a criação de snapshots de aplicações de usuário em execução para análise em outro sistema ou para casos em que seja necessário desfazer ações adicionais no programa.

No novo lançamento:

  • Adicionado o plug-in CUDA, que permite salvar e restaurar o estado de aplicações baseadas na tecnologia NVIDIA CUDA.
  • Adicionada a suporte ao mecanismo Shadow Stack, suportado a partir do núcleo Linux 6.6, que permite bloquear muitos exploits, utilizando as capacidades de hardware dos processadores Intel (após a passagem de controle da função, os endereços de retorno são salvos pelo processador não apenas na pilha normal, mas também em uma pilha "sombreamento" separada, que não pode ser modificada diretamente; antes de sair da função, o endereço de retorno é extraído da pilha sombreamento e verificado com o endereço de retorno da pilha principal).
  • Adicionada a suporte ao comando ioctl PAGEMAP_SCAN para obter informações sobre o conteúdo das tabelas de páginas de memória, que, entre outras coisas, ao ser utilizada com userfaultfd() permite identificar gravações em uma área específica da memória.
  • Implementada a possibilidade de restaurar o fluxo na cgroup v1 correta.

    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