先週発表したソフトウェアのアップグレードによってMicrosoftは,プラットフォーム・アズ・ア・サービスを提供する主要他社との差をほぼ埋めることに成功した。価格の改定,SSLの無償サポート,グローバルDNSのロードバランシング,Javaサポートの導入などにより,Azure Webサイトは,Heroku, Google App Engie, OpenShift Online, Cloud Bees, Engine Yardにとって手強い競合相手となったようだ。
MicrosoftバイスプレジデントのScott Guthrie氏が,Microsoft Azueプラットフォームの一連のアップデートについて先日書いたブログ記事の中に,Azure WebサイトPaaSサービスに関連する項目が4つあった。最初はAzure Webサイトの "標準レベル(Standard Tier)" – もっとも高額だが,webサイトを無制限にデプロイ可能 – で,SNIベースのSSL証明書5つとIPベースのSSL証明書1つが無償で提供されるようになったことだ。その他のWebサイトレベルを利用しているユーザ,あるいは標準レベルの無償分を使い尽くしたユーザに対する費用は,それぞれの証明書が1ヶ月9ドルおよび39ドルになる。レベルに関しては,新たに"基本レベル(Basic Tier)"が追加された。自動スケール,ステージングされたアプリケーション,バックグラウンドスケジューラ利用などの機能が省略された代わりに,料金が標準レベルに比べて25パーセント低く設定されている。さらにAzure Webサイトで運用されるサイトを対象として,ワイルドカードDNSマッピングおよびSSL証明書のサポートも追加された。この機能はAzureプラットフォーム上で独自にSaaSアプリケーションを運用する上で有効だろう,とGuthrie氏は指摘している。
Azure Webサイトのもうひとつのアップデートは,Azure Traffic Manager関連のサポートが追加されたことだ。このサービスでは,地理的条件やエンドポイントの有用性,あるいは単純なラウンドロビンのアルゴリズムに基づいて,他のAzureエンドポイントへDNS要求をルートする。この変更により,Azure Traffic managerのプロファイルの有効なサービスエンドポイントのタイプとして"Webサイト"を追加できるようになった。このサービスはグローバルなロードバランサのような振る舞いをするので,開発者は自身のWebアプリケーションを世界中のデータセンタにデプロイして,最適なホストへと効果的にルーティングすることが可能になる。
そして最後に,Azure WebサイトにJavaアプリケーションがデプロイできるようになった。 デフォルトでサポートされるJavaのバージョンは1.7.0_51で,JavaコンテナにはTomcat 7.0.5.0かJetty 9.1.0のいずれかを選択することができる。このアップデートを特に取り上げたブログ記事では,MicrosoftのプログラムマネージャであるChris Compy氏が,サービスの拡張性と制限に関して説明している。
ユーザはJavaベースのアプリケーションだけでなく,ポータルUIやWebアプリケーションギャラリで提供されるもの以外の,自らが選択したバージョンのJavaをアップロードすることもできます。Azure Webサイトで用意されたものは使用せず,Java 6とTomcat 6をアップロードするような運用も可能です。
エンタープライズクラスのJavaアプリケーションには大量のメモリを必要とするものが多いので,Java 1.7.0_51の64ビット版を実行することも可能です。現時点ではweb.configファイルの設定を通じて64ビットランタイムを選択しなければならないのですが,将来的にはUIから64ビット版を選択可能にしたいと思っています。
…
少なくとも初期状態では,Azure Webサイトで動作するJavaアプリケーションは,HTTPトラフィックの受信待機のみが可能です。つまり現状では,JMXあるいはJMSのメッセージング,JDWPあるいはJDIなどのリモートデバッグを行うことはできません。
またJavaアプリケーションはサービスとしてではなく,アプリケーションとして動作しなければならない点にも注意が必要です。
WebアプリケーションのPaaSサービス提供で先行していたプロバイダたちに対して,Azure Webサイトはどの程度追いつくことができたのだろうか。次の表はInfoQが,Azure Webサイトの装備している機能を,Heroku, Google App Engine(GAE), OpenShift Online(OS), CloudBees(CB), Engine Yard(EY)という5つのPaaSプラットフォームと比較したものだ。
Azure | Heroku | GAE | OS | CB | EY | ||
プラットフォーム | Java | x | x | x | x | x | x |
.NET | x | ||||||
Ruby | x | x | x | x | |||
Node | x | x | x | x | x | ||
PHP | x | x | x | x | x | ||
Python | x | x | x | x | |||
Perl | x | ||||||
GO | x | ||||||
アプリケーションスケーリングのサポート | x | x | x | x | x | x | |
SSLサポート | x | x | x | x | x | x | |
ロードバランシング - 単一リージョン | x | x | x | x | x | x | |
ロードバランシング - 複数リージョン | x | ||||||
ソースコントロールからのデプロイ | x | x | x | x | x | x | |
継続的インテグレーション | x | x | x | x | x | ||
リリース/バージョン管理 | x | x | x | x | x | x | |
OS仮想化コンテナ | x | ||||||
独自のバックグラウンドジョブ | x | x | x | x | x | x | |
サービス監視 | x | x | x | x | x | x | |
アドオンとサービスのエコシステム | x | x | x | x | x | x |
今回のAzureの更新は,クラウドWebアプリケーションプロバイダとしてトップレベルに到達しようという,Microsoftのアグレッシブな姿勢を示すものだ。PaaS市場自体にはパブリックからプライベートまで,さまざまな規模のプロバイダが混在し,アプリケーションホスティングの本質を洗練しながら発展を続けている。InfoQの以前の記事"PaaSに何が起きているのか?"では,PaaSの普及の遅れに加えて,PaaSの定義自体の変化についても注目した。筆者が先日行ったInfoQの座談会では4人のクラウド専門家が集まって,Google App EngineやHerokuのようなサービスが登場した黎明期からの変化と,PaaSの今後について意見を交わしている。