bhyve (BSD hypervisor)
初版 2014年1月20日/FreeBSD10.0より
プログラミング
言語
C
対応OS FreeBSD
プラットフォーム x86(インテル、AMD)
要VTまたはSVM
サポート状況 開発中
種別 仮想化
ライセンス BSDライセンス
公式サイト bhyve.org
テンプレートを表示

bhyve(発音は「ビーハイブ ("bee hive") 」、旧称は "BSD hypervisor" を表すBHyVeと表記されていた)はFreeBSD用に開発されたType 2 ハイパーバイザである[1][2][3]。元々FreeBSD用に開発されたものだが、SmartOS(英語版)[4]やOpenIndiana、OmniOS[5]など数多くのIllumosベースディストリビューションでも使用でき、さらにmacOSでもxhyveという名のbhyve移植を使用できる[6]。

ネットアップにより2011年5月13日にBSDCanでその構想が発表された[7]。Intel-VT with EPTがサポートされているCPUが必要とされる。FreeBSD 10-RELEASE以降に標準搭載されている。

機能

bhyveはFreeBSD 9以降、OpenBSD、NetBSD、Linux、Illumos、DragonFly BSD、Windows NT[8](Windows Vista以降、Windows Server 2008以降)などのゲストオペレーティングシステム仮想化をサポートするだけでなく、UEFIインストールやVirtIOでエミュレートされたインタフェースもサポートする。Windows仮想マシンを安定動作させるためにはVirtIOドライバが必要となる。現在、さらに多くのx86-64アーキテクチャ用オペレーティングシステムをサポートするための開発が行われている。

以下の周辺機器のサポートは、基盤となるシステムやVirtIOのドライバやサポートに依存する:eXtensible Host Controller Interface(英語版) (xHCI) USBコントローラ、NVM Express (NVMe) コントローラ、High Definition Audioコントローラ、VNCサーバに接続されたRawフレームバッファデバイス(ビデオ出力)、AHCI/PCIパススルー[9]。

周辺機器のサポートがまだ不完全なため、ハードウェアアクセラレーションによるグラフィックスを利用するにはPCIパススルーを使用するしかないが、Intel GVT(またはドライバでサポートされるその他のvGPU)を利用すればホストとデバイスを共有できる[10]。

bhyveにメモリバルーニングとアクセラレイティドグラフィックインタフェースが欠如しているのは他の競合ソフトウェアと全く同じであるが、bhyveの方がより現代的なコードベースを搭載し、使用するリソースもより少ない。またFreeBSDの場合、リソース管理がより効率的となる。FreeBSDは模範的なI/O速度でも知られているので、FreeBSDでbhyveを実行すればI/O時間、特にディスクやネットワーク関連の負荷が短縮されるので、タイムクリティカルな仮想アプライアンスでは多くの利点が得られる。

アプリケーション

macOS上のDockerは、HyperKitと呼ばれるbhyve派生を使用する。HyperKitは、bhyveをmacOSのHypervisor.frameworkに移植したxhyveから、さらに派生したものである[11]。

FreeBSD上のiohyveは、FreeBSDに組み込まれた機能を利用して、bhyveゲストを作成・保存・管理・起動するためのコマンドラインユーティリティである[12]。

FreeBSD上のvm-bhyveはシェルベースで、依存性が最小限のbhyveマネージャである[13]。

FreeBSD上のBVCPは軽量かつネイティブで、さらに完全な機能を備えた、仮想マシン管理用ウェブインタフェースである[14]。

その他のディストリビューション

ClonOSはFreeBSDをベースとした仮想ホスティングプラットフォームやアプライアンス用のディストリビューションであり、主にbhyveを使用し管理用ウェブインタフェースを搭載する[15]。

脚注

  1. ↑ “Porting bhyve on ARM” (10 June 2016). 8 February 2017閲覧。
  2. ↑ “BHyVe: The BSD HyperVisor In Depth” (20 October 2012). 18 February 2018時点のオリジナルよりアーカイブ。8 February 2017閲覧。
  3. ↑ Kerner, Sean Michael (22 January 2014). “Open Source FreeBSD 10 Takes on Virtualization”. ServerWatch. QuinStreet Enterprise. 28 July 2014閲覧。
  4. ↑ Gerdts, Mike (March 2018). “bhyve zones in SmartOS”. 2021年9月18日閲覧。
  5. ↑ “bhyve Hypervisor”. omniosce.org. 2018年9月27日閲覧。
  6. ↑ “machyve/xhyve: a lightweight OS X virtualization solution”. GitHub (9 July 2020). 2021年9月18日閲覧。
  7. ↑ “FreeBSDハイパーバイザ「BHyVe」、試験呼びかけ開始”. まマイナビ (2011年11月15日). 2021年9月18日閲覧。
  8. ↑ “bhyve Windows Virtual Machines”. FreeBSD Wiki. 2021年9月18日閲覧。
  9. ↑ “FreeBSD Manual Pages”. The FreeBSD Project. 2021年9月18日閲覧。
  10. ↑ “Bhyve guests with hardware accelerated graphics”. FreeBSD Presentations and Papers. 2021年9月18日閲覧。
  11. ↑ “moby/hyperkit: A toolkit for embedding hypervisor capabilities in your application”. GitHub. Moby (10 July 2020). 2021年9月18日閲覧。
  12. ↑ “FreeBSD bhyve manager utilizing ZFS and other FreeBSD tools”. GitHub. Pr1ntf. 2021年8月7日閲覧。
  13. ↑ “Shell based, minimal dependency bhyve manager”. GitHub. Churchers. 2021年8月7日閲覧。
  14. ↑ “BVCP: FreeBSD Bhyve Project”. bhyve.npulse.net. 2021年8月7日閲覧。
  15. ↑ “Free Open-Source Hosting Platform”. clonos.convectix.com. 2021年8月7日閲覧。

参考文献

外部リンク

⌬ Phoenix Mesh CID: 未登録 IPFS未登録 📡 0ピア N=1 CRITICAL PQS B75