NetBSD on bhyve
bhyveを使うとFreeBSD以外のオペレーティングシステムを実行できます。今回はbhyveでNetBSDを利用する方法を紹介します。NetBSDプロジェクトは先日、NetBSDの最新メジャーアップグレードバージョンとなるNetBSD 7.0を公開しましたので、今回はこの最新版をインストールする方法を紹介します。
次の条件でセットアップを行います。
- ホスト:FreeBSD 10.2-RELEASE/amd64
- ゲスト:NetBSD 7.0/amd64
- ホストNIC:bge0
- ゲストNIC:tap0 (via bridge0)
- 仮想CPU:1個
- 仮想メモリ:2GB
- 仮想ディスク(32BG):/dev/zvol/z/netbsd-7.0
- インストーラ:/d/bhyve/NetBSD-7.0-amd64.iso
- grub-bhyve設定ファイル:/d/bhyve/netbsd-7.0-device.map
細かい説明はこれまでのbhyve記事を参考にしてください。
ホストのセットアップ
ホストのセットアップを行います。vmmカーネルモジュールを読み込み、bridge0にtap0とbge0を追加します。
再起動したときも同じコマンドが実行されるように3つの設定ファイルにそれぞれ次のような設定を追加します。
ゲストのインストール
FreeBSD以外のオペレーティングシステムをbhyveで使う場合、カーネルのローディングにgrub-bhyveを使います。grub-bhyveで使う設定ファイルを次のように用意します。
NetBSD 7.0のインストールイメージファイルをダウンロードするとともに、次のようにZFSを使って仮想ディスクを作成します。
次のようにgrub-bhyveを実行してNetBSDカーネルを読み込みます。
インストールが完了したらshutdownコマンドを実行して仮想環境を終了します。
インストールはとくに困ることはないと思います。インストーラの指示にしたがってそのままインストールしてみてください。
NetBSD 7.0を使ってみよう
以降は次のようにgrub-bhyveとbhyveコマンドを実行することでNetBSD 7.0が起動できるようになります。
起動スクリプトを組むか、または次のようにエイリアスを設定しておけば、コマンド1つでNetBSD環境を起動できるようになります。
bhyve活用あれこれ
これまでFreeBSD bhyveでゲストオペレーティングシステムとしてFreeBSD、CentOS、OpenBSD、NetBSDをインストールして使用する方法を紹介してきました。また、ディスク性能が引き上がるので、仮想ディスクとして通常のファイルを使うのではなくZFSでデバイスファイルを作成して使用したほうがよいことも紹介しました。
bhyveがどういった仕組みで動作しているのか、カーネルの読み込みや起動処理がどうなっているのか、コマンドと操作を通じてなんとなくつかめてきたのではないかと思います。起動時のオプションが多いので最初は戸惑うかもしれませんが、起動に関してはシェルスクリプトやエイリアスにまとめれば一発でいけるようになりますので、一度作成してしまえばあとはコピーして編集するだけで済みます。
FreeBSD bhyveはいろいろと活用できる機能ですので、まだ使っていないのであれば、ぜひ一度試してみてください。