UNIX/Linux目線のWindows Azure入門ガイド 3ページ
Windows AzureでFTPでアクセスできるWebサーバーを構築する
それでは、Windows Azureを用いたWebサーバー環境の構築手順を紹介していこう。まずはWindows Azureを「一般的なレンタルサーバー」のように使えることを示すため、FTPやWebDAVでファイルをアップロードして公開できる環境を構築してみよう。必要な設定作業は下記となる。
- Webロールの作成
- IISやファイアウォール設定を行うバッチファイルの作成
- ロードバランサの設定
- Azure Driveを用いた永続的なストレージの設定
なお、これらの設定が完了した状態のソースコード全文を含むプロジェクトファイルはOSDNのWindows Azure記事サンプルファイルプロジェクトで公開しているので、適宜確認していただきたい。
また、記事執筆時のWindows Azure SDKのバージョンは1.6である。今後Windows Azure SDKがアップデートされた場合、必要な手順が変わる可能性もあるので注意してほしい。
Windows Azureプロジェクトの作成
Windows Azure上で動作するロールの作成には、Visual Web Developerを利用する。Eclipseを利用したり、手動で設定ファイルを記述する、といった方法もあるが、Visual Web Developerを利用することで設定ファイルのテンプレート作成や証明書の作成およびアップロード、デプロイといった面倒な作業をほぼ自動化できるため、こちらの利用をおすすめしたい。
プロジェクトの作成は、「ファイル」メニューの「新しいプロジェクト」で行える。これを選択すると「新しいプロジェクト」ウィンドウが開くので、テンプレートとして「インストールされたテンプレート」から「Visual C#」-「Cloud」を選択し、右ペインで「Windows Azureプロジェクト」を選択する(図10)。名前や保存する場所を指定し、「OK」をクリックする。

続いて作成するロールを指定するウィンドウが表示されるが、ここでは「ASP.NET Webロール」を選択し、「>」ボタンをクリックする。これによりWebロールがプロジェクトに追加される(図11)。追加されたWebロールはデフォルトでは「WebRole1」という名称になるが、変更することも可能だ。最後に「OK」をクリックするとプロジェクトが作成される。

プロジェクトを作成すると、「ソリューションエクスプローラー」内にプロジェクトに含まれるファイルが表示される(図12)。この中で、「WebRole1」(もしくは変更した名称)として表示されているものが対応するWebロールの本体となり、またこのディレクトリがWebサーバーのデフォルトでのルートディレクトリとなる。

Windows Azureホステッドサービスやストレージアカウントの作成
Windows Azureで稼働しているWebサイトやストレージはそれぞれ「ホステッドサービス」や「ストレージアカウント」という単位で管理される。これらの登録を行い、接続に必要な情報などを取得しておこう。この作業はVisual Web Developerの「ビルド」メニュー内にある「Windows Azureに発行」から行える(図13)。

「Windows Azureに発行」をクリックすると、「Windows Azureアプリケーションの発行」ウィザードが表示される。初回時にはWindows Azureのアカウント情報などがVisual Studio側に登録されていないため、「サインインして、資格情報をダウンロードする」をクリックする(図14)。

WebブラウザでWindows Azureのページが開くので、アカウント情報が含まれるファイルをダウンロードする(図15)。なお、Webブラウザによってはファイルのダウンロードに失敗することがあるようだ。その場合はInternet Explorerで開いてこのURLを開けば良い。

続いて「Windows Azureアプリケーションの発行」ウィザードの「インポート」をクリックし、ダウンロードされたアカウント情報ファイルを指定する。すると「サブスクリプションの選択」リストボックスにそのアカウントが表示されるはずだ(図16)。

この状態で「次へ」をクリックすると、「Windows Azure発行設定」が表示されるとともに「Windows Azureサービスの作成」というウィンドウが表示される。ここで作成するサービスの名前(クラウド環境を一意に示す名称)と、使用するサーバーの物理的エリアを選択する。名前については一意でなければならず、すでに利用されている名前は指定できない(図17)。

また、「Windows Azure発行設定」画面の「すべてのロールのリモートデスクトップを有効にする」にチェックを入れておく(図18)。これにより、作成したロールのインスタンスに対しリモートデスクトップでログインできるようになる。

チェックを入れると「リモートデスクトップ構成」というウィンドウが表示されるので、リモートデスクトップ接続に利用するユーザー名とパスワード、アカウントの有効期限を設定しておく(図19)。

また、「すべてのWebロールのWeb配置を有効にする」についてもチェックを入れておこう。これにより、高速にデプロイを行う「Web配置」機能が利用できるようになる。
以上でデプロイに必要な設定がすべて完了し、ここで「発行」をクリックするとデプロイが実行される。ただし、今回はまだ何もWebRoleに変更を加えていないので「キャンセル」をクリックしていったん中断しておく。その際、「現在のプロファイルに対する変更が保存されていません」とのメッセージが表示されるので、「はい」を選択して構成を保存しておく。