検索
特集/連載

Windows Serverコンテナ、Hyper-Vコンテナ、Hyper-V VM、3つ違いを比較「Windows Server 2016」の機能

Microsoftの「Windows Server」コンテナと「Hyper-V」コンテナでは、分離レベルが異なる。Hyper-VコンテナではHyper-V VMを利用するが、この2つには大きく違う点が幾つかある。

Share
Tweet
LINE
Hatena

 Microsoftの「Windows Server 2016」で導入された全ての新しい機能の中で、最も注目を集めているのはコンテナだろう。オープンソースの世界ではだいぶ前から普及しているが、「Windows」にとってコンテナは新しいものだ。多くの点において、Windowsコンテナは「Linux」コンテナとよく似ている。

 例えば、どちらも「Docker」を使用して管理することができる。ただし、Windowsに特有の側面が幾つかある。例えば、Windows Server 2016では、「Windows Server」コンテナと「Hyper-V」コンテナの使用がサポートされている。ここで、これらのコンテナの種類にはどのような違いがあるのか、Hyper-VコンテナはHyper-V VMとどう異なるのかという疑問が生まれる。

Windows ServerコンテナとHyper-Vコンテナの比較

 Windows ServerコンテナとHyper-Vコンテナの機能は非常に似通っている。どちらも同じことを行い、基本的に同じ方法で管理される。主な違いは分離レベルだ。

 OSを個別に搭載しているVMと異なり、コンテナは共通のOSカーネルを共有している。各コンテナは、共有OSで動作する分離されたユーザーモード環境である。つまり、コンテナにはOSが含まれないので、サイズはVMより大幅に小さくなる。

 OSを共有するコンテナに関する問題は、アプリケーションにはさまざまなニーズがあり、単一のOSイメージでは全てのコンテナに適切に対処できない可能性があるということだ。また、コンテナはお互いに分離するように設計されているが、マルチテナント環境ではテナントの境界を越えたOSカーネルの共有を回避するのが一般的である。

 ここで登場するのがHyper-Vコンテナだ。Hyper-Vコンテナは、1点を除いてWindows Serverコンテナと全く同じ方法で動作する。唯一の違いは、Hyper-VコンテナとHyper-Vコンテナの依存関係がHyper-V VMにカプセル化されることだ。そのためHyper-Vコンテナが専用の基本OSイメージを持つことも、複数のHyper-Vコンテナが共通の基本OSイメージを共有することも可能になる。

Hyper-VコンテナとHyper-V VMの比較

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る