ツールボックス

Windows Azure 開発のリソース

Terrence Dorsey

MSDN マガジンでも紹介されていますが、Windows Azure Platform とはマイクロソフトが提供するクラウド コンピューティング リソースのスタックで、Visual Studio や Windows Azure AppFabric によるコーディング、テスト、および配置から、Windows Azure そのものや SQL Azure ストレージ サービスに至るまで、広範囲にわたります。今月は、Windows Azure 向けにアプリケーションを作成するのに役立つ、最新のツールと情報をまとめて紹介します。

はじめに

Windows Azure Platform に向けた開発の準備が整ったら、まず、MSDN の Windows Azure Platform デベロッパー センター (msdn.microsoft.com/windowsazure) にアクセスします。ここでは、このプラットフォーム全体に関する情報が、ドキュメント、ツール、サポート フォーラム、コミュニティ ブログの投稿へのリンクと共に提供されています。

次に、Windows Azure ポータル (microsoft.com/japan/windowsazure/) に進み、アカウントを設定します。そうすると、Windows Azure、SQL Azure for storage、および Windows Azure AppFabric にアクセスできるようになります (図 1 参照)。登録には、Windows Live ID が必要です。まだ Windows Live ID をお持ちでない方には、サインイン ページへのリンクが用意されています。

image: Running a Service on Windows Azure

図 1 Windows Azure でのサービスの実行

このコラムの執筆時点では、マイクロソフトから導入特別プランが提供されています。このプランでは、Windows Azure Platform の多くの機能を無償で利用できます。詳細については、microsoft.com/japan/windowsazure/offers/ を参照してください。

開発者向けツール

コードの作成に着手するには、開発環境を設定する必要があります。メモ帳とインターネット接続を使用しても Windows Azure アプリケーションを構築できますが、この作業向けに最適化されたツールを使用すると、生産性が向上し、快適に作業することができます。

Visual Studio 2010 をお持ちでなけば、Visual Web Developer 2010 Express (asp.net/vwd、英語) を使用して、Windows Azure 向けに最適化された開発環境の優れた機能 (の大半) を利用できます。Visual Web Developer 2010 Express は、Web Platform Installer (microsoft.com/japan/msdn/vstudio/express) を使用してインストールします。Web Platform Installer を実行すると、SQL Server 2008 Express Edition、IIS、および Silverlight と ASP.NET 開発の拡張機能もインストールできます。

既に Visual Studio をお持ちの方は、Windows Azure Tools for Microsoft Visual Studio (microsoft.com/downloads/details.aspx?FamilyID=2274a0a8-5d37-4eac-b50a-e197dc340f6f&displayLang=ja) をダウンロードしてインストールするだけです。これらのツールは、Visual Studio 2008 と Visual Studio 2010 の両方をサポートします。また、Windows Azure 開発専用のテンプレートとツールが含まれます。Windows Azure Tools には、Windows Azure SDK が含まれます。

SQL Server からのデータ移行

既存の Web アプリケーションを Windows Azure に移行する場合、アプリケーションのデータを移行する手段も必要です。データ ストアとして SQL Server 2005 または SQL Server 2008 を利用しているアプリケーションの場合、SQL Azure Migration Wizard (sqlazuremw.codeplex.com、英語) を使用するとこの移行作業が実に容易になります (図 2 参照)。このウィザードでは実際のデータが転送されるだけでなく、互換性の問題がアプリケーションで発生する前に特定して修正することもできます。

image: SQL Azure Migration Wizard

図 2 SQL Azure Migration Wizard

SQL Server Migration Wizard の使用方法に関する情報、および既存のアプリケーションを Windows Azure に移行する際に役立つその他の多くの情報については、MSDN マガジン 2010 年 8 月号の「アプリケーションをクラウドに移行するためのヒント」(msdn.microsoft.com/magazine/ff872379) を参照してください。

セキュリティのベスト プラクティス

広範に使用される可能性のあるアプリケーションの場合、セキュリティについて考慮する必要があります。クラウド アプリケーションも考慮が必要なアプリケーションの 1 つです。マイクロソフトの patterns & practices チームは、Windows Azure Platform で分散アプリケーションを構築するためのベスト プラクティスを特定するために、2009 年に Windows Azure Security Guidance プロジェクトを開始しました。チームの調査結果は手軽な PDF にまとめられ、チェックリスト、脅威とその対策方法、および認証と安全な通信を実装するための詳細なガイダンスが盛り込まれています (bit.ly/aHQseJ、英語)。クラウド向けのソフトウェアを構築するすべての開発者にとってこの PDF は必読書です。

Windows Azure での PHP 開発

PHP は、ASP の時代からずっと Web アプリケーション開発の要でした。マイクロソフトは、その既存アプリケーションの広大な基盤を念頭に置き、PHP のサポートを Windows Azure Platform に移植する多数のツールを作成しています。これらのツールによって、以前の PHP アプリケーションを Windows Azure にスムーズに移行できるだけでなく、経験豊富な PHP 開発者が自身の知識をマイクロソフトのクラウドで活用することも可能です。

PHP 開発者向けの 4 つのツールを以下に紹介します。

  • Windows Azure Companion: Windows Azure に PHP ランタイム、拡張機能、およびアプリケーションをインストールして構成できます。

  • Windows Azure Tools for Eclipse for PHP: Windows Azure 向けのアプリケーションを開発するためのオープン ソース IDE を最適化する Eclipse プラグインです (図 3 参照)。

    image: Windows Azure Tools for Eclipse
    図 3 Windows Azure Tools for Eclipse

  • Windows Azure Command-Line Tools for PHP: Windows Azure で PHP アプリケーションをパッケージ化および配置するためのシンプルなインターフェイスを提供します。

  • Windows Azure SDK for PHP: 任意の PHP アプリケーションから Windows Azure データ サービスを利用するための API を提供します。

ツールおよびダウンロード リンクの詳細については、Windows Azure チーム ブログ (bit.ly/ajMt9g、英語) を参照してください。

Windows Azure Toolkit for Facebook

Facebook 対応アプリケーションを構築することは、数千万の新たなユーザーを確実に獲得する方法です。アプリケーションの人気が高まれば、需要の拡大に応じて容易に拡張できるプラットフォームが Windows Azure によって提供されます。Windows Azure Toolkit for Facebook (azuretoolkit.codeplex.com、英語) を使用すると、他の開発者に先駆けて拡張性の高い独自の Facebook アプリケーションを構築できます。とは言え、次の FarmVille を生み出せるかどうかは、あなたしだいです。

Windows Azure SDK for Java

Windows Azure 用のネイティブ ツールを活用できるのは、PHP 開発者だけではありません。Java 開発者も好みの言語で作業し、Windows Azure のサービスとストレージにシームレスにアクセスできるようになります。Windows Azure SDK for Java (windowsazure4j.org、英語) には、Windows Azure Table Storage、Blobs、および Queues で作成、読み取り、更新、および削除操作を行うためのサポートが含まれています。HTTP 転送、認証、RESTful 通信、エラー管理、およびログ記録のためのクラスも入手できます。


システムの設定

以下に、開発環境の設定プロセスおよび最初のクラウド アプリケーションの起動プロセスについて説明する Windows Azure 開発者コミュニティに投稿された役立つブログ記事をいくつか紹介します。

Mahesh Mitkari
Configuring a Windows Azure Development Machine (Windows Azure 開発コンピューターを構成する、英語)
blog.cognitioninfotech.com/2009/08/configuring-windows-azure-development.html

Jeff Widmer
Getting Started with Windows Azure: Part 1 - Setting up Your Development Environment (Windows Azure の概要: 第 1 部 - 開発環境を設定する、英語)
weblogs.asp.net/jeffwids/archive/2010/03/02/getting-started-with-windows-azure-part-1-setting-up-your-development-environment.aspx

David Sayed
Hosting Videos on Windows Azure (Windows Azure でビデオをホストする、英語)
blogs.msdn.com/b/david_sayed/archive/2010/01/07/hosting-videos-on-windows-azure.aspx

Josh Holmes
Easy Setup for PHP on Azure Development (Azure 開発で PHP を簡単に設定する、英語)
joshholmes.com/blog/2010/04/13/easy-setup-for-php-on-azure-development/

Visual Studio Magazine
Visual Studio 2010 でのクラウド開発 (英語)
visualstudiomagazine.com/articles/2010/04/01/using-visual-studio-2010.aspx

Terrence Dorsey は、MSDN マガジンのテクニカル エディターです。terrencedorsey.com (英語) で公開されている彼のブログを読んだり、Twitter (@tpdorsey、英語) で彼をフォローしたりすることができます。