アプリケーション要求ルーティング処理 (ARR) サーバーの複数のインスタンスの使用
作成者: Won Yoo
概要
このトピックでは、IIS 7.0 以降の Microsoft External Cache を構成する手順について説明します。この機能を使用すると、アプリケーション要求ルーティング (ARR) サーバーの複数のインスタンス間でホスト名アフィニティ データを管理することができます。
IIS の External Cache は次の場合にのみ必要となります。
- ホスト名アフィニティ機能を使用する。
- 環境内で複数の ARR サーバーが使用されている。
External Cache は、IIS 用のディスク ベースのキャッシュ モジュールです。
目的
アプリケーション要求ルーティングで IIS 用の Microsoft External Cache を構成して使用する。
前提条件
このチュートリアルでは、次の前提条件が必要です。
- Windows 2008 (SKU は任意) 以降で実行される最低 2 つの IIS (7.0 以降)。
- Microsoft アプリケーション要求ルーティング処理バージョン 1 と依存モジュール (Microsoft External Cache Version 1 を含む)。
- サイトとアプリケーションが正常に実行されているアプリケーション サーバー (2 台以上)。
- ARR でファイルの読み取りと書き込みを行うことができるファイル共有 (1 つ)。
アプリケーション要求ルーティング処理バージョン 1 がインストールされていない場合は、次からダウンロードしてください。
このドキュメントに記載されている手順に従って、アプリケーション要求ルーティング処理をインストールします。
少なくとも 2 台の ARR サーバーと 2 台のアプリケーション サーバーが必要です。 共有構成を使用して ARR サーバーの構成を同じ状態に維持すると共に、別の共有構成を使用してアプリケーション サーバーの同期状態を維持することができます。共有構成の詳細については、こちらの記事を参照してください。
もう 1 つの前提条件として、アプリケーション要求ルーティング処理 (ARR) サーバー グループの定義と構成に関するページで説明されている手順を使用して、サーバー ファームを定義し、構成する必要があります。
手順 1 - External Cache を有効にする。
UI を使用して External Cache を有効にするには:
- IIS マネージャーを起動します。
- このチュートリアル用に作成されたサーバー ファームを選択します。
- 次のアイコンが表示されます。
- [Server Affinity](サーバー アフィニティ) をダブルクリックします。
- 前述のように、External Cache が必要なのは、ホスト名アフィニティを使用する場合で、かつ ARR のインスタンスが複数ある場合のみです。 そのため、[Use host name](ホスト名を使用する) チェック ボックスは必ずオンにしてください。
- External Cache を有効にするために、[Use external cache](外部キャッシュを使用する) チェック ボックスをオンにします。 [ファイル共有パス] ボックスは必須フィールドです。ARR サーバー間でホスト名アフィニティの状態を維持するために ARR サーバーがアクセスする場所を指定します。
- すべての ARR サーバーで上記の手順を繰り返します。
- 正しく機能することを確認するために、特定のホスト名を含んだ要求をいずれかの ARR サーバーに送信します。 このホスト名がどのアプリケーション サーバーにアフィニタイズされているかを書き留めておいてください。 他の ARR サーバーに同じ要求を送信します。 このホスト名を含んだ要求がどの ARR サーバーによって処理されても、それらがすべて同じアプリケーション サーバーにルーティングされることが必要です。
- データが書き込まれているファイル共有も確認することをお勧めします。
コマンドラインを使用して External Cache を有効にするには:
管理者特権でコマンド プロンプトを開きます。
%windir%\system32\inetsrv
に移動します。ホスト名アフィニティを有効にするには、次のように入力します (次の例では、サーバー ファームの名前として myServerFarm を使用します)。
appcmd.exe set config -section:webFarms /[name='myServerFarm'].applicationRequestRouting.affinity.useHostName:"True" /commit:apphost
External Cache を有効にして構成するには、次のスクリプトを入力します (次の例では、先ほど UI の手順で使用したものと同じ値を使用します)。 ******** の部分はパスワードに置き換えてください。
appcmd.exe set config -section:system.webServer/externalCache/diskCache /[name='ARRCache'].path:"\\wonyoo-w2k8-3\IISShared" /[name='ARRCache'].userName:"redmond\wonyoo" /[name='ARRCache'].password:"********" /commit:apphost
まとめ
IIS の Microsoft External Cache を有効にし、アプリケーション要求ルーティング処理のホスト名アフィニティ機能で使用するための構成が完了しました。 ARR 層に高可用性を確保する方法について詳しくは、次の記事をご覧ください。