Menguasai bhyve, hypervisor tipe-2 bawaan FreeBSD: penggunaan bhyve dan bhyvectl, serta frontend modern vm-bhyve. Kalian akan praktik menginstal VM Linux dan FreeBSD dengan UEFI boot, storage virtio, networking tap/bridge, dan membuat snapshot.

Di episode 15 sebelumnya kalian sudah menjalankan jails untuk containerisasi. Sekarang kita naik ke level virtualisasi penuh dengan bhyve — hypervisor tipe-2 bawaan FreeBSD yang menjalankan sistem operasi lain sepenuhnya: Linux, FreeBSD, bahkan Windows. Episode ini memandu dari dasar bhyve dan bhyvectl, frontend vm-bhyve yang lebih nyaman, hingga praktik menginstal VM dengan UEFI, storage virtio, dan networking tap/bridge.
bhyve adalah hypervisor yang terintegrasi dengan kernel FreeBSD. Ia memanfaatkan virtualisasi hardware (VT-x/AMD-V) dan menawarkan virtualisasi yang ringan serta berperforma tinggi.
Perbedaan utama dengan jails: VM bhyve tidak berbagi kernel host — setiap VM menjalankan kernelnya sendiri dalam isolasi penuh. Ini berarti overhead lebih besar, tapi isolasi dan fleksibilitas jauh lebih tinggi.
Info
Jails dan bhyve saling melengkapi: gunakan jails untuk layanan ringan yang bisa berbagi kernel, dan bhyve untuk kebutuhan sistem operasi penuh, kernel khusus, atau isolasi ketat. Banyak setup produksi memakai keduanya sekaligus.
Pastikan hardware dan modul siap:
sysctl kern.vm_guest
kldstat | grep vmm
kldload vmmvmm adalah modul kernel bhyve. Jika belum dimuat, kldload vmm akan memuatnya.
bhyve bisa dijalankan langsung dengan argumen baris perintah yang panjang. Contoh dasar VM FreeBSD:
bhyve -c 2 -m 2G \
-s 0:0,hostbridge \
-s 1:0,lpc \
-s 2:0,ahci-hd,/vm/freebsd.img \
-s 3:0,virtio-net,tap0 \
-l com1,stdio \
-H -P freebsd01Argumen -c menetapkan CPU, -m memori, -s mendefinisikan perangkat virtual, dan -H mengizinkan hypervisor exit. Nama terakhir (freebsd01) adalah identitas VM.
bhyvectl mengelola daur hidup VM:
bhyvectl --destroy --vm=freebsd01vm-bhyve menyederhanakan segalanya — manajemen VM seperti alat modern dengan daftar, template, dan konfigurasi berbasis file.
pkg install vm-bhyve
sysrc vm_enable="YES"
sysrc vm_dir="zfs:tank/vm"Set direktori data VM — di sini memakai ZFS dataset tank/vm yang di-mount di /vm. Buat jaringan default:
vm switch create public
vm switch add public em0Letakkan image ISO di direktori iso, lalu buat VM:
vm create -t freebsd-ufs freebsd01
vm install freebsd01 /vm/iso/FreeBSD-15.1-RELEASE-amd64-disc1.iso
vm console freebsd01vm install memasang ISO dan mem-boot ke installer; vm console membuka console serial untuk interaksi.
Success
vm-bhyve menyembunyikan kompleksitas argumen bhyve mentah di balik template dan perintah yang ringkas. Untuk produksi maupun homelab, ini adalah cara yang paling nyaman menjalankan VM di FreeBSD.
Perintah harian yang sering dipakai:
vm list
vm start freebsd01
vm stop freebsd01
vm console freebsd01
vm info freebsd01bhyve mendukung firmware UEFI (CSM) dan UEFI-native. vm-bhyve menyediakan template dengan UEFI untuk sistem modern:
vm configure freebsd01
vm set freebsd01 bootrom=bhyve_efi.fdVirtio adalah driver paravirtualisasi yang memberi performa I/O terbaik. Gunakan disk virtio-blk dan NIC virtio-net untuk VM:
vm set freebsd01 disk0_type=virtio
vm set freebsd01 nic0_type=virtioNetworking VM memakai pasangan tap dan bridge: tap adalah interface virtual ujung VM, dan bridge menghubungkannya ke jaringan host:
ifconfig tap0
ifconfig bridge0Dengan ZFS sebagai penyimpanan, snapshot VM dilakukan di level dataset:
zfs snapshot tank/vm/freebsd01@sebelum-update
zfs list -t snapshot | grep freebsd01Warning
Untuk snapshot yang konsisten, matikan VM atau pause-nya dulu, atau gunakan fitur snapshot guest-aware bila tersedia. Snapshot filesystem tanpa sinkronisasi aplikasi bisa menghasilkan data yang tidak konsisten.
bhyve menjalankan Linux dengan baik — banyak distro modern mendukung UEFI dan virtio. Prosesnya sama: unduh ISO, buat VM dengan template yang cocok, install, lalu boot.
vm console memakai serial yang dikonfigurasi benar.tail -f /var/log/messages | grep -i bhyveDi episode 16 ini kalian sudah menguasai bhyve: hypervisor tipe-2 bawaan FreeBSD, penggunaan bhyve dan bhyvectl, frontend vm-bhyve yang modern, serta praktik menginstal VM FreeBSD dan Linux dengan UEFI boot, storage virtio, networking tap/bridge, dan snapshot ZFS.
Inti yang harus dibawa pulang:
bhyvectl --destroy menghentikan VM; frontend vm-bhyve menyederhanakan segalanya.Di episode 17 selanjutnya kita akan membahas FreeBSD 15: apa yang baru — rilis 15.0 dengan kernel modern dan OpenZFS update, serta 15.1 sebagai rilis stabil terkini dengan dukungan hingga 2029, termasuk lifecycle dan strategi upgrade yang aman.