キャッシュ クラスターの正常性の管理 (AppFabric 1.1 キャッシュ)

Microsoft AppFabric 1.1 for Windows Server キャッシュ クラスターを正常な状態に保つための要素を理解することは重要です。ここでは、キャッシュ クラスターの動作状態の管理に関する一般的な概念とガイダンスを説明します。キャッシュ クラスターの動作状態監視に使用されるツールの詳細については、「正常性の監視ツール (AppFabric 1.1 キャッシュ)」を参照してください。

キャッシュ クラスターの動作状態にかかわる一般的な要素

キャッシュ クラスターの動作状態を決定する主な要因は次のとおりです。

  • 物理リソース

  • キャッシュ固有の構成設定

  • 環境の設定と変動

物理リソース

キャッシュ クラスターの動作状態を適切に管理するには、各キャッシュ ホスト上の基本物理リソースを監視および管理する必要があります。次に、最も重要な物理リソースの一部について簡単に説明します。

  • メモリ -- キャッシュ クラスターを使用するアプリケーションのメモリ要件を理解することが重要です。これには、キャッシュ項目の平均レート、その平均サイズ、平均有効期間、およびメモリ要件に影響するその他の要因の情報が含まれます。平均値を使用して計画できる場合もありますが、テスト環境で計画する必要がある場合もあります。Windows PowerShell の Get-CacheHostConfig コマンドを使用して、各キャッシュ ホスト用に確保されたメモリ量を調べることができます。キャッシュ ホストがキャッシュ クラスターに追加された時点でこのサイズは既定値に設定されていますが、Set-CacheHostConfig コマンドを使用すると、キャッシュ用に確保するメモリ量を変更できます。このドキュメントでは、キャパシティ プランニングについては詳しく説明しません。

    重要

    実際のメモリ要件がキャッシュ ホストの容量より大きい場合、パフォーマンスの問題や、スロットルと呼ばれる状況が発生することがあります。スロットルは、キャッシュ ホストのメモリが不足している場合に発生します。この状態では、キャッシュ クラスターは新しい情報をキャッシュ ホストに書き込めなくなり、アプリケーションにエラーが返されることがあります。この状態は、一般に、キャッシュの削除が無効になっている場合に発生しますが、他のプロセスによる外部メモリ不足が原因であることもあります。スロットルを識別して解除する方法の詳細については、「スロットル」を参照してください。

  • CPU -- プロセッサ使用率が高いと、アプリケーションのパフォーマンスに悪影響が出ることがあります。ここでいうアプリケーションには、各キャッシュ ホスト上のキャッシュ サービス (DistributedCacheService.exe) が含まれます。プロセス名で CPU 利用率を調べるには、パフォーマンス モニターやタスク マネージャーを使用します。DistributedCacheService.exe 以外のプロセスが CPU を長時間使用している場合は、そのプロセスをキャッシュ サービスと同じサーバーで実行する必要があるかどうか評価します。

  • ネットワーク帯域幅 -- 分散型キャッシュ サービスの場合、ネットワークの動作状態と帯域幅はきわめて重要です。パフォーマンス モニターやその他のネットワーク監視ツールを使用して、キャッシュ クラスターに悪影響を及ぼす潜在的な問題がないかどうか判断します。

キャッシュ固有の構成設定

キャッシュ クラスターの動作状態は、各キャッシュ ホスト、およびキャッシュを使用する各アプリケーションの特性によっても影響を受けます。そのような構成の詳細と、キャッシュ クラスターの動作状態との関連について、それらのいくつかを次の一覧に示します。

  • 削除 -- キャッシュの削除の有効と無効を切り替えることができます。削除が発生するのは、キャッシュ ホストのメモリが一定のしきい値を超えた場合です。EvictionType を確認するには、Windows PowerShell の Get-CacheConfig コマンドを使用します。EvictionTypeNone の場合、削除は無効になっています。削除が無効になっているキャッシュについては、需要を満たせるだけの十分なキャッシュ ホストが存在し、各キャッシュ ホストに十分な物理メモリが存在するように細心の注意を払う必要があります。詳細については、「有効期限と削除」を参照してください。削除の問題の診断とトラブルシューティングの詳細については、「削除」を参照してください。

  • 有効期限 -- 有効期限設定もメモリの増大に影響します。キャッシュ構成設定では、既定の TimeToLive が指定されます。これは、オブジェクトがキャッシュに配置されてから有効期限切れになるまでの期間です。Expirable を false に設定することで、キャッシュの有効期限を無効にすることもできます。Windows PowerShell の Get-CacheConfig コマンドでこれらの設定を表示できます。アプリケーションでも、キャッシュに格納されるオブジェクトの TimeToLive 値を独自に指定できます。有効期限が長いと、キャッシュ ホストのメモリ使用量が大きくなります。ただし、キャッシュ ホスト上のメモリ使用量が HighWatermark 設定に達すると、キャッシュの EvictionTypeNone に設定されている場合を除き、これらのオブジェクトまで削除される可能性があります。Windows PowerShell の Get-CacheHostConfig コマンドで HighWatermark の設定を表示できます。有効期限の詳細については、「有効期限と削除」を参照してください。有効期限の問題の診断とトラブルシューティングの詳細については、「有効期限」を参照してください。

  • カスタム領域 -- アプリケーションはカスタム領域を作成できます。領域は常に 1 台のキャッシュ ホスト上に存在します。このため、領域に必要なメモリ量が任意のキャッシュ ホスト上の物理メモリを超過した場合、問題になる可能性があります。各キャッシュ ホスト上の領域を確認するには、Windows PowerShell の Get-Cache コマンドを使用します。これが問題である場合、アプリケーションを再設計して使用する領域を小さくするか、クラスター内の各キャッシュ ホストに物理メモリを追加します。

  • 高可用性 -- 高可用性キャッシュ オプションも、メモリ要件に影響します。キャッシュで高可用性が有効になっている場合、すべてのキャッシュ項目のセカンダリ コピーが別のキャッシュ ホストに存在します。このため、ターゲット キャッシュ クラスター上のそのキャッシュのメモリ要件は 2 倍になります。また、項目をセカンダリ キャッシュ ホストにコピーする必要があるため、ネットワークと CPU の負荷も増加します。Windows PowerShell の Get-CacheConfig コマンドで高可用性オプション設定を表示できます。Secondaries1 に設定されている場合、高可用性機能は有効になっています。高可用性機能の詳細については、「高可用性」を参照してください。

  • リード ホスト -- キャッシュ クラスター構成ストアに XML プロバイダーを使用している場合は、キャッシュ クラスターにおけるリード ホストの重要性について理解する必要があります。リード ホストの過半数が動作を停止すると、キャッシュ クラスター全体が利用できなくなります。キャッシュ ホストがリード ホストであるかどうかを確認するには、Windows PowerShell の Get-CacheHostConfig コマンドか、Export-CacheClusterConfig コマンドを使用します。キャッシュ ホストをリード ホストにするには、Import-CacheClusterConfig コマンドを使用します。リード ホストの詳細については、「リード ホスト」を参照してください。リード ホストの数は、手動で変更しない限り、キャッシュ クラスターの規模で決定されます。

    キャッシュ クラスターの規模 リード ホストの数

    1

    3

    5

環境の設定と変動

環境設定や運用タスクもキャッシュ クラスターに影響します。このような要因の一部を次に示します。

  • ファイアウォール -- キャッシュ クラスターと通信するキャッシュ ホストに対して、ファイアウォールを適切に構成する必要があります。AppFabric では、カスタム グループ "Microsoft AppFabric 1.1 for Windows Server: AppFabric キャッシュ サービス" 内に "AppFabric キャッシュ サービス (TCP-In)" という名前の Windows ファイアウォールのカスタム規則が導入されます。Windows ファイアウォールを使用している場合は、この規則を有効にします。"リモート サービス管理" のファイアウォール規則も有効にします。これは、AppFabric 構成ウィザードのオプションを使用して実行できます。別のファイアウォールを使用している場合は、そのファイアウォール アプリケーションでカスタム規則を作成または有効化する必要があります。詳細については、「AppFabric キャッシュのトラブルシューティング」のファイアウォールに関するセクションを参照してください。

  • オペレーティング システムとソフトウェアの更新プログラム -- サーバーの動作状態やセキュリティを維持するために、キャッシュ ホスト上のオペレーティング システムやソフトウェアに更新プログラムを適用しなければならないことがあります。すべてのサーバーに対して同時に更新プログラムを適用することができます。その場合は、まず Stop-CacheCluster コマンドでキャッシュ クラスターを停止します。または、他のキャッシュ ホストがキャッシュ クラスター内で稼働し続けている間に、1 台以上のキャッシュ ホストに同時に更新プログラムを適用することもできます。この方法を使用する場合は、いくつかの考慮事項があります。詳細については、「キャッシュ サーバーの更新」を参照してください。

  • IP アドレスの変更 -- キャッシュ ホストの IP アドレスを変更すると、キャッシュ クラスター内のキャッシュ ホスト間の通信に問題が発生することがあります。

関連項目

概念

AppFabric 1.1 キャッシュ展開および管理ガイド

  2012-03-05