Belajar Firecracker (microVM untuk serverless berbasis Rust, fondasi AWS Lambda & Fargate) dari dasar hingga production-grade: pre-requisites skill & setup environment, sejarah latar belakang & mengapa membutuhkannya, konsep dasar & arsitektur utama, setup & instalasi, API management boot & machine config, networking virtio-net & TAP, storage virtio-block & virtio-fs, jailer & security isolation, microVM images build & optimasi kernel, snapshot & restore, balloon entropy & resource control, integrasi container firecracker-containerd, orchestrator firectl Flintlock & MicroVMs, network isolation & filtering, security model & hardening, confidential computing & trusted guests, testing & performance benchmark, Firecracker 1.16 & fitur terbaru, serverless & PaaS di atas microVM, scaling banyak microVM per host, observability & troubleshooting, ekosistem rust-vmm & kolaborasi, hingga ekosistem alternatif & refleksi akhir dengan total 23 episode.
Sebelum menyentuh Firecracker, kalian perlu menguasai dasar Linux admin, KVM, container, dan networking. Episode ini menyiapkan host virtualisasi dengan KVM aktif, mengunduh binary firecracker dan jailer, menyiapkan kernel serta rootfs microVM, lalu memverifikasi seluruh environment siap untuk mengikuti series ini.

Episode ini menelusuri asal-usul Firecracker: akarnya di crosvm, keputusan AWS menulisnya ulang dalam Rust, filosofi satu proses satu microVM, dan angka-angka yang membuatnya revolusioner — boot 125 ms, overhead di bawah 5 MiB, dan 15 triliun invokasi Lambda per bulan.

Episode ini membedah arsitektur Firecracker: model satu proses satu microVM, perbandingan VMM Rust melawan QEMU, keluarga device virtio (net, block, vsock, balloon, entropy), rate limiter token bucket, komponen jailer, API endpoint, dan metadata service MMDS.

Episode ini memandu instalasi Firecracker dari nol: mengunduh release binary v1.16.x, menyiapkan kernel dan rootfs, memverifikasi KVM dan cgroup v2, menjalankan firecracker --api-sock untuk pertama kali, serta memahami perbedaan mode --no-api dan mode API.

Episode ini membahas API management Firecracker lewat Unix socket: PUT /boot-source untuk kernel, PUT /machine-config untuk vCPU dan memori, PUT /drives untuk block device, lalu InstanceStart. Kalian juga belajar mengecek microVM lewat serial console dan memahami setiap field konfigurasi penting.

Episode ini membedah networking Firecracker: membuat TAP interface di host dengan ip tuntap, menghubungkannya ke microVM lewat PUT /network-interfaces, memberi IP di dalam guest, serta konfigurasi rate limiter token bucket untuk bandwidth dan ops per device.

Episode ini membedah penyimpanan microVM: menempelkan rootfs dan disk tambahan lewat PUT /drives, perbedaan read-only dan read-write, berbagi direktori host ke guest dengan virtio-fs, serta MMDS untuk mendistribusikan metadata seperti IP dan credential ke guest.

Episode ini membahas jailer — garis pertahanan terakhir Firecracker. Kalian akan membungkus microVM dalam namespace, cgroup, seccomp, rootfs read-only, dan user non-root, memahami flag --id, --chroot-base-dir, dan --exec-file, serta menerapkan defense-in-depth bila hypervisor ditembus.

Episode ini membedah pembuatan image microVM: membangun rootfs minimal dengan Alpine/musl, mengonfigurasi kernel dengan driver seminimal mungkin, memilih boot params yang tepat, serta mengenal tooling seperti firectl, firecracker-containerd, NixOS microvm.nix, dan mkosi untuk automasi build.

Episode ini membedah snapshot & restore Firecracker: membekukan microVM berjalan dengan PUT /snapshot/create, menghidupkannya kembali dengan PUT /snapshot/load, memahami memory vs diff snapshot, serta pola cold start instan, scale-to-zero, dan suspend/resume yang dipakai AWS Lambda MicroVMs.
