クラウド&データセンター完全ガイド:特集

技術コンファレンスでアピールされたOpenStackの進化と可能性

2015年、データセンター/クラウドサービスはこう選ぶ[Part4]

2015年、データセンター/クラウドサービスはこう選ぶ
[Part4] Technology Focus 02
技術コンファレンスでアピールされたOpenStackの進化と可能性

2015年2月3日、東京都内でOpenStack の技術コンファレンス「OpenStack Days Tokyo 2015」が開催された。東京での開催は3回目となるが、毎回、来場者数が倍増し続けているとのことで、OpenStackの勢いを感じさせる。本パートでは、OpenStackファウンデーションの共同創業者でCOO(最高執行責任者)を務めるマーク・コーリア(Mark Collier)氏が基調講演で語ったポイントをお伝えする。

OpenStackの目標と理念

写真1:OpenStackファウンデーション 共同創業者・COOのマーク・コーリア氏

 冒頭、コーリア氏(写真1)は、OpenStackプロジェクトの目標をあらためて確認するところから始めた。「プライベート/パブリック双方のクラウドのニーズに合致する、実装がシンプルで大規模環境にもスケール可能なオープンソースクラウドコンピューティングプラットフォームを創る」と同氏は述べ、このミッションステートメントの中にいくつか重要なキーワードが埋め込まれていると指摘した。

 具体的には、“public and private clouds”の両市場で広範なユーザーに受け入れられる“ubiquitous”、アプリケーション開発をターゲットとしていることを意味する“platform”、その要件としての“simple to implement”、“massively scalable”といったキーワードだ(写真2)。

 続いて同氏は、「Software-Defi ned Economy(SDE)」というコンセプトを紹介した。SDEはITに限定されるものではなく広く社会全般の経済活動すべてがソフトウェアを基盤として成り立つように変わってきたという意味になるようだ。

 OpenStackはこうした状況を踏まえ、汎用的に活用可能なクラウド向けのプラットフォームを準備することで、企業が活用するソフトウェアを効率よく支えることを目指している――大意ではあるが、コーリア氏はこういったメッセージを日本のコンファレンス参加者に投げかけた。

写真2:OpenStack のミッションステートメントに含まれるキーワード

クラウド開発/運用の双方の要望を反映

 歴史を振り返ると、OpenStackは、米航空宇宙局(NASA)とクラウドサービス事業者の米ラックスペースが中心となって2010年7月にプロジェクトが発足した。このときに参加した開発者は25名だったが、現在ではその数は100倍になっている。また、2010年に米オースティンで開催された第1回のOpenStack Summitの参加者数は75名だったが、2014年11月にフランス・パリ開催では4,700名の参加者を集めている。

 コーリア氏の指摘によれば、最初の75名の顔ぶれはその時点でグローバルであり、さまざまな国からの参加者が集まっていたという。日本国内ではOpenStack Daysの名称で開催され、2015年10月には、東京でもOpenStack Summitとして開催される予定になっている(つまり、グローバルイベントの一環という位置づけ)さまざまなオープンソースプロジェクトの中でも、OpenStackの成長ペースは抜きんでたものと言える。

 そのSummitだが、コーリア氏によればOpenStackの開発者とクラウドの運用管理担当者、そしてクラウド向けのアプリケーション開発者が一堂に会して意見のすり合わせを行う場となっているという。

 クラウドサービスの運用管理者は安定したコアと自身のユースケースに対応したオプションモジュールの提供を期待しており、さらに複雑性の解消も望んでいる。一方、クラウドアプリケーションの開発者は一貫性のあるプラットフォームの提供を望んでいる。こうした双方の要望を受け、問題解決に当たるのがOpenStackの開発者というわけだ。コーリア氏はこの日、運用管理者から「安定したコアと個別のユースケースに対応するオプションモジュール」という要望に対応して、OpenStackモジュール構成の変更を計画していることを明らかにした。

複雑化・大規模化した構成を見直しへ

 OpenStackは、複数のモジュールで構成されるモジュラーアーキテクチャを採っており、機能ごとに開発プロジェクトが存在している。コンポーネント名と機能の対応が分かりにくいのが難点だが、ここで簡単に概要を整理しておこう。

 OpenStackの中核をなすのがコンピューティング機能を制御する「NOVA」コアだ。ちなみに、当初のOpenStackはNOVAと分散型オブジェクトストレージである「Swift」の機能を含む形で1万8,000行の小さなコードだったという。さらに、ブロックストレージの「Cinder」、仮想ネットワーク「Neutron」、仮想サーバーイメージ管理サービスの「Glance」、統合認証の「Keystone」といったコンポーネントがNOVAと組み合わされてOpenStackの中核を構成している。

 そして、NOVAコアの周辺には“Integrated Release”として、データプロセッシング「Sahara」、テレメトリーサービス「Ceilometer」、Webダッシュボード「Horizon」、オーケストレーション「Heat」、データベース「Trove」といったプロジェクトが存在する。このIntegrated Releaseは、6カ月ごとに公開されるOpenStackリリースに含まれ、文字どおり統合された形で提供されている。参考までに、2014年10月に“Juno”がリリースされており、次は今年4月に“Kilo”がリリースされる予定となっている。SaharaはJunoリリースの新機能として追加されたものだ。

 そのまた周辺には“Related Projects”(関連プロジェクト)として、DNSサービスの「Designate」、アプリケーションカタログの「Murano」、コンテナ管理APIの「Magnum」、ベアメタルサーバー管理の「Ironic」といったプロジェクトも存在している。

 機能拡大に応じてリリースサイズが巨大化していくというのはあらゆるソフトウェアにほぼ共通するが、運用管理者の視点からはこうした傾向は必ずしも望ましいものではない。大規模になればそれだけ複雑性が増し、バグや不具合に遭遇する可能性も高まる。運用管理者としては安定したソフトウェアを望むものであり、新機能の導入や機能拡張に関しては安定性を損なうリスクを回避したい意向から否定的な反応を示す例が少なくない。

 こうした声を受けてか、コーリア氏は、OpenStackの将来のリリースでは、現在Integrated Releaseに含まれているSahara、Ceilometer、Horizon、Heat、TroveをRelated Project扱いに戻し、コアとなるNOVAとCinder、Neutron、Glance、Keystone、Swiftのみに絞ることを考えていると語った(同氏はこれを“NOVA and Friends”と表現。写真3)。

 このように、複雑化・大規模化をたどっていたOpenStackのモジュール構成をいったん再整理し、コアが縮小する方針に向かったようだ。今後、どのリリースのタイミングでこの構成変更が行われるのかは明確にされなかったが、これまで半年ごとのリリースを繰り返して急速に発展してきたOpenStackがようやく成熟段階に入る転換点になるのかもしれない。

写真3:OpenStack の現状の構成(左)と構成変更案

OpenStackを取り巻く課題

 現在、事実上の標準として各分野のベンダーが揃ってOpenStackのサポートを表明している。OpenStackそのものを自社製ディストリビューションとして商用提供する形態や、ネットワーク機器やストレージなどで、OpenStackから制御可能とするためのドライバの提供を行う形態まで、多様な対応が進んでいる。

 逆に言えば、市場で競合関係にあるベンダー各社がそれぞれの思惑を持ってOpenStackに関与しているため、寄り合い所帯特有の意思決定の遅れや混乱も見受けられる。

Neutronの成熟度不足を解消する動き

 よく指摘される問題点としては、ネットワーク機能であるNeutronの成熟度不足の声が聞かれる。もともとOpenStackではNOVAコアに組み込まれた「Nova-Network」が使われていたが、これがより高機能なネットワーク機能の実装を目指したNeutronに置き換えられたという経緯だ。しかし、当初はNova-Networkに実装されていた機能の一部がNeutronでは未実装だった問題もあったようで、Neutronへの置き換えはスムーズに進行したわけではない。現在でもNeutronはまだ使えないという評価も少なからず存在するようだ。

 こうした状況を反映してか、Neutronに代わる新たな標準ネットワーク機能を別途準備しようという動きが出てきている。例えば、オーバーレイ型ネットワーク仮想化ソフトウェアの「MidoNet」を開発・販売するミドクラは、2014年11月にMidoNetのソースコードをオープンソース化して公開することを発表した。

 この発表ではMidoNetは明確に「OpenStack向けネットワーク仮想化ソフト」と位置づけられており、ミドクラの共同創業者でCEO兼CTOのダン・ミハイ・ドミトリウ(Dan Mihai Dumitriu)氏は、「現在のNeutronコミュニティは、ネットワークベンダーが各社のプロプライエタリ製品を販売するために多数のプラグインがバラバラに存在しており、標準となるべきオープンソースに力を入れることができていない。その結果、Neutronは商用利用に耐えるレベルに至っていない」とコメント。そのうえでOSS化されたMidoNetを、Neutronに代わる商用利用可能な品質を備えた製品として提供する構えだ。

 また、米シスコシステムズを中心にネットワークベンダー各社が推進するオープンソースのSDNプラットフォーム開発プロジェクト「OpenDaylight」がある。ここでは、同プロジェクトの開発成果のOpenDaylightとOpenStackの連携について、「NeutronからOpen Day lightを制御する形もありえるし、Neutronの代わりにOpen Daylightを組み込む形にすることも考えられる」(関係者)という動きもあり、こちらもNeutronを置き換える可能性を念頭に置いた開発が進んでいる様子がうかがえる。

OpenStackディストリビューションが多く登場

 一方で、OpenStackディストリビューションを商用提供する動きは順調に進展している。米レッドハットは「Red Hat Enterprise Linux OpenStack Platform」を製品化し、2015年2月には米ヴイエムウェアも「VMware Integrated OpenStack」を発表している。ただし、ヴイエムウェアの取り組みはOpenStackを単独で提供するのではなく、同社の仮想化プラットフォーム「VMware vSphere Enterprise Plus」を利用するユーザー向けに無償提供する形態をとっている。同社によれば、特にクラウドアプリケーションの開発者からはプラットフォームとしてOpenStack APIを使いたいという声が強いことに対応したものだという。

 OpenStackはIT業界からの広範な支持を得て短期間に急速な成長を遂げ、事実上の標準の地位を確立した。だが、多数の企業が参加しての開発作業体制において、合意形成に時間を要するのはやむをえないところだ。とはいえ、十分に成熟して安心して本番環境で活用できるという段階に至らないと広範な層からの支持は得られず、開発サイドだけの盛り上がりから脱却できない可能性もある。そのため、開発コミュニティの舵取りには今後も注目していきたい。

(データセンター完全ガイド2015年春号)