Windows Azure 用アプリケーション開発 Step-by-Step チュートリアル ガイド

第 3 章 Windows Azure 運用環境への展開 (1)

目次

3.1 Windows Azure の購入

‣ 3.1.1 Step 1 - Microsoft Online Services カスタマー ポータル プロファイル登録
‣ 3.1.2 Step 2 - Microsoft Online Services カスタマー ポータルから Azure の購買
‣ 3.1.3 Step 3 - Azure のアクティブ化

3.2 3.2 各種サービスの初期設定と Windows Azure API Certificate の登録

‣ 3.2.1 SQL Azure データベース サービスの初期設定
‣ 3.2.2 Windows Azure ストレージ サービスの初期設定
‣ 3.2.3 Windows Azure コンピュート サービスの初期設定
‣ 3.2.4 API Certificate の登録


 

いよいよ本章では、作成した Web アプリケーションを Azure 上へ展開していきます。

まず、展開作業に入る前の Azure を使用するための準備として以下 2 つを行います。

  • Windows Azure サービスの購入 (3.1)
  • 各種サービスの初期化 (3.2)

Azure を使用する準備が整ったら、次にデータベース、ストレージ、アプリケーションの順番で Azure 上 (Staging 環境) へ移行していきます。

そしてアプリケーションの移行が完了したら、最後に本番 (Production) 環境に展開します (3.6 アプリケーションの修正と Azure 環境への再配置)。

それでは、Windows Azure サービスの購入手順から説明していきます。


3.1 Windows Azure の購入

2010 年 6 月 25 日現在 、Windows Azure サービスでは、初期特別提供プランとして、Azure の 25 時間分の無償使用を含む「Windows Azure 導入特別プラン」が提供されています。今回はこちらを利用して検証作業を行います。なお、このプランは範囲内での試用は無償ですが、無償枠を超えてサービスを利用すると従量課金のレートで課金が発生しますのでご注意ください。

Windows Azure 導入特別プラン
https://www.microsoft.com/japan/windowsazure/offers/popup.aspx?lang=ja&locale=ja-JP&offer=MS-AZR-0001P

下記手順では、クレジット カード払いによる購入手順を説明します。

  • Step 1 - Microsoft Online Services カスタマー ポータル プロファイル登録
  • Step 2 - Microsoft Online Services カスタマー ポータルから Azure の購買
  • Step 3 - Azure のアクティブ化

3.1.1 Step 1 - Microsoft Online Services カスタマー ポータル プロファイル登録

実際の Windows Azure の購入は、Microsoft Online Services カスタマー ポータル サイト (略称: MOCP) から行います。最初の Step では、Microsoft Online Services カスタマー ポータルを使用するためのプロファイル登録を行います。

A. Microsoft Online Services カスタマー ポータルへのログイン

  1. Internet Explorer で下記 Microsoft Online Services カスタマー ポータルにアクセスします。
    Microsoft Online Services カスタマー ポータル
    https://mocp.microsoftonline.com/site/default.aspx
  2. [サインイン] をクリックすると、Windows Live ID (現: Microsoft アカウント) でのログイン画面が表示されますので、Windows Live ID (現: Microsoft アカウント) アカウント名 (メール アドレス) とパスワードを入力し、 [Sign in] ボタンをクリックしてください。

B. プロファイルの登録

  1. ログインに成功すると 新規プロファイル登録開始画面が表示されるので、必要な情報を入力します。
    ※ 既にプロファイル登録済みの場合は、Step 2 にお進みください。

  2. 下記の確認画面が表示されたら、プロファイル情報入力は完了です。 [閉じる] ボタンをクリックします。

最初のプロファイル登録が終わると、カスタマー ポータルの画面が表示されます。

ページのトップへ


3.1.2 Step 2 - Microsoft Online Services カスタマー ポータルから Azure の購買

A. 初期特別提供プランの選択

  1. 画面中央の利用可能なサービスから [Windows Azure] の利用可能なサービスの表示リンクをクリックします。
    ※ すると、現在利用可能な Azure の購買メニューが表示されます。


    (図をクリックすると拡大図が表示されます)

  2. ここでは [初期特別提供プラン] を選択し、 [今すぐ購入] をクリックします。


    (図をクリックすると拡大図が表示されます)

  3. 購入の同意事項を確認してチェック ボックスを入れ、[購入手続きへ進む] ボタンをクリックします。


    (図をクリックすると拡大図が表示されます)

B. クレジット カードの登録と注文の確定

  1. 支払い方法の入力画面からクレジット カードの情報を登録します (※ このプランは、無償範囲の利用であれば課金が発生しません。しかし、無償範囲枠を超えて利用すると、登録したクレジット カードに課金が発生します。このため、無償範囲に注意しながら検証作業を進めてください。)。
  2. 新しいクレジット カードが選択されていることを確認して [次へ] ボタンをクリックします。

  3. 必要事項を入力したら、 [次へ] ボタンをクリックします。
    ※ すると、オンライン サブスクリプション契約が表示されます。

  4. オンライン サブスクリプション契約をご確認いただき、問題がなければ [次へ] ボタンをクリックします。以下の 2 点に注意してください。
    • 氏名の署名欄には、上に記載されている文字列の通り入力してください
    • 姓と名の間に半角スペースが必要となりますので注意してください
  5. 注文の確認および確定画面が表示されます。内容を確認して [注文の確定] ボタンをクリックします。

確認画面が表示されれば支払い情報の登録は完了です。この画面から引き続き Azure のアクティブ化を行います。

ページのトップへ


3.1.3 Step 3 - Azure のアクティブ化

続いて、購入した権利で Azure を利用するための手続きであるアクティブ化を行います。

A. Azure のアクティブ化

注文完了画面でアクティブ化ボタンをクリックして、サブスクリプション操作画面を表示します。

[アクション] のリストから [今すぐアクティブ化] を選択し、[移動] ボタンをクリックします。

サービスのサブスクリプション名を入力し、[次へ] ボタンをクリックします。
※ サブスクリプション名は Azure で最初のプロジェクトの名称にも使用されます。

続いてサービス管理者の情報を入力します。 すでに入力しているサービス購買の連絡先情報をコピーすることも可能です。 前述のサービス購買者と、ここで解説するサービス管理者との違いは以下の通りです。
  1. 企業で利用する場合は、購入手続きを行う部門と、実際にプロジェクトで利用する部門や担当者が異なる場合がよくあります。
  2. このような場合に備えて、それぞれ個別に指定ができるようになっています。
  3. なお、Azure では、サービス購買者として登録したユーザーを「アカウント オーナー (Account Owner)」、サービス管理者として登録したユーザーを「サービス アドミニストレーター (Service Administrator)」と呼んで区別しています。
アカウント オーナーとサービス アドミニストレーターは、後で示す Windows Azure のポータル画面上では区別して表示されます。

概要画面で入力情報を確認したら、[完了] ボタンをクリックします。

確認完了画面が表示されたら手続きは終了です。

B. 作成されたプロジェクトの確認

完了手続きを終えると、登録に利用した Windows Live ID (現: Microsoft アカウント) のアカウント宛に完了メールが届きます。これで Windows Azure デベロッパー ポータルにアクセスできるようになります。

  • メールに記載されたデベロッパー ポータルのリンクから [Windows Azure] をクリックして、Windows Azure デベロッパー ポータルにアクセスします (または、https://windows.azure.com/ (英語) にアクセスします)。
    ※ 新たに先ほど作成したプロジェクトが追加されていることをご確認ください。

以上で、Azure の購入とアクティブ化のプロセスが終了となります。

ページのトップへ


3.2 各種サービスの初期設定と Windows Azure API Certificate の登録

Azure の各サービスを利用するためには、各々のサービスで初期設定を行う必要があります。また、Azure をローカルのツールから遠隔操作するためには、API 証明書 (Windows Azure API Certificate) の登録が必要です。

まず各種サービスの初期設定からご説明します。

3.2.1 SQL Azure データベース サービスの初期設定

以下の手順で、データベース サービスを初期設定します

A. SQL Azure プロジェクトの作成

  1. まず、ポータル サイト (https://sql.azure.com/ (英語)) にアクセスします。
    https://windows.azure.com/ (英語) のサイトの左側タブの中から [SQL Azure] の項目をクリックしても構いません。
  2. 使用条件を読み、[Accept] ボタンをクリックします。


    (図をクリックすると拡大図が表示されます)

  3. データベース サービスの管理者アカウントのアカウント名とパスワードを入力し、データベース サーバーの場所を選択します。
    ※ ここでは、場所に関しては [Southeast Asia] を選択することを推奨します。
  4. [Create Server] ボタンをクリックしサーバーを作成します。

B. SQL Azure サーバー名の確認

SQL Azure サーバーのサーバー名が自動作成されます。(サーバー名の変更はできません) Management Studio からデータベース サービスに接続する際に必要になりますので、どこかにメモを残しておいてください。


(図をクリックすると拡大図が表示されます)

C. ファイアウォール設定の緩和

自分のローカル端末の Management Studio から SQL Azure 上のデータベースを管理するためには、TCP/IP 1433 ポートでの直結を行う必要があります。以下のようなファイアウォール設定の緩和を行ってください。

ファイアウォール設定の緩和を行う場所 緩和方法
ローカル側 会社内からアクセスする場合には、貴社の IT 部門にポート 1433 (外部発信) を開けてもらいます [※1]
SQL Azure
データベース側
SQL Azure データベース サービス側については、管理サイト (https://sql.azure.com/ (英語)) の管理画面から、ファイアウォール設定の緩和を行います [※2]

[※1] 実際のシステム開発では、自社側のポート 1433 を開けることが難しいことが多いと思います。このような場合には、(このあとにご説明する Management Studio での作業も含めて) 一時的に自宅から作業するなどの工夫を行ってください。なお将来的には、SQL Server を Web 上から管理できるツールである、SQL Server Web Manager がリリースされる予定です。

[※2] SQL Azure 側のファイアウォールについては、設定変更の反映に約 5 分ほどの時間がかかります。すぐに設定が反映されなくても、しばらく待っていただければ設定が反映されます。

データベース サービス側のファイアウォール設定の緩和については、管理サイト (https://sql.azure.com/ (英語)) の管理画面から、以下の手順で行います。

  • 管理サイトから先ほど作成したプロジェクトを選択し、Server Administration の画面を開きます
  • [Firewall Settings] タブを選択し Microsoft Service からのアクセスの許可ルールの有効化チェック ボックスへのチェックと、[Add Rules] ボタンから自分の端末の IP を許可するルールを追加します

D. データベースの作成

次に、SQL Azure ポータル サイトからデータベースを作成します。作成時には、データベース名と最大容量を指定する必要があります。ここでは以下のように作成してください。

  • データベース名: PUBS
  • エディション: Web
  • サイズ: 1 GB

データベース作成後、[Connection Strings] ボタンを押すと、当該データベースにアプリケーションから接続するのに必要な、接続文字列を確認することができます。


(図をクリックすると拡大図が表示されます)

ページのトップへ


3.2.2 Windows Azure ストレージ サービスの初期設定

次にストレージ サービスの初期設定を行います。

A. ストレージ サービスの作成

  1. まず、Azure ポータル サイト (https://windows.azure.com/ (英語)) へアクセスし、[Windows Azure] リンクをクリックしてください。
  2. 次に [New Service] をクリックし、作成するサービスとして [Storage Account] を選択します。


    (図をクリックすると拡大図が表示されます)

  3. [Service Label] には任意の名前を付与してください。
    ※ ここで指定したラベルはポータル サイト上でのみ利用されるラベルとなるので、適当に付与して構いません。[Next] ボタンをクリックしてください。


    (図をクリックすると拡大図が表示されます)

  4. [Storage Account] の画面で、アカウント名を付与し、アフィニティ グループ  [※3] を作成してください。
    ※ ここで付与するアカウント名は、このストレージにアクセスする際の URL となるので、わかりやすい名前を付与してください。

    [※3] アフィニティ グループ - アフィニティ グループは同じグループ内のサービス (コンピュート サービスとストレージ サービスなど) を同一センター内の極力近くに配置するためのものです。近い場所に配置することを保証するものではありませんが、極力近い場所に配置するよう努力します。

  5. アカウント名を付与したら [Create] ボタンをクリックし、ストレージ サービスを作成してください。
  6. また、ストレージ サービスを作成するデータ センターについては、必ず Southeast など、データベース サービスを作成したデータ センターと同じ場所を選択してください。
    ※ 異なるデータ センターを選択してしまうと、データ センターまたがりの通信で、課金が発生することになります。

    Note: なお、データ センターを指定する場合は、地域 (Region) を指定する方法と、サブ地域 (SubRegion) を指定する方法の 2 つがあります。例えば、地域として「アジア」を選択した場合、実際にサービスが配置される場所は、「東南アジア (シンガポール)」「東アジア (香港)」のどちらかになります (どちらになるかは不明)。一方、サブ地域である「東南アジア」「東アジア」を選択すると、そのサブ地域にあるデータ センターにサービスが配置されます。サブ地域まで指定すると、確実にそのデータ センターに配置することができますので、こちらの方法での指定を推奨します。


    (図をクリックすると拡大図が表示されます)

B. Key の確認

以上の作業を行うと、ストレージ サービスにアクセスするためのキーが 2 つ発行されます。[Primary Key] と [Secondary Key][※4] と書かれていますが、実際にはこの2 種類のキーはどちらを使っても同じようにストレージにアクセスできます。

[※4] [Primary Key] と [Secondary Key] - Primary Key と Secondary Key については、様々な使い分けが考えられます。例えば、(1) 片方の鍵は Web アプリケーション内に組み込む鍵とし、もう片方の鍵は管理者がツールから使う鍵とする、といった使い分けや、(2) どちらか一方を普段使いのキーにしておき、もう片方をスペア キーとしておく (もし普段使いのキーが盗まれた場合には、こちらの鍵のみを再生成し、スペア キーの方についてはそのままにしておく)、などの使い方が考えられます。

  • どちらか好きな方のキーをメモしておいてください。

ページのトップへ


3.2.3 Windows Azure コンピュート サービスの初期設定

次にコンピュート サービスの初期設定を行います。

A. Hosted Services の作成

  • ストレージ サービスと同様に、まずポータル サイト (https://windows.azure.com/ (英語)) にアクセスし、[Windows Azure] リンクをクリックしてください。
  • 次に、[New Service] リンクから [Hosted Services] を選択します。
  • [Service Label] には任意の名前を付与してください。
    ※ ここで指定したラベルはポータル サイト上でのみ利用されるラベルとなるので、適当に付与して構いません。
  • ラベルを付与したら、[Next] ボタンをクリックしてください。
  • 次に、サービスの URL を決定するとともに、サービスを配置するデータ センターを選択します。
  • このとき、ストレージ サービス作成時に作成したデータ センターと、アフィニティ グループ名を指定します。

B. 作成されたサービスの確認

以上の作業により、コンピュート サービスが作成されます。サービスを作成すると、アプリケーションをアップロードするための 2 つの環境が用意されます。1 つは "Production" 環境 (運用環境)、もう 1 つが "Staging" 環境 (最終動作確認環境) です。

ページのトップへ


3.2.4 API Certificate の登録

Azure では、「Windows Azure Service Management API」(以下 Management API) という管理用の API が公開されています。この Management API は、HTTP-REST 方式によって呼び出すことが可能な Web サービスとして提供されています。これを使用すると、コンピュート サービスやストレージ サービスをローカルのツールから遠隔操作することが可能です。

Note: 今回のサンプルでは Visual Studio から Windows Azure 上へアプリケーションをアップロードするためにも使用します。アプリケーションのアップロード後サービスの管理も可能となります。この他にも Windows Azure MMC (https://code.msdn.microsoft.com/windowsazuremmc (英語)) でもサービスの管理が可能です。

しかし、この API はインターネットに晒されているため、セキュリティ上の安全性を保つ必要があります。このため、この API を使用するには、事前に Azure ポータル サイトから証明書をアップロードしておく必要があります。以下で、証明書の作成とアップロードの手順をご説明します。

A. 証明書の作成

証明書を以下の手順で作成してください。

  • Visual Studio コマンド プロンプト (2010) を管理者特権つきで起動する
  • 証明書を作成するディレクトリへ移動する
  • 下記コマンドを実行する

"C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\makecert" -r -pe -a sha1 -n "CN=Windows Azure Authentication Certificate" -ss My -len 2048 -sp "Microsoft Enhanced RSA and AES Cryptographic Provider" -sy 24 "AzureMgmt.cer"


(図をクリックすると拡大図が表示されます)

このコマンドにより以下 2 つが実行されます。

  • カレント ディレクトリに自己署名証明書 (AzureMgmt.cer) が作成される
  • 作成された証明書が現在ログオンしているユーザーの "個人" 証明書ストアへ保存される

B. Windows Azure への証明書の登録

次に、作成された証明書を Azure へ登録します。

  • まず、ポータル サイト (https://windows.azure.com/(英語)) にアクセスし、プロジェクトを選択します。
  • 次に [Account] タブを開きます。[Manage My API Certificates] リンクから [API Certificates] 画面を開きます。
  • [参照…] ボタンから、先ほど作成した証明書を選択し、[Upload] ボタンでアップロードします。

これで証明書の登録が完了となります。この証明書は、後で Visual Studio から Azure 上へアプリケーションをデプロイする際に使用します。

以上で、Azure を使用する準備が整いました。次に、Azure 上へアプリケーションを移行していきます。

ページのトップへ