Web Farm Framework でサーバー ファームを作成する

作成者: Jason Lee

このトピックでは、Web ファーム フレームワーク (WFF) 2.0 を使用して、サーバーのコレクションから Web サーバー ファームを作成および構成する方法について説明します。

WFF を使用すると、複数の負荷分散された Web サーバー間で Web プラットフォームの製品とコンポーネント、Web アプリケーション、Web サイト、構成設定を同期できます。 ステージング環境や運用環境など、複数の Web サーバーが必要なシナリオでは、デプロイと構成のプロセスが大幅に簡素化される可能性があります。 1 つのサーバー ( プライマリ サーバー) に Web アプリケーションをデプロイできます。WFF では、その Web アプリケーションがサーバー ファーム内の他のすべての Web サーバーに自動的にレプリケートされます。

Web ファーム フレームワークについて

WFF 2.0 を使用して、Web サーバーのグループにコンテンツをプロビジョニング、管理、展開できます。 WFF デプロイは、次の 3 つの主要なサーバー ロールで構成されます。

  • コントローラー サーバー。 このサーバーを使用して、WFF サーバー ファームを作成および構成します。 コントローラー サーバーは、サーバー ファーム内の Web サーバー間の Web プラットフォーム コンポーネント、構成設定、およびアプリケーションの同期を管理します。 コントローラー サーバーに WFF 2.0 をインストールすると、コントローラー サーバーはサーバー ファーム内の各サーバーに WFF エージェントをインストールします。 コントローラー サーバーは概念的には WFF サーバー ファームに属していないため、1 つのコントローラー サーバーで複数のサーバー ファームを管理できます。 このシナリオでは、単一の WFF コントローラー サーバーを使用して、ステージング サーバー ファームと運用サーバー ファームを作成および管理します。
  • プライマリ サーバー。 各 WFF サーバー ファームには、1 つのプライマリ サーバーが含まれています。 Web プラットフォーム コンポーネントをインストールするか、アプリケーションをプライマリ サーバーに展開すると、WFF はサーバー ファーム内の他のすべてのサーバーに変更を同期します。
  • セカンダリ サーバー。 各 WFF サーバー ファームには、1 つ以上のセカンダリ サーバーが含まれています。 プライマリ サーバーに加えた変更は、サーバー ファーム内のすべてのセカンダリ サーバーにレプリケートされます。

これは、これらのサーバーロールが Fabrikam, Inc. のステージング環境と運用環境にどのように関連しているかを示しています。

サーバーの役割と Fabrikam, Inc. のステージング環境と運用環境との関係

このシナリオでは、ステージング環境と運用環境の両方が WFF サーバー ファームとして構成されます。 1 つの WFF コントローラー サーバーが両方のファームを管理します。 各サーバー ファーム内では、プライマリ サーバーに対する変更がすべてのセカンダリ サーバーにレプリケートされます。

ステージング環境と運用環境の構成を開始する前に、WFF 2.0 の主要な概念を理解するために、次の記事を参照することをお勧めします。

タスクの概要

このトピックのタスクとチュートリアルを完了するには、少なくとも 3 つのサーバー (WFF コントローラー、サーバー ファーム用のプライマリ Web サーバー、サーバー ファーム用の 1 つ以上のセカンダリ Web サーバー) が必要です。 WFF サーバー ファームには、いつでもセカンダリ サーバーを追加できます。 大まかに言うと、ステージング環境または運用環境用に WFF サーバー ファームを作成して構成するには、次の手順を実行する必要があります。

  • インターネット インフォメーション サービス (IIS) 7.5 と WFF 2.0 をインストールして、コントローラー サーバーを作成します。
  • 一般的な管理者アカウントを作成し、ファイアウォールの例外を構成して、プライマリ サーバーとセカンダリ サーバーを準備します。
  • コントローラー サーバーで IIS マネージャーを使用してサーバー ファームを構成します。
  • IIS アプリケーション要求ルーティング (ARR) または代替負荷分散テクノロジを使用して負荷分散を構成します。

このトピックのタスクとチュートリアルでは、Windows Server 2008 R2 を実行クリーンサーバー ビルドから始めていることを前提としています。 開始する前に、各サーバーについて、次のことを確認します。

  • Windows Server 2008 R2 Service Pack 1 と使用可能なすべての更新プログラムがインストールされています。
  • サーバーはドメインに参加しています。
  • サーバーには静的 IP アドレスがあります。

Note

コンピューターをドメインに参加させる方法の詳細については、「ドメインへの コンピューターの参加」および「ログオン」を参照してください。 静的 IP アドレスの構成の詳細については、「静的 IP アドレスの構成」を参照してください。

WFF コントローラー サーバーを作成する

WFF コントローラー サーバーを作成するには、IIS 7 以降と WFF 2.0 以降の両方をインストールする必要があります。 WFF では、IIS Web 配置ツール (Web 配置) 2.x を使用してファーム内のサーバーを同期します。 Web プラットフォーム インストーラーを使用して WFF をインストールすると、インストーラーは自動的に Web 配置をダウンロードしてインストールします。

WFF コントローラー サーバーを作成するには

  1. Web Platform Installer をダウンロードしてインストールします。

  2. [Web プラットフォーム インストーラー 3.0] ウィンドウの上部にある [製品] をクリックします。

  3. ウィンドウの左側にあるナビゲーション ウィンドウで、[ サーバー] をクリックします。

  4. [ IIS 7 Recommended Configuration]\(IIS 7 推奨構成\) 行で、[ 追加] をクリックします。

  5. Web ファーム フレームワーク 2。x 行をクリックし、[追加] をクリックします。

    [Web ファーム フレームワーク 2] 行で、[追加] をクリックします。

  6. [インストール] をクリックします。 Web プラットフォーム インストーラーによって、Web 展開ツールと他のさまざまな依存関係がインストール リストに追加されていることに注意してください。

    [インストール] をクリックします。Web プラットフォーム インストーラーによって、Web 展開ツールと他のさまざまな依存関係がインストール リストに追加されていることに注意してください。

  7. ライセンス条項を確認し、条項に同意する場合 は、[同意する] をクリックします。

  8. インストールが完了したら、[ 完了] をクリックし、[ Web プラットフォーム インストーラー 3.0 ] ウィンドウを閉じます。

プライマリ サーバーとセカンダリ サーバーを構成する

WFF サーバー ファームを作成する前に、ファームを構成する Web サーバーでいくつかの準備タスクを完了する必要があります。

  • ファイアウォールの例外を追加して、 コア ネットワークリモート管理およびファイルとプリンターの共有 機能が WFF コントローラー サーバーと通信できるようにします。
  • Active Directory でドメイン アカウント ( FABRIKAM\stagingfarm など) を作成し、各サーバーのローカル管理者グループに追加します。 このアカウントは、サーバー ファームを作成するときにサーバー ファーム管理者アカウントとして使用します。

Windows ファイアウォールでこれらのファイアウォール例外を構成する方法の詳細については、「 Web ファーム フレームワーク 2.0 for IIS 7 のシステム要件とプラットフォーム要件」を参照してください。 その他のファイアウォール システムについては、製品のドキュメントを参照してください。

次の手順を使用して、Windows Server 2008 R2 のローカル管理者グループにドメイン アカウントを追加できます。 サーバー ファームに追加するすべてのサーバーでこの手順を実行する必要があります。つまり、プライマリ サーバーと各セカンダリ サーバーのローカル管理者グループに同じドメイン アカウントを追加します。

ローカル管理者グループにドメイン アカウントを追加するには

  1. [スタート] メニューの [管理ツール] をポイントし、[サーバー マネージャー] をクリックします。

  2. サーバー マネージャー ウィンドウのツリー ビュー ウィンドウで、[構成] を展開し、[ローカル ユーザーとグループ] を展開して、[グループ] をクリックします。

    サーバー マネージャー ウィンドウのツリー ビュー ウィンドウで、[構成] を展開し、[ローカル ユーザーとグループ] を展開して、[グループ] をクリックします。

  3. [ グループ ] ウィンドウで、[ 管理者] をダブルクリックします。

  4. [ 管理者のプロパティ ] ダイアログ ボックスで、[ 追加] をクリックします。

  5. [ ユーザー、コンピューター、サービス アカウント、またはグループの選択 ] ダイアログ ボックスで、ドメイン アカウント ( FABRIKAM\stagingfarm など) を入力 (または参照) し、[OK] をクリック します

    [ユーザー、コンピューター、サービス アカウント、またはグループの選択] ダイアログ ボックスで、ドメイン アカウント (FABRIKAM\stagingfarm など) を入力 (または参照) し、[OK] をクリックします。

  6. [ 管理者のプロパティ ] ダイアログ ボックスで、[ OK] をクリックします。

これで、サーバーをサーバー ファームに追加する準備ができました。 プライマリ サーバーの場合は、サーバー ファームの作成前または作成後にアプリケーション要件を満たすようにサーバーを構成できます。どちらの場合も、WFF は同じ製品、コンポーネント、または構成をセカンダリ サーバーに展開することでサーバーを同期します。 わかりやすくするために、このチュートリアルでは、サーバー ファームの作成が完了したら、プライマリ サーバーを構成することを前提としています。

WFF サーバー ファームを作成する

この時点で、すべてのサーバーを WFF サーバー ファームに追加する準備が整いました。

  • コントローラー サーバーに WFF をインストールしました。
  • プライマリ Web サーバーとセカンダリ Web サーバーでファイアウォール例外を構成しました。
  • プライマリおよびセカンダリ Web サーバーのローカル管理者グループにドメイン アカウントを追加しました。

次の手順では、WFF でサーバー ファームを作成します。 これは、WFF コントローラー サーバー上の IIS マネージャーから行うことができます。

WFF サーバー ファームを作成するには

  1. WFF コントローラー サーバーの [スタート ] メニューの [ 管理ツール] をポイントし、[ インターネット インフォメーション サービス (IIS) マネージャー] をクリックします。

  2. [接続] ウィンドウで、ローカル サーバー ノードを展開し、[サーバー ファーム] を右クリックし、[サーバー ファームの作成] をクリックします。

  3. [ サーバー ファームの作成 ] ダイアログ ボックスで、サーバー ファームのわかりやすい名前 ( ステージング ファームなど) を入力し、[ サーバー ファームのプロビジョニング] を選択します。

  4. 各サーバーのローカル管理者グループに追加したドメイン アカウントのユーザー名とパスワードを入力します。

    各サーバーのローカル管理者グループに追加したドメイン アカウントのユーザー名とパスワードを入力します。

  5. [次へ] をクリックします。

  6. [ サーバーの追加 ] ページで、プライマリ サーバーの完全修飾ドメイン名 (FQDN) を入力し、[ プライマリ サーバー] を選択し、[ 追加] をクリックします。

  7. この時点で、WFF は指定した資格情報を使用してプライマリ サーバーへの接続を試みます。 接続が成功すると、プライマリ サーバーが [サーバーの追加] ページのテーブルに 追加 されます。

    この時点で、WFF は指定した資格情報を使用してプライマリ サーバーへの接続を試みます。接続が成功すると、プライマリ サーバーが [サーバーの追加] ページのテーブルに追加されます。

    Note

    [ サーバーが負荷分散に使用できる] が 既定で選択されていることに気付いたかもしれません。 WFF は IIS ARR モジュールを使用して負荷分散を実装し、サーバー ファーム内の Web サーバー全体に要求を分散します。 ほとんどのシナリオでは、代わりにサードパーティの負荷分散ソリューションを使用する場合にのみ、[ サーバーは負荷分散に使用できます ] オプションをオフにします。

  8. [ サーバーの追加] ページで、最初のセカンダリ サーバーの FQDN を入力し、[ 追加] をクリックします。

    [サーバーの追加] ページで、最初のセカンダリ サーバーの FQDN を入力し、[追加] をクリックします。

  9. ファーム内の追加のセカンダリ サーバーに対して手順 7 を繰り返し、[完了] をクリック します

WFF サーバー ファームが稼働しています。 プライマリ サーバーにインストールする Web プラットフォーム製品またはコンポーネント、およびプライマリ サーバーに展開する Web アプリケーションまたはコンテンツは、すべてのセカンダリ サーバーに自動的にプロビジョニングされます。

WFF は広範で複雑なトピックであり、 Microsoft Web Farm Framework 2.0 for IIS 7 Web サイトで詳細を確認できます。 ただし、当面は、次の 2 つの機能領域に注意する必要があります。

  • アプリケーション プロビジョニング は、Web アプリケーションや構成設定などのプライマリ サーバーから、サーバー ファーム内のすべてのセカンダリ サーバーにコンテンツをレプリケートするプロセスです。 たとえば、Contact Manager サンプル ソリューションをプライマリ ステージング サーバーに展開すると、WFF アプリケーション プロビジョニング プロセスによって、すべてのセカンダリ ステージング サーバーにこのソリューションがデプロイされます。 既定では、アプリケーション プロビジョニング プロセスは 30 秒ごとに実行されます。
  • プラットフォーム プロビジョニング は、Web プラットフォーム製品とコンポーネントをプライマリ サーバーからサーバー ファーム内のすべてのセカンダリ サーバーに同期するプロセスです。 たとえば、プライマリ ステージング サーバー ASP.NET MVC 3 をインストールする場合、プラットフォーム プロビジョニング プロセスは Web プラットフォーム インストーラーを使用して、すべてのセカンダリ ステージング サーバー ASP.NET MVC 3 をインストールします。 既定では、プラットフォーム プロビジョニング プロセスは 5 分ごとに実行されます。

基本的なアプリケーションとプラットフォームのプロビジョニング設定は、WFF コントローラー サーバー上の IIS マネージャーから管理できます。

アプリケーションとプラットフォームのプロビジョニング設定を調べる

  1. IIS マネージャーの [ 接続 ] ウィンドウで、サーバー ファームを選択します。

    IIS マネージャーの [接続] ウィンドウで、サーバー ファームを選択します。

  2. [ サーバー ファーム ] ウィンドウで、[ アプリケーション のプロビジョニング] をダブルクリックします。

    [サーバー ファーム] ウィンドウで、[アプリケーション のプロビジョニング] をダブルクリックします。

  3. ご覧のように、サーバー ファームは現在、30 秒ごとにプライマリ サーバーとセカンダリ サーバーの間で Web コンテンツと構成設定を同期するように構成されています。

  4. [ 戻る] をクリックし、[ プラットフォーム プロビジョニング] をダブルクリックします。

    [戻る] をクリックし、[プラットフォーム プロビジョニング] をダブルクリックします。

  5. ご覧のように、サーバー ファームは現在、プライマリ サーバーとセカンダリ サーバーの間で Web プラットフォーム製品とコンポーネントを 5 分ごとに同期するように構成されています。

  6. [戻る]をクリックします。

  7. サーバー ファームで Web プラットフォーム製品を直ちに同期させるには、[ 操作 ] ウィンドウで [ プラットフォームのプロビジョニング] をクリックします。

    サーバー ファームで Web プラットフォーム製品を直ちに同期させるには、[操作] ウィンドウで [プラットフォームのプロビジョニング] をクリックします。

    Note

    プラットフォームのプロビジョニングには時間がかかる場合があります。 インストーラー プロセスは、サーバー ファーム内のセカンダリ サーバーでバックグラウンドで実行されます。

  8. プロビジョニング プロセスが完了するのに十分な時間を確保できたら、プライマリ サーバーに追加した製品とコンポーネントがセカンダリ サーバーにレプリケートされたことを確認できます。 たとえば、セカンダリ サーバーにログオンし、[サーバー マネージャー] ウィンドウを使用して、Web サーバーの役割がインストールされていることを確認できます。

    たとえば、セカンダリ サーバーにログオンし、[サーバー マネージャー] ウィンドウを使用して、Web サーバーの役割がインストールされていることを確認できます。

  9. インストールされているプログラムの一覧をチェックして、さまざまな Web プラットフォーム コンポーネントが追加されたことを確認することもできます。

    インストールされているプログラムの一覧をチェックして、さまざまな Web プラットフォーム コンポーネントが追加されたことを確認することもできます。

負荷分散の構成

Web ファームを作成するときは、Web サーバー間で HTTP 要求を分散するために、何らかの形式の負荷分散を設定する必要があります。 これは、Windows Server 2008 ネットワーク負荷分散、IIS ARR、またはサードパーティのソフトウェアベースまたはハードウェアベースの負荷分散ソリューションです。

WFF は、IIS ARR と密接に統合するように設計されています。 この統合を利用するには、WFF コントローラー サーバーに ARR モジュールをインストールする必要があります。 その後、すべての Web トラフィックをコントローラー サーバーに転送します。通常は、ドメイン ネーム システム (DNS) レコードを構成します。 その後、コントローラー サーバーは、サーバーの可用性やその他のさまざまな条件に基づいて、ファーム内のサーバー間で受信要求を分散します。

Note

WFF で ARR を使用する必要はありません。サードパーティの負荷分散ソリューションと連携するように WFF を構成できます。 詳細については、「 Web ファーム フレームワーク 2.0 for IIS 7 の概要」を参照してください。

ARR を使用した負荷分散は複雑なトピックであり、そのほとんどはこのチュートリアルの範囲を超えています。 ただし、次の手順を使用して ARR モジュールをインストールし、負荷分散を開始できます。

WFF コントローラー サーバーで負荷分散を設定するには

  1. WFF コントローラー サーバーで、Web プラットフォーム インストーラーを起動します。

  2. [Web プラットフォーム インストーラー 3.0] ウィンドウの上部にある [製品] をクリックします。

  3. ウィンドウの左側にあるナビゲーション ウィンドウで、[ サーバー] をクリックします。

  4. [ アプリケーション要求ルーティング 2.5 ] 行で、[ 追加] をクリックします。

    [アプリケーション要求ルーティング 2.5] 行で、[追加] をクリックします。

  5. [ インストール] をクリックし、[ Web プラットフォームのインストール ] ウィンドウの指示に従います。

  6. インストールが完了したら、IIS マネージャーを起動し、[ 接続 ] ウィンドウでサーバー ファーム ノードをクリックします。 [ サーバー ファーム ] ウィンドウにいくつかの新しいアイコンが追加されていることに注意してください。

    インストールが完了したら、IIS マネージャーを起動し、[接続] ウィンドウでサーバー ファーム ノードをクリックします。[サーバー ファーム] ウィンドウにいくつかの新しいアイコンが追加されていることに注意してください。

  7. [サーバー ファーム] ウィンドウで、[負荷分散] をダブルクリックします。

  8. [ 負荷分散 ] ウィンドウで、負荷分散アルゴリズム ([ 最小現在の要求] など) を選択します。

    Note

    負荷分散アルゴリズムとその他の構成設定の詳細については、「 アプリケーション要求ルーティング モジュール」を参照してください。

    [負荷分散] ウィンドウで、負荷分散アルゴリズム ([最小現在の要求] など) を選択します。

  9. [操作] ウィンドウで、[適用] をクリックします。

これで、サーバー ファーム内のサーバーの基本的な負荷分散が構成されました。 すべての Web ファーム トラフィックをコントローラー サーバーに送信すると、可用性と選択した負荷分散アルゴリズムに従って、ファーム内のサーバー間で要求が分散されます。

ARR を使用して負荷分散を構成する方法の詳細については、「 アプリケーション要求ルーティング モジュール」を参照してください。

サーバー ファームの監視

コントローラー サーバーの IIS マネージャーを使用して、サーバー ファームの正常性をいつでも監視できます。 [ 接続 ] ウィンドウで、サーバー ファームを展開し、[ サーバー] をクリックします。 中央のウィンドウには、ファーム内の各サーバーの概要と、最近のアクティビティのトレース ログが表示されます。

[接続] ウィンドウで、サーバー ファームを展開し、[サーバー] をクリックします。

まとめ

これで、WFF サーバー ファームが稼働しているはずです。 必要な展開方法をサポートするようにプライマリ サーバーを構成できます。詳細については、「さらに読む」セクションを参照してください。構成は、サーバー ファーム内の各セカンダリ サーバーにレプリケートされます。

もっと読む

WFF の構成と使用に関するすべての側面の詳細については、 Microsoft Web Farm Framework 2.0 for IIS 7 の Web サイトを参照してください。