2009-08-23

_ クラウド技術のオープンソース実装

Cloud computingという新しいbuzzwordを誰かが思いついて、しばらく時間が経ちました。 どの辺がいかにもbuzzwordなのかというと、誰もクラウドって何?というのを説明できなかったところを見ると明らかです。 しかし、buzzwordにもbuzzwordなりの効力というものがありまして、 マーケットはそれに合わせて動くわけです。 その結果、需要も動いたり動かなかったりして、それなりに技術の進展にも影響を与えます。

そんなこんなで、後付けで意味が定義されたクラウドコンピューティングなんですが、 英語版WikipediaのCloud computing によると、Gartnerは次のように定義したそうです。

  • サービスに基づいている。
  • インフラを必要に応じて増強したり削減したりできる。
  • 規模の経済を築くため、共有インフラを使う。
  • 使用量に課金される。
  • インターネット技術が使われている。

やっぱり何だかよくわかりませんが、クラウドは次の三つに大別できる(あるいは、組み合わせる)そうです。

  • IaaS(Infrastructure as a Service)、あるいは、HaaS(Hardware as a Service)。要するに、マシン環境が与えられるもの。
  • PaaS(Platform as a Service)。要するに、アプリケーションを載せる環境が与えられるもの。
  • SaaS(Software as a Service)。要するに、アプリケーションそのものが与えられるもの。

何だ、結局今までもあったものを言葉変えただけかよ!って思うわけですが、実際的に今注目されているのは、IaaSとPaaSです。 SaaSは、マッシュアップという別のbuzzwordに引きずられて、 それなりには流行ったんですが、アプリケーションをごっそり変えることはできないんで、開発者にはあんまり面白くないので、当然といえば当然です。

さて、現在特に有名なのは、IaaSではAmazon EC2やSun Cloud、PaaSではGoogle App EngineやAzureあたりだと思います。 しかし、 Wikipediaにも書いているように、 クラウドには危険性や問題点もいろいろあります。 特に、データのコントロールを失うことは、企業にとって、かなり大きな賭けと言ってよいでしょう。

そうした問題に対処するため、やろうと思えば他のところに引っ越す、いざとなれば自分のところでもできる、という自由度が求められます。 そのため、クラウドコンピューティングを実現するためのソフトウェアにも、オープンソースなものが段々増えてきました。 以下、私が知っているものを列挙しておきます。

  • Eucalyptus。Ubuntuで知られるCanonicalも一枚噛んでいることで、それなりに有名になっているようです。Eucalyptusは、Amazon EC2とある程度の互換性を保つようにしてます。これはIaaSタイプです。
  • GroundOS。まだ正式リリースはされてませんが、PaaSタイプで、デスクトップをWeb上で実現しています。
  • Enomalism。基本的には、仮想マシンの管理が中心機能のようです。IaaSタイプです。
  • eyeos。GroundOSと似た感じのノリです。PaaSタイプです。
  • Open Cirrus。やたらとビッグネームが集まっているプロジェクトですが、アカデミックな感じで、いまいち何をしたいと思っているのかはよくわかりません。
  • abiCloud。IaaS + PaaS、という感じでしょうか。ぱっと見ではあんまりよくわかりませんが、仮想マシンの管理に加えて、分散コンピューティング用のミドルウェアを提供して、やりやすくしようという考えのようです。
  • NiftyName。うちの会社のパートナーでもあるLost Oasisの連中が中心になって開発しているもの。他のプロジェクトが頻繁にPHPを使っているのとは対照的に、こっちはPythonです。個人的にはこれ重要です。IaaSです。
  • appscale。これだけ、かなり違います。どう違うかというと、Google App EngineのAPIを他のインフラ上で再現させようというのが目的です。ある種のPaaSと言えなくもありません。Amazon EC2とかEucalyptusの上でも動作するそうです。

他にもあるんだと思うのですが、私の知識はこの程度です。 それ以外の情報があれば教えてください。

[]

トップ «前の日記(2009-07-31) 最新