Call For Testing BSD Certification Group

Hands-on bhyve Current

http://cft.lv/17

#FreeBSD #bhyve #Virtualization

November 30th, 2012

Version 1.1

© Michael Dexter

The countdown to importing bhyve into FreeBSD has begun

The bhyve "BSD Hypervisor" developers have been hard at work preparing the project for merger into the main FreeBSD 10-CURRENT source tree and the result is a remarkably-usable system. These instructions will show you how to test a development snapshot based on FreeBSD 10.

The list of recent improvements is impressive:

In practice this means you can explore configurations such as booting a nanobhyve host from a flash device and launching guests from iSCSI targets. ZFS zvol and disk image booting is also supported and the key point to remember is that FreeBSD bhyve is simply FreeBSD. Anything you can do with FreeBSD should be possible with bhyve.

Hardware Requirements

bhyve depends on Intel's "Nehalem" or later Virtualization Technology (VT-x) and specifically Extended Page Tables (EPT). The most certain way to verify VT-x and EPT support on a given system is to watch for the VMX and POPCNT (Pop Count) features in your dmesg output. Some systems may disable VT-x in BIOS and while POPCNT does not directly confirm EPT support, these features are usually, if not always available together.

These procedures will work with either a dedicated hard drive or external storage devices such as USB keys.

Obtaining the Snapshot

The kind people at NYC*BUG, the New York City *BSD User Group and High5.nl have provided mirror space:

USA: http://mirrors.nycbug.org/pub/BHyVe/r244024
Europe: http://high5.nl/mirrors/bhyve/r244024

The minimum components you need to get started are:

INSTRUCTIONS-COPYRIGHT.txt
diskdev**.xz
scripts.tar (scripts/3-host-prep.sh and scripts/4-boot-guest.sh)

The diskdev**, base**.txz and kernel**.txz files are numbered to indicate FreeBSD 8.3, 9.0, 9.1 and 10.0 guests which are all simply snapshots.glenbarber.us snapshots, with the exception of FreeBSD 9.1 which is the official release plus VirtIO drivers.

Extract the desired archives with unxz(8) and tar(8) and follow the instructions.

FreeBSD and PC-BSD 9.0 users can download a bhyve package and guest image that were generated with bhyve-menu.sh at:

USA: http://mirrors.nycbug.org/pub/BHyVe/r225757
Europe: http://high5.nl/mirrors/bhyve/r225757

The 9.0 snapshots lack many of the new features found in the 10 snapshots but are easily installed and removed via a package.

Good luck and I welcome your feedback!

CFT

Copyright © 2011 – 2014 Michael Dexter unless specified otherwise. Feedback and corrections welcome.