OpenBSD on bhyve
bhyveを使うとFreeBSD以外のオペレーティングシステムを実行できます。今回はbhyveでOpenBSDを利用する方法を紹介します。OpenBSDはLibreSSLの開発やpf(4)の開発など興味深い取り組みを行っているプロジェクトです。簡単に利用できる環境を用意しておくとなにかと便利です。
今回は次の条件でセットアップを行います。
- ホスト:FreeBSD 10.2-RELEASE/amd64
- ゲスト:OpenBSD 5.7/amd64
- ホストNIC:bge0
- ゲストNIC:tap0(via bridge0)
- 仮想CPU:1個
- 仮想メモリ:2GB
- 仮想ディスク(32BG):/dev/zvol/z/openbsd-5.7
- インストーラ: /d/bhyve/install57.iso
- grub-bhyve設定ファイル:/d/bhyve/openbsd-5.7-device.map
細かい説明はこれまでのbhyve記事を参考にしてください。
ホストのセットアップ
ホストのセットアップを行います。vmmカーネルモジュールを読み込み、bridge0にtap0とbge0を追加します。
再起動したときも同じコマンドが実行されるように3つの設定ファイルにそれぞれ次のような設定を追加します。
ゲストのインストール
FreeBSD以外のオペレーティングシステムをbhyveで使う場合、カーネルのローディングにgrub-bhyveを使います。grub-bhyveで使う設定ファイルを次のように用意します。
OpenBSD 5.7のインストールイメージファイルをダウンロードするとともに、次のようにZFSを使って仮想ディスクを作成します。
次のようにgrub-bhyveを実行してOpenBSDカーネルを読み込みます。
ちょっと長くなりますが、OpenBSD 5.7インストールの様子を次に掲載しておきます。
インストールが完了したらrebootコマンドを実行して仮想環境を終了します。
OpenBSD 5.7を使ってみよう
以降は次のようにgrub-bhyveとbhyveコマンドを実行することでOpenBSD 5.7が起動できるようになります。
起動スクリプトを組むか、または次のようにエイリアスを設定しておけば、コマンド一発でOpenBSD環境を起動できるようになります。
複数の仮想CPUを割り当てたい場合には、インストールの段階でbsd.mpも選択してインストールしておいてください。またその場合、grub-bhyveで読み込むカーネルをbsdからbsd.mpに変更してください。