米Docker、VPN向けライブラリやMac OS X向けの仮想化ツールキットなどをオープンソースで公開

 コンテナ技術の米Dockerは5月18日、3種類の技術をオープンソースで公開した。同社が進めているWindowsおよびMac OS XにおけるDockerサポートで利用されている技術で、Mac OS Xの「Hypervisor framework」を活用する仮想化技術などが含まれる。

 DockerはLinuxカーネルの機能を使ったコンテナ技術だが、WindowsやMac OS X向けにも提供されている。Windows/Mac OS X向けには各プラットフォームで提供されている仮想化技術を利用してLinuxカーネルを実行させる仕組みが採用されており、ここで使われているMac OS X上の仮想化ツールキット「HyperKit」、分散コンポーネント向けのパイプラインフレームワーク「DataKit」、仮想ネットワーキング向けのライブラリツールキット「VPNKit」の3種類が公開された。

 HyperKitはxHyveとbHyveプロジェクトを土台とし、Mac OS X 10.10以上に含まれるHypervisorframeworkを活用する軽量の仮想化技術。ライブラリ構造を持ち、ハードウェア側の仮想化技術を利用して仮想マシンを動かすことができる。管理者権限の昇格は不要で、複雑な管理ツールも必要ないという。

 DataKitはGit互換のファイルシステムインターフェイスを持ち、プロセスの協調を行う。UNIXパイプラインコンセプトを利用し、Plan9(9P)プロトコルを土台とするが、ツリー構造のデータのストリームなどモダンな特徴も備える。これにより、疎結合のプロセス間で複雑なワークフローを定義できるという。

 VPNKitはネットワーキングライブラリで、イーサネットネットワークトラフィックとソケットコール間の変換を行う。MirageOS TCP/IPユニカーネルスタックを土台とし、OCamlで作成した。ユーザー空間でのネットワーキングプロトコルを調整したいときに便利だという。

 Dockerによると、これら3つは別々でも、組み合わせてでも利用できるとのこと。将来的に、ファイルシステムフレームワークなどほかのコンポーネントも公開するとしている。

HyperKit
https://github.com/docker/hyperkit

DataKit
https://github.com/docker/datakit

VPNKit
https://github.com/docker/vpnkit