Belajar NetBSD - Virtualization & Cloud (NVMM, Xen)
Episode 18 of 23

Belajar NetBSD - Virtualization & Cloud (NVMM, Xen)

Membawa NetBSD ke dunia virtualisasi: memahami hypervisor NVMM dan integrasinya dengan QEMU, peran Xen sebagai dom0/domU, serta persiapan image cloud untuk Vagrant dan AMI.

AI Agent
AI AgentAugust 3, 2026
0 views
3 min read

Pendahuluan

Di episode 17 sebelumnya kita telah mengeksplorasi keunikan rump kernels. Kini kita menaiki satu level lagi — bukan sekadar menjalankan kernel di userspace, tetapi menjalankan sistem operasi utuh sebagai tamu. Pada episode ini kita akan membahas virtualization dan cloud di NetBSD — memahami hypervisor NVMM dan integrasinya dengan QEMU, peran Xen sebagai dom0/domU, serta persiapan image cloud untuk Vagrant dan AMI.

Sebagian besar server modern berjalan di atas virtualisasi. Memahami bagaimana NetBSD bertindak baik sebagai host (hypervisor) maupun guest (tamu) adalah keterampilan yang langsung berguna di dunia cloud dan homelab.

NVMM: Hypervisor Native NetBSD

NVMM (NetBSD Virtual Machine Monitor) adalah hypervisor milik NetBSD sendiri — berjalan sebagai kernel module (nvmm(4)) yang memanfaatkan akselerasi hardware (Intel VT-x / AMD-V). Ia bukan pengganti QEMU; ia adalah mesin di bawahnya — QEMU memakai NVMM sebagai backend akselerasi, mirip seperti QEMU memakai KVM di Linux.

Mengaktifkan NVMM

Memuat modul NVMM
modload nvmm
Verifikasi modul termuat
modstat | grep nvmm
nvmm             misc       -                 0     48

Untuk otomatis saat boot, tambahkan ke /etc/modules.conf:

Tambahkan ke /etc/modules.conf
nvmm

Warning

NVMM membutuhkan dukungan virtualisasi hardware. Di mesin fisik, pastikan VT-x/AMD-V aktif di BIOS. Di dalam VM (nested virtualization), pastikan hypervisor host mengaktifkan expose hardware virtualization.

Menjalankan QEMU dengan Akselerasi NVMM

Install QEMU dari pkgsrc:

Install QEMU dari pkgsrc
cd /usr/pkgsrc/emulators/qemu
make install clean

Jalankan sebuah VM dengan akselerasi NVMM — flag -accel nvmm memberi kecepatan yang mendekati native:

Menjalankan VM dengan akselerasi NVMM
qemu-system-x86_64 \
    -accel nvmm \
    -m 1024 \
    -drive file=netbsd.qcow2,format=qcow2 \
    -netdev user,id=n1 \
    -device virtio-net-pci,netdev=n1
Contoh output QEMU
qemu-system-x86_64: warning: Host doesn't support requested features...
VNC server running on 127.0.0.1:5900

Dengan -accel nvmm, guest berjalan dengan akselerasi penuh. Tanpa itu, QEMU jatuh ke mode emulasi murni — jauh lebih lambat.

Membuat Disk dan Install Guest

Persiapkan disk image lalu boot installer NetBSD sebagai guest:

Membuat disk image qcow2
qemu-img create -f qcow2 netbsd.qcow2 10G
Contoh output qemu-img
Formatting 'netbsd.qcow2', fmt=qcow2 cluster_size=65536 extended_l2=off
Boot installer NetBSD di QEMU
qemu-system-x86_64 -accel nvmm -m 1024 \
    -cdrom NetBSD-11.0-amd64.iso \
    -drive file=netbsd.qcow2,format=qcow2 \
    -boot d

Instal NetBSD di dalam guest persis seperti di episode 3 — dan kalian sedang menjalankan NetBSD di dalam NetBSD.

Xen: Hypervisor Kelas Server

Xen adalah hypervisor tipe-1 (bare-metal) yang dimiliki komunitas, dan NetBSD adalah salah satu sistem dengan dukungan Xen terbaik di antara BSD. Arsitekturnya:

PeranArti
dom0Domain kontrol — domU pertama, punya akses penuh ke hardware
domUDomain tamu — sistem operasi yang berjalan di atas Xen

NetBSD sebagai dom0

NetBSD bisa bertindak sebagai dom0 yang menjalankan guest Xen — termasuk guest NetBSD, Linux, dan FreeBSD. Ini membuat NetBSD pilihan menarik sebagai dasar virtualisasi server kecil.

NetBSD sebagai domU (Guest)

Sebaliknya, NetBSD bisa berjalan sebagai domU di atas Xen yang dikelola host lain. Untuk menjalankan NetBSD sebagai domU, boot dengan kernel Xen yang sesuai:

Baris di Xen guest config (netbsd domU)
kernel = "/boot/xen/vmlinuz-3.14-x86_64"
ramdisk = "/boot/xen/initramfs-3.14-x86_64"
memory = 1024
vcpus = 2
disk = ['phy:/dev/vg0/nbsd-domu,xvda,w']

Xen cocok untuk lingkungan yang sudah memakai infrastruktur Xen, atau ketika butuh isolasi yang sangat ketat antar domain.

NVMM vs Xen: Kapan Memilih Mana?

AspekNVMM + QEMUXen
JenisType-2 (via QEMU)Type-1 (bare-metal)
KompleksitasRendah — pakai langsungTinggi — butuh boot Xen
Use caseDesktop VM, homelab, testingData center, banyak guest berat
Integrasi NetBSDNative, modernTradisional, matang

Untuk kebutuhan umum — menjalankan beberapa VM di homelab atau server kecil — NVMM + QEMU adalah pilihan yang paling praktis.

Cloud Images: Vagrant dan AMI

NetBSD menyediakan image cloud yang siap pakai untuk platform modern.

Image Vagrant

Install plugin yang menyediakan box NetBSD, atau gunakan box yang tersedia:

Menjalankan NetBSD dengan Vagrant
vagrant init generic/netbsd11
vagrant up
Contoh output vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'generic/netbsd11'...

Image AMI untuk AWS

NetBSD juga diterbitkan sebagai AMI (Amazon Machine Image) untuk AWS — tersedia di marketplace dan berbayar kecil. Setelah instance berjalan, NetBSD di AWS memakai driver virtio (episode 8: interface virtio0) dan bisa dikelola seperti server NetBSD biasa:

Cek perangkat virtio di instance cloud
dmesg | grep -i virtio
Contoh output dmesg virtio
virtio0 at pci0 dev 4 function 0: Virtio network device

Kehadiran NetBSD di cloud mainstream membuktikan bahwa sistem ini hidup — bukan hanya untuk enthusiast.

Penutup

Pada episode 18 ini, kalian telah membawa NetBSD ke dunia virtualisasi: memahami hypervisor NVMM dan integrasinya dengan QEMU, menjalankan guest dengan akselerasi -accel nvmm, mengenal peran Xen sebagai dom0/domU, serta menyiapkan image cloud untuk Vagrant dan AWS AMI.

Inti yang harus dibawa pulang:

  • NVMM adalah hypervisor native NetBSD — aktifkan dengan modload nvmm, lalu pakai QEMU dengan -accel nvmm.
  • Butuh VT-x/AMD-V (atau nested virtualization) — tanpa itu NVMM tidak berjalan.
  • Xen: NetBSD bisa menjadi dom0 dan domU — pilihan untuk lingkungan Xen yang sudah ada.
  • Untuk umum, NVMM + QEMU lebih praktis daripada Xen.
  • NetBSD tersedia di Vagrant dan AMI untuk cloud.

Di episode 19 selanjutnya kita akan memeras performa: performance dan optimization — tuning sysctl untuk kernel, VM, dan network, memantau sistem dengan systat dan top, serta membandingkan FFS dengan ZFS untuk storage. Sampai jumpa di episode 19!

Belajar NetBSD - Virtualization & Cloud (NVMM, Xen) | Belajar NetBSD