-
Notifications
You must be signed in to change notification settings - Fork 0
OpenStackの未来予想図
本稿は「OpenStack Advent Calendar 2016」[1]の 12/10 分です。
当初「クラウド業界のLinux」と題して、OpenStack と Linux がそれぞれ辿った過去の類似性を書こうと思ってたのですが、以前書いたネタ[2]と大部分が被る事が分かったので、未来の話を書くことにします。
OpenStack は早い時期から「クラウド業界の Linux」と言われてきました[3]。であれば、OpenStack の今後も Linux とある程度似ているはずです。Linux 業界動向を元に、今後の OpenStack 業界を占ってみましょう。
Linux 業界では1990年台末〜2000年台にかけて「Linux Expo」や「Linux Conference」といったビッグイベントが年数回世界中で開催されていました。日本でも数回開催された事があります。しかし、今も継続されているのは、開発者会議としての「Linux Conference」です。一般向けイベントだった「Linux Expo」は開催されなくなりました。
元々、この手の一般向けイベントは、「ほーら、これだけ盛り上がっているよ。このブームに乗らなきゃ」という一種の宣伝をハイプサイクルの黎明期〜流行期に行うもので、早ければ幻滅期辺りで開催されなくなります。どれだけ残っても安定期にはまず開かれません。一般向けイベントは大規模でなければ意味がなく、それだけに多数のスポンサーを必要とします。回復期〜安定期でコモディティ化したものにはスポンサーがなかなか付きません。宣伝する必要が無いからです。
OpenStack ではどうでしょうか。「OpenStack Summit」は来年秋のシドニーまでは予定されていますが、その後の予定はまだ一般公開されていません。スポンサーが付く限りは開催するかも知れませんが、従来の各種ソフトウェアの一般向けイベントの終焉が示すように、「OpenStack Summit」もいつかは必ず開催されなくなります。行くなら今のうちです。
もちろん、ソフトウェアの開発は続くので、開発者向けイベントは継続します。「Linux Conference」は未だに健在で、今年も7月に東京で開催されました。OpenStack では開発者向け会議が「Project Teams Gathering (PTG)」として「OpenStack Summit」から独立しました。PTG はその時々の最新クラウド技術を取り込みながら、今後も長く継続する事でしょう。
日本では 2000 年ぐらいに一般コンシューマの Linux ブームがおき、そしてすぐ去っていきました。丁度 Windows ME/2000 登場辺りの混乱の時期だったので、中古 PC でも無料で軽快に使える Linux が脚光を浴びたのでしょう。
この時問題になったものがアプリケーションとミドルウェアです。Linux では Mozilla や各種メーラー等、所謂インターネット利用にはあまり不自由しなかったものの、以下のアプリケーションやミドルウェアが OSS で無かったか、Windows のものに比べて大きく見劣りしていました。
- オフィススイート
- 年賀状作成ソフト
- 印刷フレームワーク+一般向けプリンタ用デバイスドライバ
- かな漢字変換
今では LibreOffice、LinuxPrinting、Mozc など実用に耐えうるアプリケーションやミドルウェアが揃っています。もしこれらが当時にあれば、現在の PC のソフトウェア事情は大きく異なっていたかも知れません。
OpenStack はどうでしょうか。IaaS 基盤としての基本的な機能は成熟しつつあり、各国でパブリッククラウドベンダーがサービスを展開しています。しかし、アプリケーションの利用者から見た時に機能は充分でしょうか?
OpenStack の Project Navigator[4]で見ると状況が分かります。仮に実用域を「MATURITY≧5」と定義すれば、 以下のサービスは未熟となります。
- SaaS 機能:Murano
- PaaS 機能:Sahara, Trove, Zaqar, Designate
- 運用監視機能:Ceilometer
- その他:Barbican, Magnum, Congress
Senlin や Monasca が無いので何とも言えませんが、OpenStack 上のテナントのアプリケーション自動運用に必要な監視機能・自動復旧機能(オートスケーラ含む)が未熟だとしたら、一般の利用者から見て使いやすい基盤とは言えません。もちろん、Scalr や Zabbix 等、テナント側の工夫で補える部分でもありますが、「特別に工夫しなくても普通にアプリケーションの自動運用ができる」事は大事です。テナントユーザが夜安心して眠れないような IaaS はやはり受け入れられないでしょう。こういった未成熟な機能群の開発は OpenStack 開発コミュニティの急務であると個人的には考えています。
実は、今現在 Linux は販売数ベースで OS シェア No.1 です[5]。と言っても、実際にはフリー UNIX としてではなく、スマートフォンやタブレット用の Android としてですが。 では、なぜ Android が成功したのでしょうか。個人的には以下の理由によるものと考えています。
- アプライアンスだった(スマートフォンにプリインストール)
- 登場当時からOS環境が実用的なレベルに達していた
- アプリケーションが開発しやすかった(有償アプリ含む)
特にアプリケーションの開発しやすさは重要です。ユーザが使いたいのはアプリケーションであり、OSそのものではありません。 Android はアプリケーション向けのライブラリやフレームワークが充実・完成しているだけでなく、それらが基本的に Apache ライセンスで提供されている事が重要です。以前 「Linux ザウルス」というモバイル端末がありましたが、GUI フレームワークに当時 GNU GPL/商用のデュアルライセンスだった Qt を採用した為に、商用アプリケーション開発ではネックとなりました。商用アプリケーションが OS 標準の GUI フレームワークを使うのに Qt の商用ライセンスが必要だったのです。Android ではこうした問題がありません。
OpenStackでも以前、Morphlabs が mCloud という OpenStack アプライアンスを提供していました[6]。発想自体は良かったと思うのですが、登場が早すぎたのかも知れません。また一種のベンダロックインでもあるので、これを嫌う昨今の企業の導入ではハードルだった事でしょう。
これから OpenStack が目指すアプライアンスの形は何でしょうか?個人的には、ここ1年程で急激に普及しつつある OpenStack コンポーネントの Docker コンテナ化だと考えています。導入が楽なだけでなく、Kubernetes と組み合わせれば冗長化、スケーリング、アップグレード等の面で運用が楽になるでしょう。
Linux では、先に草の根コミュニティ(ユーザ会等)が成立して普及活動をしていく一方で、数々のベンチャー企業が Linux ディストリビューションのビジネス化に挑戦しました。 やがてこれらの企業は淘汰されて一部企業による Linux のコモディティ化が進む一方、草の根コミュニティは役目を終えて解散していきました。
OpenStack も同様です。日本では OpenStack が登場した年に日本 OpenStack ユーザ会が設立され、OpenStack の普及に務めてきました。一方で、比較的早い時期から数々のベンチャー起業が OpenStack ディストリビューションのビジネス化に挑戦し、淘汰されてきました。最終的に残る商用 OpenStack ディストリビューターは世界的に見てもおそらく数社でしょう。また、コモディティ化が進んだ OpenStack は最早普及活動も必要なくなり、ユーザ会もいつかはその役目を終えて解散するかも知れません。
きっとその頃には、多くの SE が OpenStack を導入・運用でき、多くのプログラマが OpenStack を使いこなしてアプリケーションを運用している事でしょう。 そうしたら、私も何か新しいジャンルの OSS をマスターして普及に努めたいと思います。
- [1] http://www.adventar.org/calendars/1739
- [2] https://github.com/yosshy/wiki/wiki/OpenStack-%E3%81%8C%E6%84%9B%E3%81%95%E3%82%8C%E3%82%8B%E7%90%86%E7%94%B1
- [3] https://yourstory.com/2012/01/whats-in-store-for-the-cloud-in-2012/
- [4] https://www.openstack.org/software/project-navigator
- [5] https://techpinions.com/the-end-of-standardized-platforms/43781
- [6] https://www.openstack.org/foundation/companies/profile/morphlabs