Repolode
firecracker-microvm

firecracker-microvm/firecracker

Um monitor de máquinas virtuais minimalista baseado em KVM, que executa microVMs leves para workloads seguros de serverless e contêineres em ambientes multi-tenant.

Estrelas
37,592
Forks
2,703
Issues abertas
133
Último commit
há 21 horas

O que é?

Firecracker é uma tecnologia de virtualização para executar workloads de contêineres e funções em máquinas virtuais leves chamadas microVMs. Seu núcleo é um monitor de máquinas virtuais que usa o Linux KVM para criar e executar microVMs. O design deixa de fora, de forma deliberada, dispositivos e funcionalidades desnecessários voltados ao guest, reduzindo o uso de memória e a superfície de ataque de cada microVM, além de diminuir o tempo de inicialização.

O Firecracker expõe um único endpoint de API por processo, especificado no formato OpenAPI, para configurar vCPUs, memória, templates de CPU, interfaces de rede, dispositivos de bloco com limitadores de taxa, vsock, entropia, pmem e hotplug de memória. Ele também é usado como backend em runtimes de contêineres como Kata Containers e Flintlock. O projeto foi desenvolvido na AWS para serviços como Lambda e Fargate e é distribuído sob a licença Apache 2.0.

A execução segura depende de um host Linux configurado corretamente; o projeto fornece um guia de configuração de host para produção e um processo jailer que aplica isolamento por cgroups e namespaces antes de remover privilégios.

Recursos principais

  • 01Executa workloads em microVMs usando Linux KVM com um conjunto mínimo de dispositivos.
  • 02Permite configurar vCPUs, memória, templates de CPU e dispositivos de bloco ou rede por meio de uma API.
  • 03Filtros seccomp por processo e um jailer para isolamento por cgroups e namespaces.
  • 04Oferece suporte a limitadores de taxa para dispositivos virtio, vsock, entropia, pmem e hotplug de memória.
  • 05Integra-se a runtimes de contêineres como Kata Containers e Flintlock.

Casos de uso

  • Executar workloads não confiáveis de funções ou contêineres em microVMs isoladas em um host multi-tenant.
  • Criar o backend de uma plataforma serverless que precise iniciar microVMs rapidamente.
  • Usar o Firecracker como camada de VM sob um runtime de contêineres, como Kata Containers.
  • Testar ou prototipar isolamento baseado em VMs em hosts Linux com suporte a KVM.

Início rápido

  1. 1

    Clone o repositório

    git clone https://github.com/firecracker-microvm/firecracker
  2. 2

    Acesse o diretório do projeto

    cd firecracker
  3. 3

    Compile o Firecracker com o contêiner de desenvolvimento (requer Docker e bash)

    tools/devtool build

Antes de usar

  • Para uso multi-inquilino seguro, é necessário um host Linux com suporte a KVM e um sistema operacional host bem configurado.
  • O dispositivo RTC pl031 em aarch64 não oferece suporte a interrupções, portanto alarmes RTC, como hwclock, não funcionam.

Tópicos

Perguntas frequentes

O que é firecracker?
Um monitor de máquinas virtuais minimalista baseado em KVM, que executa microVMs leves para workloads seguros de serverless e contêineres em ambientes multi-tenant. Firecracker é uma tecnologia de virtualização para executar workloads de contêineres e funções em máquinas virtuais leves chamadas microVMs. Seu núcleo é um monitor de máquinas virtuais que usa o Linux KVM para criar e executar microVMs. O design deixa de fora, de forma deliberada, dispositivos e funcionalidades desnecessários voltados ao guest, reduzindo o uso de memória e a superfície de ataque de cada microVM, além de diminuir o tempo de inicialização.
firecracker é gratuito? Qual é a licença?
firecracker é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
firecracker ainda é mantido?
Manutenção ativa. O último commit de firecracker foi em 24 de out. de 2026.
Para que posso usar firecracker?
Executar workloads não confiáveis de funções ou contêineres em microVMs isoladas em um host multi-tenant. Criar o backend de uma plataforma serverless que precise iniciar microVMs rapidamente. Usar o Firecracker como camada de VM sob um runtime de contêineres, como Kata Containers. Testar ou prototipar isolamento baseado em VMs em hosts Linux com suporte a KVM.
Como instalar firecracker?
Clone o repositório: git clone https://github.com/firecracker-microvm/firecracker Acesse o diretório do projeto: cd firecracker Compile o Firecracker com o contêiner de desenvolvimento (requer Docker e bash): tools/devtool build
Onde consigo firecracker?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/firecracker-microvm/firecracker

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados