WSRM を使用した IIS 7 アプリケーション プールの CPU 使用率の管理

公開日: 2008 年 4 月 17 日 (作業者: walterov (英語))

更新日: 2008 年 5 月 9 日 (作業者: walterov (英語))

はじめに

一定時間内にアプリケーション プールのワーカー プロセスが消費可能な最大 CPU 時間は、これまで IIS の CPULimit メタベース プロパティ (英語) を使用して設定していました。Windows システム リソース マネージャー (WSRM) の登場により CPULimit の設定が不要になり、非推奨となっています。

管理者は WSRM を使用することによって、アプリケーション、サービス、プロセスへの CPU やメモリ リソースの割り当てを制御できるようになりました。このようなリソース管理は、システムのパフォーマンス向上につながります。また、アプリケーション、サービス、またはプロセスがシステムの他の部分と干渉する可能性を低減できます。加えて、コンピューター上でアプリケーションやサービスを実行するユーザーに、一貫性のある予測可能なエクスペリエンスを提供することも可能になります。

WSRM では、Equal_Per_IISAppPool というビルトイン ポリシーによって、リソースの管理と Web プールが統合されています。ハードウェアのホットアドやクラスターの変更 (クラスター構成で実行されている場合) が実施されると、WSRM のポリシーは自動的に他のリソース割り当てポリシーに切り替わります。

詳細については、「Windows システム リソース マネージャーの概要」を参照してください。

CPULimit メタベース プロパティをオフにする

1. IIS マネージャーを起動し、対象サーバーに接続します。

 2. [アプリケーション プール] ノードをクリックして、使用できるアプリケーション プールの一覧を表示します。各アプリケーション プールについて、右側のパネルにある [詳細設定] リンクをクリックして、[詳細設定] ダイアログ ボックスを開きます。

Ff454101.iismgr1(ja-jp,TechNet.10).jpg

3. [CPU] セクションで、CPU の制限プロパティが 0 (既定値) に設定されていることを確認します。

Ff454101.advset(ja-jp,TechNet.10).jpg

ビルトイン IIS ポリシーを使用する

1. Web の役割をインストール後、Windows システム リソース マネージャーをインストールします。

2. Windows の [スタート] ボタンをクリックし、[管理ツール]、[Windows システム リソース マネージャー] の順にクリックして WSRM を起動します。

Ff454101.start WSRM(ja-jp,TechNet.10).jpg

3. Equal_Per_IISAppPool ビルトイン ポリシーを起動します。

a. 左側のウィンドウにある [リソース割り当てのポリシー] ノードを展開します。

Ff454101.wsrm(ja-jp,TechNet.10).jpg

b. 左側のウィンドウで、Equal_Per_IISAppPool を右クリックします。
c. [管理ポリシーとして設定] を選択します。
d. カレンダーが無効になることを確認するメッセージが表示されたら、[OK] をクリックします。

Ff454101.equappppolicy(ja-jp,TechNet.10).jpg

e. IIS の負荷がかかっているシステムの挙動をチェックします。WCAT を使用して、サーバーへの負荷をシミュレーションすることもできます。このツールは IIS 6 リソース キットに含まれます。このキットは https://www.microsoft.com/downloads/details.aspx?FamilyID=56fc92ee-a71a-4c73-b628-ade629c89499&DisplayLang=en (英語) からダウンロードできます。

カスタム IIS ポリシーを作成する (任意)

1. さまざまなアプリケーション プールに対応できるよう少なくとも 2 つ以上のプロセス一致条件 (PMC) を作成します。

a. 左側のウィンドウにある [プロセス一致条件] ノードを右クリックします。
b. [新しいプロセス一致条件] を選択します。
c. [新しいプロセス一致条件] ダイアログ ボックスが表示されます。

Ff454101.newPMCdlg(ja-jp,TechNet.10).jpg

d. PMC の名前を入力し、[追加] をクリックします。
e. [規則の追加] ダイアログ ボックスが表示されます。
f. [ファイルまたはコマンド ライン] タブを選択します。
g. [含めるファイルまたはコマンド ライン] エリア内をクリックし、一致条件を入力します。
h. 次の形式で入力します (引用符は不要): '@w3wp.exe.*<AppPoolName>'

Ff454101.addrule(ja-jp,TechNet.10).jpg 

i. この PMC と他のアプリケーション プール (またはプロセス) を適合させるためのコマンド ラインを追加します。
j. [OK] をクリックします。
k. 追加する PMC ごとに、上記の手順を繰り返します。

2. リソース割り当てのポリシー (RAP) を作成します。

a. 左側のウィンドウにある [リソース割り当てのポリシー] ノードを右クリックします。
b. [新しいリソース割り当てのポリシー] をクリックします。
c. [新しいリソース割り当てのポリシー] ダイアログ ボックスが表示されます。
d. RAP の名前を入力します。

Ff454101.NewRAP(ja-jp,TechNet.10).jpg 

e. [追加] をクリックします。
f. [リソース割り当ての追加または編集] ダイアログ ボックスが表示されます。
g. この割り当てを適用する PMC を (ドロップダウン リストから) 選択します。
h. PMC に割り当てるプロセッサーの割合を入力します。

Ff454101.Add-EditResAlloc1(ja-jp,TechNet.10).jpg

i. [OK] をクリックします。
j. RAP で管理するその他すべての PMC に、リソース割り当てを追加します。
k. [OK] をクリックします。

3. ポリシーを有効にします。

a. 上記の手順で作成した RAP を右クリックします。
b. [管理ポリシーとして設定] を選択します。
c. カレンダーを無効にすることを確認するメッセージが表示されたら、[はい] をクリックします。
d. IIS を実行し、負荷時のシステムの挙動をチェックします。