コンテナはクラウド進化の鍵--その歴史と「Docker」の隆盛 - (page 3)

Jason Perlow (ZDNET.com) 翻訳校正: 村上雅章 野崎裕子

2015-05-01 06:15

 コンテナにより、アプリケーションをメモリ上で実行させるための隔離された個別の独立空間とともに、個々のシステムの外観を保存、提供するためのストレージがもたらされる。これによって、各コンテナ内で独自のシステム管理者とユーザーのグループが保持できるようになる。この点でコンテナとVMはよく似ていると言える。

 しかしVMとは異なり、コンテナ内ではカーネルやドライバ、共有ライブラリといったOSの完全なインスタンスやイメージが稼働しているわけではない。

 このためコンテナの数が数十、または数百、あるいは数千という規模になっても、ホストOSのインスタンスは1つだけで済むため、VMと比較するとアプリケーションをごく小さなフットプリントで稼働させられるというわけだ。

 また、VMの追加は数分単位の時間がかかるが、コンテナの追加はマイクロ秒単位の時間しかかからない。

 コンテナにはアプリケーションと設定、そしてそのアプリケーションの実行に必要なストレージのみが保持される。このコンセプトはしばしばJeOS、すなわち「Just enough OS」(必要最小限のOS)とも称されている。

 コンテナによってさまざまな可能性が広がっていく。ここで特筆しておきたいのは、ホスト上のライブラリやパッチがコンテナに引き継がれる点だ。つまり、すべてのコンテナは同じ共有ライブラリからクローンされたメモリのコピーを使用するため、ホスト側でパッチを当てると、そのパッチはすべてのコンテナに引き継がれる。これはシステム管理という観点から見ると望ましい動作だと言えるだろう。

 また、あるホスト上で稼働するコンテナ群、すなわち仮想環境群はまったく同じバージョンのOS上で動作することになる。

 VMを実行するハイパーバイザとは異なり、コンテナや、LXCとDockerといったコンテナ化プラットフォームを実行するにはホストOSが必要となる。

 コンテナ化がOSレベルでの仮想化と呼ばれているのは、こうした理由があるためだ。コンテナ化プラットフォームがLinuxである場合にはLinuxコンテナが稼働し、コンテナ化プラットフォームがWindowsである場合にはWindowsコンテナが稼働するというわけだ。

 たった1つのOSインスタンスの下で数多くのコンテナの稼働が可能であるため、コンテナ自身を単一のVMとして機能させることもできる。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]