特別連載:企業ITモダナイゼーション 第2回 今さら聞けない?Dockerコンテナ入門

本連載の第1回で触れたとおり、各業界のデジタル変革を主導する企業は、ITプラットフォームを「Docker」などのコンテナによって刷新する取り組みを推し進めている。また、デジタルジャイアントのGoogleは、かなり以前から自社のITプラットフォームを仮想化基盤からコンテナベースへと切り替え、IBMも主要なソフトウェア製品の大半をコンテナ化させた。果たして、コンテナの何がスゴいのか。その基本的な疑問を解き明かしたい。

利益を生むプラットフォーム

 コンテナは、アプリケーションとその稼働環境をパッケージ化する技術だ。それを使う最大のメリットは、アプリケーションを動作させるためにインフラを用意したり、運用したりする手間がかからなくなることだ。企業の経営/ビジネスにとって大切なのは、アプリケーションとデータであって、インフラではない。アプリケーションを動かすために必要とされるインフラ周りの労働負担やコストは、小さければ小さいほど、経営/ビジネス上のメリットは大きくなる。

 ところが、従来の仮想化ベースのインフラは、サーバハードウェア上のソフトウェアだけでも、ハイパーバイザー、OS、ミドルウェアなどが重なり、それらのインフラを業務ごとに構築し、運用管理していく必要があった。そのため、アプリケーションが何らかの不具合を発生させたときに障害を切り分けるのが困難であったり、トラブル回避の目的でスタックの更新を先送りしたり、緊急で増設したサーバと既存のサーバとの間にスタックのバージョン違いが発生したりと、インフラの構築・運用の現場では、実にさまざまな問題が発生してきたのである。

 加えて、開発側にとって悩ましいトラブルは、テスト環境では動いていたアプリケーションが本番環境では動かないという事態がたびたび発生してきたことだ。これも、仮想化ベースのインフラの複雑さに起因した問題といえる。つまり、開発側と運用側が、テスト環境と本番環境におけるアプリケーションの実行環境(ミドルウェアやOSカーネル)に微妙な差異があることに気づくことができず、それが問題の発生へとつながってきたのである。

Dockerの基本構造

 クラウドプラットフォームは、上述したようなインフラ構築・運用管理の手間を大きく減らす方法として広く普及してきた。クラウドプラットフォームの活用によって、ユーザー企業は、ネットワーク障害の問題から解放され、物理サーバのハードウェア故障の問題から解放された。ただし、クラウドプラットフォーム上で仮想化ベースのインフラを使い続けるかぎり、仮想サーバのシステム管理から解放されることはない。

 その問題を抜本的に解決してれくるクラウド技術として登場したのが、コンテナ技術のDockerといえる。

 Dockerは、「Dockerfile」と呼ばれる「コンテナの仕様書」から、アプリケーション、ミドルウェア、ソフトウェアパッケージ、OSカーネルライブラリが一体化されたコンテナを作成する仕組みである(図1)。

図1:Dockerの仕組み
図1:Dockerの仕組み

本記事は、PDF版で全文をお読み頂けます。

提供:日本アイ・ビー・エム株式会社
[PR]企画・制作 朝日インタラクティブ株式会社 営業部  掲載内容有効期限:2018年12月31日
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]