Windows AzureのJavaサポートについては、「WindowsAzure4j」としてAzureのストレージをJavaから利用するためのSDKを提供していました(詳細は、連載第14回「AzureのストレージをJavaで扱えるWindowsAzure4j」をご覧ください)。
WindowsAzure4jでは、あくまでAzureのストレージ操作を行うAPIの提供でしたが、現在では、Tomcatで動作するJavaのWebアプリケーション自体をWindows Azure上で動作させる下記のプロダクトがリリースされています。
Windows Azureでは、アプリケーションのデプロイは、Windows Azureのデプロイ用パッケージファイルにより行いますが、CUIベースで、JDK/TomcatをWindows Azureにデプロイして動作させるパッケージも作成できるようになりました。
■Windows Azure Starter Kit for Java
初心者が簡単にWindows Azure上でJavaのWebアプリケーションを動作できるツールで、Eclipseプラグインとして提供されています。Eclipse上で開発したWebアプリケーションをTomcat/JDKを含めてパッケージ化し、Windows Azureにデプロイできます。
Tomcat Solution Acceleratorに比べGUIで直感的にパッケージを作成できるようになっています。
■TomcatやJDKのバージョンは自由に選択
上記2つのツールは、あくまでJDKやTomcatをWindows Azureにデプロイするパッケージを作成するためのツールなので、TomcatやJDKのバージョンは自由に選択できます。
TomcatやJDKごとパッケージング化するという意味では、今回紹介したPaaSの中で最もIaaSに近い存在といえるかもしれません。
また、他のPaaSのようにオートスケールの仕組みはありませんが、Windows AzureのAPIを利用し、オートスケールするロジックを自前で実装可能です。
AWS Toolkit for Eclipseにより、EC2上で仮想マシンの起動とロードバランサ、Tomcatの設定、アプリケーションのデプロイを行う疑似的なPaaSの機能は提供されていました(連載第12回「AWS ToolkitでTomcatクラスタをAmazon EC2上に楽々構築」を参照)。
その後、本格的なPaaSプラットフォームである「Elastic Beanstalk」が提供され、PaaSプロバイダの仲間入りを果たしました。Beanstalkにより、EclipseやWebコンソールからのアプリケーションの簡単なデプロイやオートスケールを実現します。
Elastic Beanstalkの詳細については、連載第23回「AWSの自由自在なPaaS『Elastic Beanstalk』とは」などをご覧ください。
「Cloud Foundry」は、ヴイエムウェアが開発、公開したPaaSです。Javaのアプリケーションを実行できる他、Node.js(サーバサイドJavaScript)やRubyのアプリケーションも実行できます。
Cloud Foundryは、他のPaaSと異なり、PaaS基盤自体を公開し、次の3つのサービス/プロジェクトを公開しています。
先日、Micro Cloud Foundryのβ版リリースの発表が話題になりましたが(参照:
VMware、ノートPCのデスクトップでPaaSを利用できる「Micro Cloud Foundry」を発表)、ここでは、サービスで利用できるCloudFoundry.comに主眼をおいて特徴を紹介します。
■複数の言語/フレームワークに対応したPaaS基盤
Spring(Java)、Sinatra/Rails(Ruby)、Node.js(サーバサイドJavaScript)などのフレームワーク・言語をサポートします。Node.jsやSinatraをサポートしているところに先進性を感じます。
■複数のデータベースのサポート
データベースにMySQL、MongoDB、Redisをサポートします。RDBMだけでなく、KVSとして利用できるMongoDBやRedisをサポートします。なおヴイエムウェアは、Redisの主任プログラマであるサルバトール・サンフィリポ氏を雇用しています。
■CUIの提供
コマンドラインからPaaS上にアプリケーションを操作するvmcが提供されています。vmcはデプロイするアプリケーションの言語・フレームワークを判定し適切にデプロイしてくれます。
■GUIの提供
Eclipse上で動作する「Cloud Foundry Integration」プラグインが提供されています。Cloud Foundry上のアプリケーション・サーバをEclipseのWebアプリケーション開発環境であるWTPのサーバビューから操作できます。
また、Cloud FondryのPaaSの機能ではありませんが、Cloud Foundryは複数のIaaSのサポートを目指しています。
次ページでは、残りの2つを紹介し、最後にJavaのPaaSクラウドの傾向を分析します。
Copyright © ITmedia, Inc. All Rights Reserved.