比較的最近まで、Cloud Foundry財団はCloud Foundryが全てだった。Cloud Foundryとは、今ではFortune 500企業の大部分で利用されているオープンソースのPaaS(サービスとしてのプラットフォーム)プロジェクトである。このプロジェクトは、Cloud Foundry Application Runtimeという名のものだ。1年前、財団はCloud Foundry Container Runtimeというものも発表した。これは企業たちが、Application Platformと自分たちのコンテナベースのアプリケーションを同時に運用することを助けるための仕掛けだ。さらに、Cloud Foundryはクラウドアプリケーションの構築、展開、および管理のためのツールであるBOSHを支えてきた長い歴史を持っている。
1年前のContainer Runtimeの追加は、組織のミッションを少々混乱させるもののように見えたが、そうした混乱も今は落ち着いて、その意図はより明確になり始めている。Cloud FoundryのCTOであるChip Childnerが語ったように、企業がContainer Runtimeを利用する最大の目的は、それぞれのベンダーから調達したパッケージ済のアプリケーションを実行するためだ。「Container RuntimeやあらゆるKubernetesによるデプロイメントを、App Runtimeと並列に、あるいは組合せて利用することが、独立ソフトウェアベンダーからパッケージソフトウェアを導入する際に多く行われていることです」と彼は私に言った。「コンテナは新しいCD-ROMなのです、利用者はそれを優れたオーケストレーションプラットフォームに載せたいだけです」。
Application RuntimeはKubernetesが登場するよりも前に始まっていたものなので、Cloud FoundryプロジェクトはDiegoという独自のコンテナサービスを構築していた。
本日(米国時間10月9日)、Cloud Foundry財団は、両者の統合を新しいレベルに進めるために、2つの新しいKubernetes関連プロジェクトを立ち上げた。1つ目はProject Eiriniである。これはIBMによって立ち上げられ、現在はSuseとSAPによっても作業が行われている。このプロジェクトは開発に長い時間を費やしているが、コミュニティが期待を続けているものである。これは基本的に、開発者たちがApplication Runtimeのために書かれたアプリケーションをデプロイする際に、既存のDiegoオーケストレイターとKubernetesの間で選択ができるようにするものだ。それはCloud Foundryにとって大きな変化だ。
「Eiriniが行うことは、Cloud Foundry Application Runtime(Cloud Foundryブランドが緊密に結びついているコアPaaS体験)に対して、それを支えるDiegoスケジューラーを、代替可能な場合にはKubernetesで置き換えるというオプションを与えることなのです」とChildersは説明する。彼は、Diegoコンテナ管理システムの方がKubernetesよりも適しているユースケースがまだあると付け加えた。そのうちの1つは、Windowsに対するサポートが優れていることだ。Cloud Foundryを使用する企業にとってはかなり重要な点だ。Childersはまた、Kubernetesのマルチテナントへの保証は、Diegoのものよりも若干厳密さが足りないとも指摘した。
2番目の新しいプロジェクトは、最初Suseによって開発されたContainerizedCFである。その名前が示唆するように、ContainerizedCFは基本的に、Cloud Foundry Application Runtimeのコアをパッケージ化し、BOSHデプロイメントツールの助けを借りてKubernetesクラスターにデプロイすることを可能にする。これは、Suseが既にCloud Foundryディストリビューションを出荷するために使用しているものとほとんど同じものだ。
明らかに近い将来、Kubernetesは、Cloud Foundry PaaSサービスがその上に載り、開発者たちがそのために書いたアプリケーションをデプロイするために使うものの、一部を占めるようになる。一見しただけでは、このKubernetesへの集中は、Cloud Foundry自身を無駄なものにしてしまうように思えるかもしれない。しかしそのコア体験としてのCloud Foundry Application Runtimeは、インフラストラクチャだけではなく、アプリケーション開発の全ライフサイクルを管理することを目指した開発者体験と方法論であることは覚えておく価値があるだろう。Kubernetesを使用してインフラストラクチャの管理を支援することができれば、Cloud Foundryプロジェクトは最も得意とする部分に集中することができるのだ。
[原文へ]
(翻訳:sako)