検索
特集/連載

いまさら聞けないコンテナ&マイクロサービスComputer Weekly製品ガイド

個別にデプロイできるモジュールは、アジャイルアプリケーション開発にどう活用できるのか。この業界の主なサプライヤーも紹介する。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

 コンテナは、業務をこなすために必要な最低限のリソースのみを配備したアプリケーションロジックのコンポーネントを格納する。仮想マシン(VM)と異なり、コンテナはOSを必要としない。OSリソースはAPI経由で呼び出される。

 コンテナ化は、実質的にはOSレベルの仮想化といえる(これに対してVMはハイパーバイザー上で実行され、それぞれフル機能のOSを伴う)。コンテナはパッケージ化が簡単で、軽量かつ実行場所を選ばない。複数のコンテナを1つのVMにデプロイすることもできる。

 マイクロサービスは、例えばネットワークトラフィックのルーティングやオンライン決済、医療結果分析といった単一機能のアプリケーションを指す。その概念は新しいものではなくWebサービスから進化したもので、複数のマイクロサービスを連結してアプリケーションとして機能させるのは、数年前に流行したサービス指向アーキテクチャ(SOA)の進化形だ。

コンテナとマイクロサービスの違い

 コンテナとマイクロサービスは同じではない。マイクロサービスはコンテナの中で運用することもあれば、プロビジョニングされたVMとして運用することもある。コンテナはマイクロサービスのために使われるとは限らない。だが、コンテナはマイクロサービス開発とデプロイの優れた手段であり、コンテナ運用のツールとプラットフォームはマイクロサービスベースのアプリケーションを管理する手段として優れている。多くの場合、これらの用語は相互に入れ替えることもできる。

 コンテナは何年も前からUNIXやLinuxに統合されてきた。最近は総合的なサポートのエコシステムが成長してきた。

 これに関わるサプライヤーは数多い。だが「Docker」が市場の中心で主導していることに異論はない。Dockerは、何百万というデベロッパーや数万もの組織がその技術を使っていると説明する。ただ、多くの組織にとってコンテナ化が目新しいものであることを示す統計もある。Dockerの顧客のうち、コンテナを本番環境で運用しているのは40%にとどまる。

 Dockerの優位は、必ずしも独占状態にあることを意味しない。むしろそれとは程遠い。




*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***






Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る