Episode ini membahas confidential computing dan trusted guest di ekosistem Firecracker: attestation dan VM tepercaya, posisinya terhadap Kubernetes ecosystem, keterbatasan saat ini, serta pola distribusi secret yang aman lewat MMDS dan TLS tanpa mengekspos metadata ke internet.

Sejauh ini kita melindungi host dari guest. Episode 15 membalik pertanyaannya: bagaimana guest bisa melindungi dirinya dari host? Ini dunia confidential computing — di mana VM bisa membuktikan identitas dan integritasnya, dan data di dalamnya tetap rahasia bahkan dari operator mesin.
Mengapa episode ini penting? Firecracker dirancang untuk workload untrusted — kode dari pengguna. Tapi ada kelas workload lain: data sensitif (finansial, kesehatan) yang butuh jaminan kriptografis bahwa hanya kode yang tepat yang bisa membacanya. Memahami posisi Firecracker di sini — apa yang sudah bisa, apa yang masih berkembang — adalah bagian dari menilai kelayakan platform untuk workload kalian.
Dalam model cloud biasa, host adalah "pemilik" dan guest harus mempercayainya. Confidential computing membaliknya: dengan perangkat keras khusus (misalnya AMD SEV-SNP, Intel TDX), memori guest bisa dienkripsi sehingga host (termasuk administrator dan hypervisor) tidak bisa membacanya. Guest bahkan bisa attestation — membuktikan ke pihak ketiga: "saya dijalankan pada hardware terpercaya, dengan image yang benar, di bawah pengaturan yang sah."
Alur attestation yang umum:
Attestation adalah fondasi dari "zero-trust compute": secret tidak lagi dikirim ke sebuah IP, melainkan ke sebuah bukti.
Bagaimana Firecracker masuk ke dunia confidential computing? Ada dua dimensi:
microvm (episode 12) bisa dikombinasikan dengan confidential workload — Pod dijalankan dalam microVM trusted, dan attestation dikelola oleh komponen seperti operator attestation di sisi control plane.Ekosistem Kubernetes memiliki dukungan tumbuh untuk confidential containers (misal melalui kata-containers dengan hardware confidential). Firecracker sendiri tidak menjanjikan confidential computing end-to-end di luar kotak — tapi posisinya sebagai VMM ringan menjadikannya kandidat natural dalam stack tersebut.
Bagian penting dari evaluasi engineering adalah tahu batasnya:
Artinya: untuk kebutuhan confidential, evaluasi secara khusus. Firecracker bisa jadi bagian solusi, tapi belum tentu solusi lengkap — dan keputusan ini harus didasarkan pada pengujian, bukan pada keyakinan.
Sementara confidential computing adalah masa depan, hari ini ada pola yang sudah aman dan praktis untuk mendistribusikan secret: MMDS (episode 6). Kunci keamanannya:
169.254.169.254 tidak di-routing — metadata hanya bisa diakses guest itu sendiri, tidak bisa diakses guest lain atau internet.Pola produksi distribusi secret dengan MMDS:
Kombinasi MMDS + TLS memberikan: jalur pengantar yang terisolasi (MMDS) + transport terenkripsi (TLS) + secret on-demand (secret store). Ini pola yang dipakai production — dan jangan pernah mengekspos MMDS ke internet (tidak mungkin secara teknis, tapi jangan juga menyetel routing yang membuka 169.254.169.254 ke luar).
Tip
Aturan emas secret: jangan pernah menyimpan secret di image, di environment variable Pod, atau di filesystem yang di-share. MMDS cukup untuk membawa token sementara; secret sesungguhnya ditarik dari secret store lewat TLS dengan rotasi berkala.
Untuk memahami konsepnya di level praktik, alur mini yang bisa kalian bangun:
# 1. Guest membaca identitas dan nonce dari MMDS
TOKEN=$(curl -s http://169.254.169.254/latest/token)
# 2. Guest memanggil attestation service dengan buktinya
curl -s https://attest.example.com/verify -H "Authorization: Bearer $TOKEN"
# 3. Jika terverifikasi, guest menarik secret via TLS
curl -s https://vault.example.com/v1/secrets/db -H "X-Vault-Token: $TOKEN"Alur di atas mengajarkan pola penting: guest membuktikan diri dulu, baru menerima secret. Nonce mencegah replay; TLS mencegah penyadapan; dan token di MMDS bisa dirotasi per boot.
169.254.169.254 adalah link-local; jangan pernah menambahkan route yang mengeksposnya.Inti yang harus dibawa pulang:
169.254.169.254) adalah jalur metadata yang aman dan terisolasi.Di episode 16 selanjutnya kita akan mengukur semuanya: Testing & Performance Benchmark — mengukur waktu boot cold versus snapshot, overhead memori, throughput IOPS dan bandwidth, menjalankan load test dengan ribuan microVM per host, serta latihan failure injection untuk memvalidasi ketahanan platform.