ロードバランシングの構成

負荷分散サーバー (LBS) サービスとして機能する各 RPC プロキシ マシンは、サーバー ファーム内のサーバーに関する知識を持つ LBS サービスとして構成する必要があります。 必要に応じて、既定のリソースを設定し、プロキシから LBS、LBS から LBS への RPC 呼び出しのセキュリティを設定できます。 これらの設定は、次に示すように、一連の 必要なレジストリ キーオプション レジストリ キー によって構成されます。

必要なレジストリ キー

LBS サーバーを構成するには、いくつかのレジストリ キーと値が必要です。 キーが見つからないか、エラーが入力された場合、Windows イベントがログに記録されます。 ログに記録されるイベントについては、各キーと値の説明を参照してください。

サーバー ファームを構成するには、LBSConfiguration という名前HKLM\SOFTWARE\Microsoft\Rpc\RpcProxy レジストリ キーを作成する必要があります。 LBSConfiguration キーの下に、サーバー ファーム内のリソースごとにキーが作成されます。 キー名は、リソースの GUID の文字列表現です。 少なくとも 1 つのリソース キーが存在する必要があります。このリソースは、RPC/HTTP バインドを作成するときに、バインド ハンドル (RPC_BINDING_HANDLE) 上のクライアントによって設定されるUUIDと同じです (詳細については、RpcBindingSetObjectを参照してください)。 各リソース UUID キーの下に、使用される構成を記述する ConfigurationType という名前の DWORD 値が存在する必要があります。 また、ServerFarm というセミコロンで区切られたサーバー識別子のREG_SZが存在する必要があります。 ServerFarm キーで識別されるサーバーは、負荷分散サーバー ファームのメンバーであるサーバーです。

必要なレジストリ キーと値の詳細な内訳を次に示します。

HKLM\SOFTWARE\Microsoft\Rpc\RpcProxy\LBSConfiguration

レジストリ キー。 LBSConfiguration キーは、LBS 構成を保持するレジストリ キーです。 これには、負荷分散するリソース UUID 、各リソースの構成の種類、および負荷分散に参加するサーバー ファーム内のサーバーが含まれます。 このキーが見つからないか無効な場合、LBS は構成されていると見なされず、LBS サービスは実行されません。

-

HKLM\SOFTWARE\Microsoft\Rpc\RpcProxy\LBSConfiguration\XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

レジストリ キー。 リソース UUID キーは、負荷分散するリソース UUID を識別します。 このリソース UUID は、クライアントがバインディング ハンドルRPC_BINDING_HANDLEに設定するUUIDと同じです。 負荷分散するには、少なくとも 1 つのリソース UUID が必要です。複数のリソース UUID が存在する可能性があります。 サーバー ファームは 1 つだけであり、すべてのエンドポイントはサーバー ファーム内のすべてのサーバー上に存在する必要があります。 このキーを有効な UUID に解析できない場合、イベント RPCPROXY_EVENTLOG_LB_INVALID_KEY (0xC0000006) は Windows イベント ログに記録されます。

-

HKLM\SOFTWARE\Microsoft\Rpc\RpcProxy\LBSConfiguration\XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\ConfigurationType

DWORD。 ConfigurationType DWORD は、Resource UUID キーの下に格納されます。 使用できる値は 1 のみです。 この値が 1 以外の場合、イベント RPCPROXY_EVENTLOG_LB_UNKNOWN_CFG_TYPE (0xC0000007) は Windows イベント ログに記録されます。

-

HKLM\SOFTWARE\Microsoft\Rpc\RpcProxy\LBSConfiguration\XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\ServerFarm

REG_SZ。 ServerFarm レジストリ値には、サーバー識別子のセミコロン区切りのリストが含まれています。 サーバー識別子の形式は次のとおりです。

"ServerID1,ServerPort1,LBSPort1,[LBSPort2, ...LBSPortN];"

ServerFarm レジストリ キーに複数のサーバー識別子を一覧表示する必要があります。 セミコロンで区切る必要があります。 次の表では、サーバー識別子の一部であるフィールドについて説明します。 このフィールドを正しく解析できない場合は、イベント RPCPROXY_EVENTLOG_LB_BAD_CONFIG_ENTRY (0xC0000008) が Windows イベント ログに記録されます。

識別子フィールド 要件 説明
ServerID 必須 サーバーの解決可能なネットワーク名。 DNS 名、netbios 名、または IP アドレスを指定できます。
ServerPort 省略可能 指定した場合、サーバーが RPC/HTTP 接続をリッスンするポート。 指定しない場合は、サーバー コンピューター上のエンド ポイント マッパーを使用してサーバー ポートを検索します。
LBSPort 省略可能 指定した場合、サーバーが LBS をリッスンするポート。 このキーを使用するには、netsh RPC ファイアウォール コマンドを使用して LBS インターフェイスを静的エンドポイントに設定する必要があります。 netsh コマンドの例については負荷分散のベスト プラクティスの読み込みを参照してください。

 

オプションのレジストリ キー

LBS サーバーを構成するためのオプションのレジストリ値は 3 つあります。 キーは主に LBS サービスとの間の呼び出しのセキュリティ レベルを制御し、使用する既定のリソース UUID も制御します。 省略可能な値を次に示します。

必要なレジストリ キーと値の詳細な内訳を次に示します。

HKLM\SOFTWARE\Microsoft\Rpc\RpcProxy\LBSConfiguration\NoSecurity

DWORD。 NoSecurity DWORD が存在しないか 0 に設定されている場合、LBS サービスへのセキュリティで保護されていない呼び出しは拒否されます。 0 以外の場合、LBS サービスへのセキュリティで保護されていない着信呼び出しは拒否されません。 このキーは、LBS サービスの起動時に 1 回読み取られます。

-

HKLM\SOFTWARE\Microsoft\Rpc\RpcProxy\LBSConfiguration\AssumeResourceUUID

DWORD。 AssumeResourceUUID DWORD が存在しない場合、LBS サービスに変更は発生しません。 存在する場合は、有効な UUIDで設定する必要があります。 この UUID は、リソース UUID を指定しないすべての接続のリソース UUID として使用されます。 これは、クライアントが RPC/HTTP バインディングを作成するときにリソース UUID を指定しないが、管理者がサーバー ファームへの RPC/HTTP トラフィックを負荷分散する場合に一般的に使用されます。 このキーを UUID に解析できない場合は、内部 RPC エラーが発生し、有効になっている場合は RPC_EXTENDED_ERROR_INFO が生成されます。

-

HKLM\Software\Microsoft\Rpc\RPCHTTPLBSServer\NoSecurity

DWORD。 NoSecurity DWORD が表示されないか、0 に設定されていない場合、LBS サービスに対するすべての発信呼び出しにセキュリティが設定されます。 存在し、0 に設定されていない場合、LBS サービスに対するすべての発信呼び出しにセキュリティは適用されません。 この設定が HKLM\SOFTWARE\Microsoft\Rpc\RpcProxy\LBSConfiguration\NoSecurity 設定と一致していることを確認します。