シリコンバレーテクノロジー 2016.10.12

熾烈なDocker(ドッカー)コンテナ・オーケストレーターの覇権争い

こんにちは。Nissho Electronics USA山本大輔です。

テクノロジー業界において、「コンテナ」は現在、最も注目されているキーワードの一つであることは間違いありません。コンテナ型仮想化サービスについては以前のブログでも取り上げました。

これまでのITはガバナンスのためのITであり、正確性、安定性、堅牢性が重要視されるSystem of Recordが中心でしたが、これからのITは事業を創造するためのITとして、迅速性、柔軟性、伸縮性が重要視されるSystem of Engagementへと変革が求められています。その基盤としてパブリッククラウドサービスの利用が増加することが見込まれています。オンプレミスでもクラウドでもプラットフォームを問わずに瞬時に稼働および、削除が可能であるというポータビリティの高さを特徴の一つとするコンテナがエンタープライズ企業に広く普及するのも時間の問題と言えるでしょう。

コンテナを導入にあたり、必須となるのが、オーケストレーターです。今回は熾烈を極めるコンテナ・オーケストレーターの覇権争いついて記事をお届けします。

コンテナ・オーケストレーターとは?

コンテナ・エンジン自体はDocker以外ほぼ選択肢は無いと言っても良いかもしれません。Dockerは基本的には自分自身がインストールされているホストのコンテナしか管理できないという問題がありました。そのため、かなりの数のサーバを利用する規模でDocker環境を運用するには、コンテナのクラスタリングやスケジューリングなど、複数ホストをまたがってコンテナをオーケストレーションする仕組みが必要です。

そこで注目を集めたのが、KubernetesやMesosといった複数ホストをまたがるコンテナ環境の管理を行うスケジューリングツールです。

ただし、Docker社も黙っておりません。そんな課題に対して、Docker Swarmというクラスタリングツールをリリースし、今年シアトルで開催されたDockerconでは、Docker Engine1.12にDocker Swarmを統合することを発表しました。これによりDocker Engine単体でオーケーストレーションを実現できるようになったわけですが、このオーケストレーターのデファクトをめぐる争いは終わりません。

オーケストレータそれぞれの特徴

それでは、代表的なオーケストレーターのDocker Swarm、Mesos、Kubernetesの特徴について簡単に説明します。

1. Docker Swarm

Docker社が提供。Ver1.12からスタンドアロン型からSwarmKitと呼ばれるオプションとしてDocker Engineに統合され、シンプルで簡単なセットアップができます。スタンドアロン型と合わせて現在までのべ200名程のコントリビューターによって5,000程度のコミットが行われています。2015年11月にスタンドアロン型がProduction Readyとなりましたが、リバランシングやオートスケーリング、モニタリング機能をまだ持っておらず機能面で他に劣っていると言えるかもしれません。オープンソースコミュニティによる運営ではないため、ベンダーロックインという観点でも不安が残ります。

 

2. Mesos

Mesosは元々UC Berkeleyの研究からスタートしApache Foundationが運営。2009年にLaunchしており3つの中では最も歴史が長いです。Mesosphere社がディストリビューションも提供。KVSにZooKeeperを利用。Marathon、Chronos、AuroraといったFrameworkとの組み合わせが必要。複数の物理マシン/仮想マシンを1つの巨大なマシンと捉え、1つのリソースプールとして管理するというコンセプトのため、スケールアウトが求められるようなクラウドネイティブアプリケーションというより、バッチ処理など一度に大量のリソースを必要とする処理に向いていると言えます。ビッグデータ関連のUse caseも多いです。Twitter、Airbnb、Appleなどが代表的なユーザー。

3. Kubernetes

Googleで15年以上稼働の大規模コンテナ管理システムのBorgがベースとなっており、k8sと略されることが多いです。現在はLinux Foundation配下のCloud Native Computing Foundationに管理が委譲されています。2015年7月にProduction Readyに。毎月1,000を超えるコミット数(通算35,000以上)を誇り、最も活発なコミュニティと言えます。KVSにetcdを利用。複数ホストにまたがってコンテナの管理、スケジューリングを可能にします。同じ役割を持つ複数のコンテナをPodというグループに纏めて管理することができ、スケールアウトが求められるようなアプリケーションに向いています。

結局、何が良いの?

コンテナ関連のイベントでは、Swarm、Mesos、Kubernetes関係者のパネルディスカッションがよくありますが、いつも適材適所で使い分け、敵ではなく共存するという風潮が多いです。Kubernetes on Mesosといったように、フレームワークの一つとしてKubernetesを使うという共存もあるでしょう。事実なのでしょうが、もっと本音でぶつかって欲しい笑。

確かにまだ進化を続けている段階であり、現時点で何が勝つとは言い切れませんが、今後の進化のスピードを考える時に、コミュニティの存在は非常に重要です。そういった意味では、多くの企業が参画し、最も活発なコミュニティを有するKubernetesに優位性があるかもしれません。

ますます注目を集めるコンテナ

さて、今回は注目を集めるコンテナ・オーケストレーターの覇権争いについて簡単に述べさせていただきました。コンテナ関連のトピックはシリコンバレーなどで開催されるイベントで必ずと言って良いほど取り上げられています。10月末にバルセロナで開催されるOpenStack Summitでも注目を集めることは必須でしょう。

コンテナ・テクノロジーにより、アプリケーションの開発と実環境への素早い展開と運用の両立、即ち「DevOps」の実現が現実的になってきました。デジタルビジネスの普及に伴い、ビジネスニーズの多様化とその変化は激しくなってきています。革新的なビジネスを生み出すためにはITシステムには柔軟性とスピード感が求められます。コンテナ・テクノロジーはまさにデジタルビジネス時代に適したソリューションと言えるでしょう。一方で、まだまだ成熟した市場とは言えず、エコシステム全体をウォッチし続け、最適なソリューションを見極める必要があります。Nissho Electronics USAは上記のようなトレンドを把握の上、来るべきデジタルビジネス時代に備え、様々な観点からシリコンバレーで調査を行い、日商エレクトロニクスと連携し、お客様に対し最適な提案をしてまいります。お問い合わせフォームより、どうぞお気軽にお問い合わせください。

この記事を書いた人

この記事を書いた人

Daisuke Yamamoto

2014年5月に渡米しNissho USAのManager of Marketing & Business Developmentに着任。主にCloud, Storageエリアを担当。豊富な営業経験から顧客需要を満たすソリューション発掘を得意とする。

この記事をシェアする

私たちと話しませんか?