リリース:AzureへのPHPアプリ簡単インストーラーWindows Azure Companion CTP版

2010-11-23

Windows Azure Companion: PHP and WordPress in Azure」にて、Webプラットフォーム インストーラー(Web PI)のクラウド版とも言えるWindows Azure CompanionのCTP版のリリースが紹介されていました。

 

Windows Azure Companionとは

 

Windows Azure Companionとは、自分のAzureアカウントにインストールすることで、Azure上でwebサイトの準備を行えるお手軽インストーラーです。イメージ的には、Web PIのAzure版です。

Windows Azure Companionを使用することで、PHPを導入し、OSSのWordPress、Drupal、JoomlaなどをWindows Azure Companionを動作させているAzureインスタンス(Worker Role)と同じ場所に直接インストールできます。

すでにPHP、MYSQL、Javaなどマイクロソフト製では無いフレームワークやWindows Azreアプリケーションを動作させていたり、ユーザを助けるためのPHP/MySQLTomcatmemcachedなどのアクセラレーターが提供されています。

Windows Azure Companionは、一歩先に進み、Azure上でアプリケーションやフレームワークを管理したり、動作させる為の管理作業をシングルポイントで提供します。現時点では、PHPベースの有名なWordPressやDrupalのようなCMSライクなアプリケーションに集中していますが、将来的には、その他のプラットフォームにも対応していきます。

 

Windows Azure Companionの入手

 

MSDN Code Galleryで提供されており、

Windows Azure Companion」からダウンロードできます。

 

現在、5種類のダウンロードオプションがあります。

最初の4つは、簡単にWindows Azureアカウントにアップロードできるように、Worker Roleインスタンスのオプション種類ごとに提供されています。Worker Roleインスタンスが、Small、Medium、Large、ExtraLargeの4種類提供されていますので、それに合わせてWindows Azure Companionが提供されいます。

Worker RoleのインスタンスSizeと同じ、SizeのWindows Azure Companionをデプロイします。

 

Windows Azure Companionのインストール

 

1. ここでは、Small SizeのWorker Roleにデプロイしたいので、WindowsAzureCompanion-SmallVM-Sep2010CTP.zipをダウンロードし、解凍します。3つのファイルが含まれています。

20101006023937

.cspkgファイルは、コンパイルされたアプリケーションコードを含んでいます。
.cscfgファイルは、XML文のサービス設定ファイルです。

2. Windows Azureにデプロイする前に、サービス設定ファイル(ServiceConfiguration.cscfg)を何か所か変更します。

24~26行目で、Azureストレージアカウントを設定します。

<!– Windows Azure Storage Account Details. –>
<Setting name="WindowsAzureStorageAccountName" value="*****" />
<Setting name="WindowsAzureStorageAccountKey" value="*****" />

http://windows.azre.comにアクセスし、ストレージにアクセスします。
「WindowsAzureStorageAccountName」の「value」に②の値を設定します。
「WindowsAzureStorageAccountKey」の「value」に③の値を設定します。

20101006030904

28~31行目で、Windows Azure Companionの管理者アカウントを設定します。

<!– Admin user name, password and e-mail. Please user strong username and password –>
<Setting name="AdminUserName" value="*****" />
<Setting name="AdminPassword" value="*****" />
<Setting name="AdminEmail" value="*****@*****.***" />

33~34行目でWindows Azure Companion Feed Schemaに従って生成したフィードを設定します。ここでは、「http://wazstorage.blob.core.windows.net/azurecompanion/default/WindowsAzureCompanionFeed.xml」と入力します。(あくまでもサンプルなのですが。。。)

<!– Atom Feed for Product items to be installed. This URL should be internet addressable –>
<Setting name="ProductListXmlFeed" value="*****" />

3. 新しいhosted Servicesに、アプリケーションをデプロイします。

4. デプロイが完了したら、ブラウザでアクセスします。アクセスするポートは、「8080」です。
http://noratest2.cloudapp.net:8080/」にアクセスします。
ASP.NET MVCで作成されたページが表示されます。
20101006045751

5. 「Loc On」をクリックすると、ログインページが表示されるのでIDとPASSWORDを入力しログインします。

 

PHPとWordPressのインストール

 

PHPとWordPressをインストールします。

Platformタブに表示される項目は、設定ファイルのProductListXmlFeedで指定したフィードの<tabname>タグに設定されたものが表示されます。上記で指定したフィードでは、PHPとWindows Cache Extension for PHPが含まれています。

1. WordPressをインストールするために、PHPとPHP Wincache Extensionにチェックを入れます。
っと、してもいいのですが、WordPressを入れる際に関連ファイルは拾ってくるので、この手順は必要ないのです!

 

2. Applicationタブを選択します。WordPressにチェックを入れます。「NEXT」ボタンをクリックします。

 

3. 関連プログラムのインストール確認が表示されます。SQL Serverを使用します。MySQLを使用することもできますが。。。(参考:Getting MySql Running on Azure
Acceptボタンをクリックします。

 

エラーがでてしまいました(T_T)

20101006054137

「Installation failes Error Could not find a part of the path B:\php」と表示され失敗orz

このエラーが出ると、どうしようもありません。
諦めて、Hosted ServiceのSuspend、Deleteし、再デプロイするっと2回目ですんなりと行きました。ダメな場合は、Strage Serviceから作成しなおすと良いかも?

うまくいくと、次のようなログがどんどん表示されますので暖かく見守ります。

 

WordPressの初期設定

 

SQL Azureにデータベースを作成し、作成した情報をWordPressの登録フォームに入力します。

 

ここまで、運悪くエラーに遭遇しなければ、あっという間にWindows Azure上にWordPressのデプロイが完了します。作業時間の8,9割はWindows Azureにデプロイし、初期化し使用できるようになるまでの待ち時間です。