Azureっていくらかかるんですか?
ホスティングサービスの作成
プロジェクトの一覧にあるプロジェクト名(画面では「開発用」)をクリック(画面2)、ページ上部にある [New Service]をクリック(画面3)、[Hosted Services]をクリック(画面4)します。
画面2:ホスティングサービス作成 - プロジェクト選択(クリックで拡大) |
画面3:ホスティングサービス作成 - 新規サービス作成(クリックで拡大) |
画面4:ホスティングサービス作成 - ホスティングサービス作成(クリックで拡大) |
サービスラベル(Service Label)とサービスの説明(Service Description)を入力し、[NEXT]ボタンをクリックします。
画面5:ホスティングサービス作成 - サービスプロパティ設定(クリックで拡大) |
[小木] 公開するホストのURLと地域の設定はどうしますか?
[田口] 公開するホストのURLは好きにつけて良いですよ。地域はコストを考えて「North Central US」が良いでしょう。また「Affinity Group」は後日ストレージサービスを作るときに使うので作成しておいてください。
[小木] わかりました!公開するホストのURL(Public Hosted Service URL)を入力し、[Check Availability]をクリック、URLが利用可能かチェックして・・・問題なし!続いて、地域を作成するので、地域(Hosted Service Affinity Group)を選択し、[Create]ボタンをクリック。
画面6:ホスティングサービス作成 - URLと地域設定(クリックで拡大) |
[小木] これでホスティングサービスの作成が完了しました。
Azureでアプリケーションを実行する
[田口] クラウド環境で動かす準備が整いましたので実際に動かしてみましょう。まずはアプリケーションの配置ですね。
[小木] 一般的なホスティングと同じようにFTPでアップロードですか?
[田口] いえいえ、Windows Azure デベロッパー ポータルを使って配置できますよ。Visual Web Developer から、ほぼ自動的に配置することもできますが、今回は流れを覚えるため使わないでくださいね。
[小木] はいはい。楽ばかりしないで基本を覚えろってことですよね。動かすアプリは、前回作成したphpinfoの結果を表示するやつで良いですか?
[田口] いいですよ。Visual Web Developerで[発行]を行うとパッケージができますので、後はブラウザでパッケージをアップロードして実行するだけですから、やってみてください。
[小木] FTPなどで「コピーして完了!」って訳には行かないのですね。まあ、簡単そうですし、やってみます!
アプリケーションの配置と実行
Visual Web Developerを起動して、前回作成したプロジェクトを開きます。[ソリューションエクスプローラー] にあるクラウドサービスプロジェクトを選択し、右クリックして表示されるメニューから[発行]を選択します。
画面7:Visual Web Developerで発行 |
[クラウド サービスの発行]ダイアログが表示されますので、[サービスパッケージだけを作成]を選択し、[OK]ボタンをクリックします。
画面8:クラウド サービスの発行ダイアログ |
ビルドが完了するとエクスプローラーが自動的に起動し、パッケージファイル(.cspkg)と設定ファイル(.cscfg)2つのファイルが入ったフォルダが表示されます。
画面9:パッケージファイルの表示(エクスプローラー) |
ブラウザを起動しWindows Azure デベロッパー ポータルにアクセスし、[プロジェクト]、[ホスティングサービス]とクリックして先ほど作成したProduction(本番環境)を表示します。
画面10:Productionの表示(クリックで拡大) |
今回はStaging環境(テスト環境)で動かしますので、画面右側にある矢印(左向きの三角)クリックします。Stagingが表示されましたらStagingの下にあります[Deploy]ボタンをクリックします。
画面11:ProductionとStagingを表示(クリックで拡大) |
[Staging Deployment]ページが表示されますので、[Application Package]にパッケージ(cspkg)ファイル、[Configuration Settings]に設定ファイル(cscfg)ファイルを指定します。[Service Deployment Name]を入力し、[Deploy]ボタンをクリックします。
画面12:Stagingの設定(クリックで拡大) |
アプリケーションのアップロード・配置が終わると、[Run]などのボタンが表示されます。[Run]ボタンをクリックして、アプリケーションを実行しましょう。問題なければ10分程度でステータスが[Ready]となり準備完了です。
画面13:準備完了 |
Web Site URLをクリックして、phpinfoの画面が出れば動作確認は完了です。
OSの自動アップグレード
[小木] phpinfoの画面表示されました!Azureでも簡単に動きましたね。
[田口] まあ、簡単なアプリですからね。書いたコード1行ですし・・・
[小木] ちょっと質問!アプリケーションの配置を行っているときに[Select OS Upgrade Method]で[Manual](手動)と[Automatic](自動)があったのですが、手動ってどんなとき使うのですか?自動の方が楽ですよね?
[田口] おっ、良いところに気付きましたね。確かにAutomaticの場合、自動的にセキュリティパッチも含んだ最新のOSが適用されるので安心で楽ですね。ただ、OSのアップグレード時にサービスが停止することもあるため、状況によって使い分けが必要になってくるんです。
[小木] Azure以外のWindows みたいに時間指定もできないんですか?
[田口] できないですね。もしサービスを停止させられないという場合は、Staging環境を利用して手動で入れ替えるか、あらかじめ複数インスタンスをロールに割り当てておいて自動を選択する、でしょうね。
[小木] 複数インスタンスだと自動でも停止しないんですか?
[田口] 自動でもサービスを停止しないでアップグレードできますよ。まず、アップグレードはアップグレードドメインという単位で1つずつ行われます。で、1ロールに複数インスタンスを割り当てると複数のアップグレードドメインに均等に分割されますから、サービスの停止なくアップグレードができます。
[小木] へぇ~、まあ今のところは関係なさそうですね。インスタンス増やすと費用がかかりますし・・・。
[田口] そうですね。さて、それでは動作確認も取れましたし、配置していると課金対象になってしまいますので [Suspend] ボタンで停止して、[Delete] ボタンで削除しておきましょう。
[小木] はーい。状態が ReadyでもStopでも課金対象になっちゃうんですよね。使わないときは削除、削除っと。さあ、次行きましょう!