ネットワーク負荷分散 - 概念と注意事項
この記事では、ネットワーク負荷分散に関する情報を提供します。
適用対象: Windows Server 2003
元の KB 番号: 556067
概要
この記事では、ネットワーク負荷分散 - Microsoft クラスタリング テクノロジに関する情報を提供します。
詳細
質問: NLB クラスターをテストする方法
たとえば、クラスター内にノードが見つかっており、負荷分散が機能しているかどうかをチェックしたいとします。 4 つのノードに異なる 4 つの共有を作成し、1 台のコンピューターからアクセスしようとします。 UNC パッチを使用して閲覧するときは、毎回異なる共有を取得する必要があります。
収束パラメーターは、次のレジストリ値を調整することで調整できます。
- AliveMsgPeriod
- AliveMsgTolerance
複数の VIP (仮想 IP) の構成は、Windows 2003 エディション以降でのみ使用できます。
STOP コマンドと DRAINSTOP コマンドの間には異なるがあります。 STOP コマンドはホスト上の NLB サービスを停止し、既存のすべての接続が失われますが、DRAINSTOP では NLB が現在の接続を処理し、同時に新しい接続を無効にすることができます。
IGMP は、クラスターがマルチキャスト サポートを使用するように構成されている場合にのみ構成できます。
NLB マネージャーを使用して構成するときに、サーバーにネットワーク プロパティを開く必要はありません。
NLB には、すべてのサーバーで正しいローカル時刻が必要です。
NLB では、アプリケーションのエラーが検出されません。 たとえば、Web サーバー サービスが停止しても、NLB はそのサーバーに TCP/IP 要求を送信します。
NLB は、データの変更がほとんど発生しない TCP/IP ベースのアプリケーションに使用されます。
クラスター アダプターへの TCP/IP 以外のプロトコルはありません。
NLB クラスターはユニキャスト モードまたはマルチキャスト モードで動作できますが、両方で動作することはできません。
Microsoft では、サーバークラスターと NLB クラスターの組み合わせをサポートしていません。
Mix-NLB は許可されます。 Windows NT WLBS は Windows 2000 NLB で実行できます。
NLB では、トークン リングと ATM ネットワークはサポートされていません。 10 MB と 100 MB のイーサネット ネットワークでのみテストされています。
単一ネットワーク カードの制限事項: ユニキャスト モードで実行する場合:
- クラスター ホスト間の通常のネットワーク通信は不可能です。 クラスター内の個々のコンピューターを対象としたネットワーク トラフィックは、クラスター内のすべてのコンピューターに対して追加のネットワーク オーバーヘッドを生成します。
- さらに、このコンピューターでネットワーク負荷分散マネージャーを使用して NLB ノードを構成および管理することはできません。
障害が発生したコンピューターまたはオフライン コンピューターから自動的に検出および回復します。 ホストが追加または削除されたときに、ネットワークの負荷が自動的に分散されます。 10 秒以内にワークロードを復旧して再配布します。
ホストがオフラインになると、負荷は他のノードに自動的に再配布されます。 そのホストへのアクティブな接続はすべて失われます。 ノードを国際的にオフラインにする場合は、drainsstop コマンドを使用して、ノードをオフラインにする前にすべてのアクティブな接続にサービスを提供できます。
NLB クラスターで実行されているアプリケーションを混在させることができます。 たとえば、すべてのノードで IIS Web サーバーを実行し、1 つのノードでのみ SQL サーバーを実行できます。 この方法では、データベースから SQL Server ノードへのトラフィックのみを指定できます。
NLB とクラスタリングの両方を同じコンピューターでアクティブにすることはできませんが、2 つのクラスター (4 ノード NLB クラスターと 2 つのノード サーバー クラスター) を形成できます
両方のテクノロジに個別のサブネットが必要ですか?
NLB 1 つのクラスターで最大 32 台のコンピューターをサポートしますが、RRDNS を使用して番号を作成できます。
NLB は、同じノードまたは異なるノード上のクライアントから複数の要求を負荷分散できます。 これはランダムに行われます。
NLB は NLB ノードの障害を自動的に検出して削除しますが、アプリケーションが実行されているか、動作を停止しているかを判断することはできません。 これは、スクリプトを実行して手動で行う必要があります。
新しいホストが追加または削除されると、自動的に負荷分散が行われ、10 秒以内に実行されます。
異なるアプリケーションの負荷分散を行うために、異なる仮想クラスター IP を作成できます。
ポート 規則はクラスター全体で同じである必要がありますが、ポート規則は複数の仮想 IP で異なる場合があります。
NLB は元のコンピューター名と IP アドレスと重複しません。
NLB は、複数のネットワーク アダプターで有効にすることができます。 これにより、異なる NLB クラスターを構成できます。
NLB はユニキャストまたはマルチキャストの 2 つのモードで動作できますが、両方のモードを同時に有効にすることはできません。 ユニキャストは既定のモードです。
NLB を使用すると、各ホストが受信 TCP/IP トラフィックを検出して受信できます。 このトラフィックは、クラスター内のすべてのホストによって受信され、NLB ドライバーは、定義されたポート規則に従ってトラフィックをフィルター処理します。 NLB ノードは、すべてのノードで NLB が有効になっているため、クライアントからの受信トラフィックに対して相互に通信しません。 受信トラフィックを分散するために、各ホストに統計マッピング ルールが作成されます。 クラスターに変更 (ノードの削除や追加など) がない限り、このマッピングは変わりません。
収束は、クラスターの状態を再構築するプロセスです。 このプロセスは、クラスターに変更がある場合に呼び出されます (たとえば、ノードの失敗、クラスターの脱退、再参加など)。 このプロセスでは、クラスターによって次のアクションが実行されます。
- クラスターの状態を再構築します。
- ホスト優先度が最も高いホストを既定のホストとして指定します。
- 負荷分散されたトラフィックは、残りのホスト間で再パーティション分割または再配布されます。
このプロセス中、残りのホストは引き続き受信クライアント トラフィックを処理します。 ホストがクラスターに追加された場合、このホストは負荷分散されたトラフィックの共有を受信できます。 クラスターの拡張は進行中のクラスター操作には影響せず、インターネット クライアントとサーバー アプリケーションの両方に透過的に実現されます。 ただし、クライアント アフィニティを選択すると、複数の TCP 接続にまたがるクライアント セッションに影響する可能性があります。これは、クライアントが接続間で異なるクラスター ホストに再マップされる可能性があるためです。 アフィニティの詳細については
クラスター内のすべてのノードがハートビート メッセージを出力して、クラスター内の可用性を伝えます。 ハートビート メッセージを送信するための既定の期間は 1 秒であり、ホストから 5 つのハートビート メッセージが見つからなかった場合、NLB は収束プロセスを呼び出します。
同じネットワーク アダプターに複数の NLB クラスターを構成し、それらの各 IP アドレスに特定のポート規則を適用できます。 これらは"仮想クラスター" と呼ばれます。
Windows 2003 には、ネットワーク負荷分散マネージャーと NLB.exe - コマンド ライン ツールという GUI ツールが付属しています。 Windows 2000 では、WLBS.exe であり、GUI ツールもありません。 この GUI ツールは XP にインストールして、Windows 2003 NLB のみを管理することもできます。 NLB Manager では、DCOM と WMI が使用されます。
NLB を構成するノードの Administrators グループのメンバーである必要があります。 NLB マネージャーを実行するために管理者である必要はありません。
単一 NIC > NLB ユニキャスト モードで有効 - ユニキャスト モードの 1 つのネットワーク アダプターにホスト内通信がないため、このコンピューターで NLB マネージャーを使用して他のホストを構成および管理することはできません。
ホスト内通信は、マルチキャスト ノードでのみ可能です。 同じ NLB クラスター内のサーバー間の通信を許可するには、各サーバーに次のレジストリ エントリが必要です。 "ユニキャストInterHostCommSupport" という名前の DWORD キーを 1 に設定し、各ネットワーク インターフェイス カードの GUID (HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WLBS\Parameters\Interface\{GUID})
アダプターの数に制限はありません。 ホストごとに異なるネットワーク アダプターを使用できます。
ユニキャスト モードの単一ネットワーク アダプター
- アダプターの独自の MAC アドレスが無効になっている: このアドレスは自動的に生成されるクラスター MAC アドレスに置き換えられます。
- 専用 IP アドレスとクラスター IP アドレスの両方が、クラスター MAC アドレスに解決されます。
- クラスター ホスト間の通常のネットワーク通信はできません。
クラスター パラメーター
- クラスター MAC アドレスは、クラスター IP アドレスを使用して自動的に生成され、サブネット全体で一意です。
- IPSEC が有効になっている場合、リモート コントロールは機能しません。 リモート コントロールでは、UDP 経由のポートで 1717 と 2504 が使用されます。
- 優先度一意のホスト ID: 最も低い番号が最も高い - この優先順位を持つホストは、ポート 規則の対象とされていないすべての受信トラフィックを処理します。
クラスター ノードが同じ優先順位で結合されている場合、クラスターの一部として受け入れられないが、他のノードは引き続き動作します。 これは既定のホストと呼ばれます。 既定のホストが失敗した場合、優先度が高いもう一方のノードは既定のホストとして機能できます。 - TCP/IP プロパティでは、最初に専用 IP アドレスを入力する必要があります。 DHCP を有効にすることはできません。 これは VIP にも当てはまります。
- 1 つのクラスターに 32 を超えるポート規則を追加することはできません。また、クラスター全体で同じである必要があります。
ネットワーク負荷分散マネージャー
NLB マネージャーが現在これを使用している場合、ホストのネットワーク プロパティを開くできません。
リモート コンピューターに管理者権限がある限り、NLB は任意のコンピューターに対して構成できます。
Windows 2003 で NLB を正常に構成するには、NLB マネージャーを使用します。すべてのホストから NLB がオフになっていることを確認します。
NLB マネージャーを使用してホストを追加すると、ポート規則と関連するオプションが初期ホストから継承されます。
ユニキャスト モードの 1 つのネットワーク アダプターでホスト内通信ができないので、NLB がユニキャスト モードのシングル アダプターで動作している場合は、NLB マネージャーから他のホストを開くできません。 これを実現するには、ユニキャストホストInterCommSupportというレジストリを使用し、1 に設定します。
NLB Manager の [資格情報] オプションを使用して、リモート ホストの資格情報を指定できます。 NLB マネージャーは、この資格情報を使用してリモート ホストに接続しようとします。
TCP/IP プロパティ設定または NLB マネージャーのいずれかを使用する必要がありますが、両方を使用して NLB を構成しないでください。
NLB マネージャーは、クラスター内で構成が正しく構成されていないホストを接続または表示しません。
管理メンバーシップを持たないホストは、NLB Manager に表示されません。
すべてのポート範囲の一覧は、ポート範囲で並べ替えられます。
NLB には、ドメイン コントローラー、メンバー サーバー、ワークグループ サーバーなどが混在している場合があります。 これは実際には NLB の制限ではありません。 NLB は、組み込みの管理者アカウントを使用してコンピューターにアクセスできる必要があります。
サーバーで NLB を有効にすると、既定のレジストリ エントリは次の下に作成されます。
HKLM\System\CurrentControlSet\Services\WLBS
DIP と VIP を正しく入力する必要があります。 この手順を省略した場合、クラスター ノードは相互に収束しますが、受け入れてトラフィックを受け入れることはできません。
IP アドレスの競合メッセージは、VIP に対してのみ表示されます。 そのホストで NLB をオフにした場合は、すべてのアダプターの VIP が削除されていることを確認します。
監視には、NLB で次のツールを使用できます。
- ClusterSenitel
- Data Warehouse センター
- HTTPMon - IIS サービスを監視します。
- Mom
PPTP 要求を負荷分散する場合は、各 NLB ホストに 2 つのネットワーク アダプターが必要です。
2 つのネットワーク アダプターを構成する場合は、TCP/IP プロパティにゲートウェイ アドレスを指定する必要があります。 ゲートウェイは FE NIC に入力する必要があります。
NLB は、パブリックまたはインターネットに接続するネットワーク アダプターで有効にする必要があります。
Telnet 接続の負荷分散では、関連付けられているポートを開く必要があります。 telnet 接続は IP ごとに 1 つの接続のみにまたがるため、この場合はアフィニティは必要ありません。
NLB の元の実装は WLBS です。 すべてのイベントは、WLBS のソースに記録されます。 NLB のコマンド ライン インターフェイスは WLBS であり、Windows 2003 では NLB です。
NLB Manager WMI プロバイダーは、コンピューター名が数字で始まるクラスター ホストに接続できません。 これはバグです。
NLB はアプリケーション データをレプリケートしません。 Microsoft コンテンツ レプリケーション システム (CRS) またはサード パーティ製ソフトウェアを使用する必要がある場合があります。
NLB では、サービスの停止や開始も監視されません。 リソース キットに付属する HTTPMon を使用できます。 以下で説明する次のツールを使用できます。
例外モニター
HTTPMon
サード パーティ製の監視ツール
- SiteScope by Mercury Interactive Corporation
- AppManager by NetIQ
- WhatsUp Gold by Ipswitch
単一 NIC を使用したユニキャスト モード
ユニキャスト モードでは、NLB によってネットワーク アダプターの MAC アドレスがクラスター MAC に変更されます。 これで、クラスターで使用できる MAC アドレスは 1 つだけです。つまり、クラスター MAC であり、この MAC アドレスはすべてのクラスター ホストで同じである必要があります。 ネットワーク リダイレクターは、同じソースからの要求を同じ MAC アドレスに転送できません。また、ホストが相互に通信できない場合は 、単一 NIC を使用したユニキャスト モードの欠点です。 ホストが相互に通信できるようにするには、マルチキャスト モードを有効にするか、2 つ目の NIC をインストールします。
- ネットワーク負荷分散マネージャーを使用すると、"負荷分散を構成するためのインターフェイスがありません" が表示される場合があります。 サーバーをイメージ化したか、仮想マシンにコピーした場合、このエラーが発生します。 すべてのネットワーク GUID は同じになります。 この問題を解決するには、デバイス マネージャーからネットワーク アダプターを再インストールする必要があります。
- NLB マネージャーを使用して NLB を構成しているときに、クラスターからホストを削除しました。 その状態が引き続き保留中の状態が長時間表示される場合は、ホスト内の NLB を手動で無効にします。 マネージャーから消えます。
- ユニキャスト モードで単一 NIC で NLB クラスターを実行している場合は、すべてのホストを追加した後、ローカル ホスト (NLB マネージャーを実行している場所) を追加することをお勧めします。
- ユニキャストまたはマルチキャスト モードで単一 NIC でクラスターを実行している場合は、クラスターに含まれていない別のコンピューターで NLB マネージャーを実行することをお勧めします。
- ローカル ホストを単一 NIC ユニキャスト モードで NLB Manager に追加し、更新すると、他のすべてのホストに到達できなくなります。
- UNC を使用して VIP にアクセスすると、ドメインに属していないホストとドメインのメンバーに要求が転送されている場合、ログイン ボックスが表示されることがあります。 ユーザーの資格情報を指定する必要がある場合があります。
- NLB ノード間のクロス ケーブルがハートビート メッセージなどに対して正しく動作しません。 これは、サーバー クラスタリングで優れた機能を発揮します。
- ハートビート メッセージは、ユニキャスト モードまたはマルチキャスト モードでクラスターを動作している場合でも、常に NLB 対応 NIC 経由で送信されます。
- ホストで実行されているアプリケーションが停止または停止すると、NLB はアプリケーションの状態を監視しないため、そのサーバーに要求を転送し続けます。
- NLB マネージャーで構成できるのは、Windows 2003 以降のバージョンのみです。 ただし、以前のバージョンの Windows を管理することはできますが、NLB マネージャーを使用して構成することはできません。
- NLB のリモート コントロールでは、UDP ポート 2504 が使用されます。
Windows 2008 ネットワーク負荷分散の機能強化
- WINDOWS Server 2008 for NLB には IPV6 のサポートがあります。 IPV6 ホストは NLB ノードに参加できます。
- WINDOWS Server 2008 for NLB では、複数の専用 IP アドレスがサポートされています。
- Windows 2003 から Windows 2008 へのローリング アップグレードをサポートします。
- 無人 NLB インストールのサポート
- サーバー Core での NLB のサポートも行います。
Community ソリューション コンテンツの免責事項
Microsoft の企業および/またはそれぞれのサプライヤーは、ここに含まれる情報および関連するグラフィックスの適合性、信頼性、または正確性について何ら表明を行いません。 このような情報および関連するグラフィックスはすべて、いかなる種類の保証も行わずに「as is」 で提供されます。 Microsoft および/またはそれぞれのサプライヤーは、この情報および関連グラフィックに関して、商品性、特定の目的に対する適性、作業マンライクな努力、タイトルおよび非侵害に関する黙示の保証と条件を含む、すべての保証および条件を放棄します。 お客様は、いかなる場合も、Microsoft および/またはサプライヤーが直接、または 間接的、懲罰的、偶発的、特別な、結果的な損害、または、Microsoft またはサプライヤーが損害の可能性について助言を受けた場合でも、契約、不法、過失、厳格な責任など、ここに含まれる情報および関連するグラフィックの使用または使用に関連する、または使用できない方法に関連するいかなる方法であれ、使用の損失、データまたは利益に対する損害を含むがこれらに限定されない損害。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示