ニュース
» 2016年12月19日 09時00分 UPDATE

即席!3分で分かるITトレンド:コレ1枚で分かる「仮想マシンとコンテナの違い」

仮想化の世界で注目を集めている「コンテナ」はどのようなテクノロジーなのか、ハイパーバイザー型と比較しながら、解説します。

[斎藤昌義(ネットコマース株式会社),ITmedia]

この連載は

 カップめんを待つ間に、電車の待ち時間に、歯磨きしている間に“いまさら聞けない”ITトレンドが分かっちゃう! 今さら聞けないITの最新トレンドやビジネス戦略を、体系的に整理して分かりやすく解説する連載です。「この用語、案外、分かっているようで分かっていないかも」「IT用語を現場の社員にもっと分かりやすく説明できるようになりたい」――。情シスの皆さんのこんな課題を解決します。


 ハードウェアに搭載されているプロセッサやメモリの使用時間を細かく分割し、それぞれをひとまとめにして複数の個別独立したサーバのように機能させるのが「サーバ仮想化」です。こうして作られた見掛け上のサーバを「仮想サーバ」または「仮想マシン」といいます。この仮想マシンを実現するソフトウェアはハイパーバイザーで、VMwareのESXi、LinuxのKVM、MicrosoftのHyper-Vなどがあります。

Photo

 一方、1つのOSに「コンテナ」と呼ばれる「他のユーザーから隔離されたアプリケーション実行環境」を作り、あたかも個別独立したサーバのように使おうというのが「コンテナ仮想化」です。これを実現するソフトウェアはコンテナ管理ソフトウェアで、Dockerと呼ばれるオープンソースのソフトウェアが圧倒的なシェアを占めています。

 両者は、「隔離されたアプリケーション実行環境」を提供するということでは同様ですが、仮想マシンでは、それぞれにOSを動かさなくてはなりません。そのため、仮想マシンごとにプロセッサやメモリを消費し、ストレージも必要です。

 一方、コンテナでは、1つのOSで稼働しますので、プロセッサやメモリの消費は少なく、ストレージの使用もわずかです。そのため、仮想マシンに比べて起動時間が短く、同じ性能のハードウェアであれば、より多くのコンテナを同時に動かすことができます。

 また、コンテナ管理ソフトウェアがハードウェアやOSごとの違いを吸収してくれるため、既にアプリケーションやミドルウェアの稼働が確認されているコンテナであれば、他のサーバに移して動かしても確実に動くことが保証されます。

 仮想マシンでは、実行環境が変われば、ハードウェアやOSの設定を確認しなければなりませんので、コンテナよりも手間が掛かります。ただ、仮想マシンは1つの独立したサーバーとして機能しますので、仮想マシンごとに異なるOSを動かすことができます。一方コンテナは1つのOSから作られているため、OSは同じでなくてはなりません。

 システム資源の負担が大きく、可搬性は低いが、自由度が高い仮想マシン。システム資源の負担は小さく、可搬性は高いが、OSは限られるコンテナ。これらは、用途に応じて使い分ける必要があります。

Photo 【図解】コレ1枚で分かる「仮想マシンとコンテナの違い」

著者プロフィル:斎藤昌義

book システムインテグレーション再生の戦略 [Kindle版]

 日本IBMで営業として大手電気・電子製造業の顧客を担当。1995年に日本IBMを退職し、次代のITビジネス開発と人材育成を支援するネットコマースを設立。代表取締役に就任し、現在に至る。詳しいプロフィルはこちら。最新テクノロジーやビジネスの動向をまとめたプレゼンテーションデータをロイヤルティーフリーで提供する「ITビジネス・プレゼンテーション・ライブラリー/LiBRA」はこちら


Copyright© 2017 ITmedia, Inc. All Rights Reserved.

ピックアップコンテンツ

- PR -

注目のテーマ

マーケット解説

- PR -