毎週3分、情シスドリル コレ1枚でわかる「コンテナ型仮想化とDocker」即席!3分で分かるITトレンド

サーバーの仮想化手段として一般的な「ハイパーバイザー型」と「コンテナ型」。実際どこがどう違うんだっけ? いまさら聞けないその疑問を、分かりやすく図解します。

» 2015年06月08日 11時00分 公開

この連載は

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


 サーバ仮想化の手段として広く使われているのは、ハイパーバイザーを使った仮想化です。ハイパーバイザーとは、仮想化を実現するソフトウェアのことで、ハードウェアに搭載されているプロセッサーやメモリの使用時間、ストレージの容量を細かく分割して複数のユーザーに割り当てる機能を持っています。

 ユーザーは、それぞれに割り当てられたシステム資源を占有して利用することで、“物理的には1台のハードウェアであるにもかかわらず、自分専用の個別サーバが割り当てられてかのいるように見せかける”ことができます。この見かけ上の1つひとつのサーバを「仮想サーバ」または、「仮想マシン」といい、それを実現するソフトウェアには、VMwareのESXi、CitrixのXen Server、MicrosoftのHyper-Vなどがあります。

コレ1枚でわかるコンテナ型仮想化とDocker

ハードウェアに依存しないコンテナ型仮想化が注目されるワケ

 「サーバ仮想化」を実現するもう1つのやり方として、コンテナを使う方法があります。この方法は、1つのOSにコンテナといわれる「独立したサーバと同様の振る舞いをする区画」を複数作り、それを個別のユーザーやサービスに割り当てます。

 利用するユーザーやサービスから見れば、別々のサーバがあたかも独立した個別サーバであるかのように見える点は、ハイパーバイザーを使う場合と同様です。異なるのは、同じOS上で実現するので、全てのコンテナは同じOSしか使えない点です。ハイパーバイザーはそれより一段下のレベル、つまりハードウェアのサーバと同じ振る舞いをする仮想サーバを実現しますので、仮想サーバごとに別々のOSを稼働させることができます。

 その一方、コンテナは、ハイパーバイザーのように個別にCPUやメモリ、ストレージなどを割り当てる必要がないため、システム資源のオーバーヘッド(仮想化のために割り当てられる資源や能力)が少なくて済みます。そのため、同じ性能のハードウェアであれば、より多くのコンテナを作ることができます。

 また、コンテナは、それを起動させるためにハイパーバイザー型のように仮想マシンとOSを起動させる手間がかからないため、極めて高速で起動できます。さらにハイパーバイザーのように仮想マシンごとにOSを用意する必要がないのでディスクの使用量も少なくて済みます。

 1つのコンテナは、OSから見ると1つのプロセスと見なされます。プロセスとは、プログラムが動いている状態のことです。そのため、他のサーバにコンテナを移動させて動かす場合でも、OS上で動くプログラムを移動させるのと同様に、基となるハードウェアの機能や設定に影響を受けることが少なくて済みます。

 ハイパーバイザーは、基となるハードウェアの機能や構成に依存し、設定情報も引き継がなくてはなりませんが、コンテナはその必要がなく、マルチクラウドやハイブリッドクラウドのように、異なるクラウドやサーバ間で実行環境を移動させることも容易です。

Photo

 このような便利なコンテナを実現するソフトウェアを「コンテナ管理ソフトウェア」といい、その1つとして、Dockerが注目されています。Dockerは、Docker社が提供するLinux用のコンテナ管理ソフトウェアです。

 Dockerが注目されるようになったのは、コンテナを生成する設定を「Dockerfile」として公開し、それを他のユーザーと共有できる仕組みを設けた点にあります。

 これによって、他のユーザーが作ったソフトウェアとそれを動かすソフトウェア構築プロセスをそのまま利用して、労せずして同じコンテナを自分のサーバ上で実現し、ソフトウェアをインストールできるようになりました。マルチクラウドやハイブリッドクラウドといった利用形態では、とても便利な仕組みといえます。

 そのため、Dockerは、Amazon(AMS)やGoogleなどのクラウドサービスプロバイダをはじめ、VMware、IBM、Dell、RedHatなどの大手ITベンダーが採用を表明しています。また、Microsoftも自社のクラウドサービスであるWindows Azure Platformや次期Windows Serverでの採用を表明しており、今後も、広く普及していくものと思われます。

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

【図解】コレ1枚でわかる最新ITトレンド [Kindle版]

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


Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ