第5回 LinuxコンテナとDockerの違いをざっくりと比較する古賀政純の「攻めのITのためのDocker塾」(2/2 ページ)

» 2015年08月05日 07時45分 公開
前のページへ 1|2       

ファイルシステムやアプリなどを分離し、異なる種類のLinux OSをコンテナとして稼働できるのか?

 Linuxコンテナは、Dockerと同様にファイルシステムの分離、アプリのプロセスの分離、ネットワークの分離が可能です。Linuxコンテナ、Dockerともに、分離されたファイルシステム上にホストOSとは異なる種類のLinuxディストリビューションを稼働させることが可能です。

 例えば、最新の物理サーバ上にCentOS 7.1をインストールし、これをDockerのホストOSとして稼働させ、DockerコンテナはUbuntu Serverの旧バージョンや、CentOSの旧バージョンを同時に稼働させるといったことが可能です。一見するとハイパーバイザー型の仮想化ソフトと同じように思えますが、Linuxで稼働するDocker環境において、安定的に利用できるDockerコンテナのOSの種類は、Linuxのみですので注意が必要です。

  Linuxコンテナ Docker
ファイルシステムの分離 可能 可能
アプリのプロセスの分離 可能 可能
ネットワークの分離 可能 可能
ユーザーの分離 可能 可能
ホストOSと異なるLinuxディストリビューションを稼働 可能 可能
コンテナのOSとしてWindowsが稼働 不可 不可
ファイルシステムやアプリのプロセスの分離、ネットワーク資源などを分離できるかどうか

OS、アプリの構築、稼働の違いに着目する

 みなさんは、社内システムでWiki、SharePoint、ブログなどを使っていますか? 

 例えば、インターネット百科事典で有名な「ウィキペディア」のような仕組みは、オープンソースのMediawiki(メディアウィキ)と呼ばれるソフトウェアで実現できますが、このようなアプリケーションサーバソフトウェアは、一般的にWebコンテンツを保管するために、データベースソフトウェアなどをバックエンドに必要とする場合が少なくありません。

 コンテナに限らず、Webシステムにおいては、Webサーバ、アプリケーションサーバ、データベースサーバなどのサーバ向けソフトウェアをコンテナの中に手順書通りにインストールし、それらを連携稼働させてサービスを構築します。

  Linuxコンテナ Docker
1台の物理サーバーで複数のコンテナが稼働 可能 可能
複数台の物理サーバーでコンテナ同士が通信 LXDで実現 可能
コンテナのイメージ化 LXDで実現 可能
ライブマイグレーション LXDで実現 CRIUを組み合わせて実現

 Dockerコンテナでは、アプリケーションの開発者やIT部門の運用管理者の可搬性や移植性の視点から、1コンテナに1アプリケーションというのが望ましいとされています。Webサーバ用のコンテナ、アプリケーションサーバ用のコンテナ、データベース用のコンテナをそれぞれ構築し、コンテナ同士を連携させるのがよいとされています。当然、これらの複数のコンテナが1台の物理サーバ上で稼働する場合もありますし、ネットワークで接続された複数の物理サーバ同士で通信しあうこともあります。

 現在(2015年8月時点)、Dockerにおいては、複数の物理サーバで稼働させる「マルチホスト」への対応がコミュニティやベンダーによって精力的に進められています。一方、Linuxコンテナにおけるマルチホスト対応については、2015年8月現在、Linuxコンテナをさらに進化させたLinuxコンテナデーモン(通称LXD)で開発が進められています。

 DockerにはアプリケーションをインストールしたOS領域をイメージとして保存する機能がありますが、LXDにおいてもイメージとして管理する機能が設けられています。さらにLXDにおいては、まだ開発途上ではありますが、ライブマイグレーションの機能があります。一方、Dockerにおけるライブマイグレーションは、CRIUと呼ぶプロジェクトで開発が進められています。

photo LinuxコンテナとLXDとDockerの主な特徴

(補足) Linuxコンテナデーモン(LXD)について

コンテナのハイパーバイザーとして2015年2月にリリースされたソフトウェアがLinuxコンテナデーモン(通称LXD)です。Canonical社とUbuntuコミュニティによって開発が進められており、コンテナのイメージ化、ネットワーク経由による制御、ライブマイグレーションなど、Linuxコンテナを大幅に進化させた機能を提供し、現在も進化を続けています。


(第6回はこちら



古賀政純(こが・まさずみ)

日本ヒューレット・パッカード株式会社 オープンソース・Linuxテクノロジーエバンジェリスト。兵庫県伊丹市出身。1996年頃からオープンソースに携わる。2000年よりUNIXサーバーのSE及びスーパーコンピューターの並列計算プログラミング講師、SIを経験。2006年、米国HPからLinux技術の伝道師として「OpenSource and Linux Ambassador Hall of Fame」を2年連続受賞。プリセールスMVPを4度受賞。現在は日本HPにて、Linux、FreeBSD、Hadoopなどのサーバー基盤のプリセールスSE、文書執筆を担当。Red Hat Certified Virtualization Administrator, Novell Certified Linux Professional, Red Hat Certified System Administrator in Red Hat OpenStack, Cloudera Certified Administrator for Apache Hadoopなどの技術者認定資格を保有。著書に「CentOS 7実践ガイド」「Ubuntu Server実践入門」などがある。趣味はレーシングカートとビリヤード



関連キーワード

Docker | CentOS | 攻めの経営 | Linux


前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ