Repolode
firecracker-microvm

firecracker-microvm/firecracker

Un monitor de máquinas virtuales minimalista basado en KVM que ejecuta microVM ligeras para cargas de trabajo seguras de serverless y contenedores en entornos multiinquilino.

Estrellas
37,582
Forks
2,702
Issues abiertos
133
Último commit
hace 19 horas

¿Qué es?

Firecracker es una tecnología de virtualización para ejecutar cargas de trabajo de contenedores y funciones en máquinas virtuales ligeras llamadas microVM. Su núcleo es un monitor de máquinas virtuales que usa Linux KVM para crear y ejecutar microVM. El diseño omite deliberadamente dispositivos y funciones innecesarios expuestos al guest, lo que reduce la memoria que ocupa cada microVM y su superficie de ataque, y acorta el tiempo de inicio.

Firecracker expone un único endpoint de API por proceso, definido en formato OpenAPI, para configurar vCPU, memoria, plantillas de CPU, interfaces de red, dispositivos de bloque con limitadores de velocidad, vsock, entropía, pmem y hotplug de memoria. También se usa como backend en runtimes de contenedores como Kata Containers y Flintlock. AWS desarrolló el proyecto para servicios como Lambda y Fargate, y lo publica bajo la licencia Apache 2.0.

Para ejecutarlo de forma segura, se necesita un host Linux configurado correctamente; el proyecto ofrece una guía para configurar un host de producción y un proceso jailer que aplica aislamiento mediante cgroups y namespaces antes de abandonar los privilegios.

Funciones clave

  • 01Ejecuta cargas de trabajo en microVM mediante Linux KVM con un conjunto mínimo de dispositivos.
  • 02Permite configurar vCPU, memoria, plantillas de CPU y dispositivos de bloque o de red a través de una API.
  • 03Aplica filtros seccomp por proceso y ofrece un jailer para aislar mediante cgroups y namespaces.
  • 04Admite limitadores de velocidad para dispositivos virtio, vsock, entropía, pmem y hotplug de memoria.
  • 05Se integra con runtimes de contenedores como Kata Containers y Flintlock.

Casos de uso

  • Ejecutar cargas de trabajo no confiables de funciones o contenedores en microVM aisladas dentro de un host multiinquilino.
  • Crear el backend de una plataforma serverless que necesite iniciar microVM rápidamente.
  • Usar Firecracker como capa de máquinas virtuales bajo un runtime de contenedores como Kata Containers.
  • Probar o crear prototipos de aislamiento basado en máquinas virtuales en hosts Linux compatibles con KVM.

Inicio rápido

  1. 1

    Clona el repositorio

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

    Entra en el directorio del proyecto

    cd firecracker
  3. 3

    Compila Firecracker con el contenedor de desarrollo (requiere Docker y bash)

    tools/devtool build

Antes de usarlo

  • Para un uso multiinquilino seguro, se necesita un host Linux compatible con KVM y un sistema operativo anfitrión bien configurado.
  • El dispositivo RTC pl031 en aarch64 no admite interrupciones, por lo que las alarmas RTC, como hwclock, no funcionan.

Temas

Preguntas frecuentes

¿Qué es firecracker?
Un monitor de máquinas virtuales minimalista basado en KVM que ejecuta microVM ligeras para cargas de trabajo seguras de serverless y contenedores en entornos multiinquilino. Firecracker es una tecnología de virtualización para ejecutar cargas de trabajo de contenedores y funciones en máquinas virtuales ligeras llamadas microVM. Su núcleo es un monitor de máquinas virtuales que usa Linux KVM para crear y ejecutar microVM. El diseño omite deliberadamente dispositivos y funciones innecesarios expuestos al guest, lo que reduce la memoria que ocupa cada microVM y su superficie de ataque, y acorta el tiempo de inicio.
¿firecracker es gratuito? ¿Qué licencia tiene?
firecracker es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿firecracker sigue mantenido?
Mantenimiento activo. El último commit de firecracker fue el 24 oct 2026.
¿Para qué puedo usar firecracker?
Ejecutar cargas de trabajo no confiables de funciones o contenedores en microVM aisladas dentro de un host multiinquilino. Crear el backend de una plataforma serverless que necesite iniciar microVM rápidamente. Usar Firecracker como capa de máquinas virtuales bajo un runtime de contenedores como Kata Containers. Probar o crear prototipos de aislamiento basado en máquinas virtuales en hosts Linux compatibles con KVM.
¿Cómo se instala firecracker?
Clona el repositorio: git clone https://github.com/firecracker-microvm/firecracker Entra en el directorio del proyecto: cd firecracker Compila Firecracker con el contenedor de desarrollo (requiere Docker y bash): tools/devtool build
¿Dónde consigo firecracker?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/firecracker-microvm/firecracker

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados