主機上的網路負載平衡 (NLB) 驅動程式追蹤連線以維護 NLB 叢集上設定的用戶端/網路親和性。若驅動程式未正常運作,則 NLB 可能無法追蹤 TCP 連線,或可能發生負載分散錯誤。
解決 NLB 連線追蹤限制問題
已達到網路負載平衡 (NLB) 可追蹤的使用中連線最大數目。儘管 NLB 仍將繼續接受新連線,但是除非將其他連線關閉,否則它將不會追蹤連線狀態。這可能會導致連線期間由驅動程式維護的親和性中斷。
若要解決這一連線追蹤限制問題,可向 NLB 叢集中新增多部主機 (將連入連線的數目均分到多部叢集主機),或增加連線追蹤限制。
向 NLB 叢集中新增主機
若要向 NLB 叢集中新增主機:
請依序按一下 [開始]、[系統管理工具] 及 [網路負載平衡管理員]。您也可以藉由在命令提示字元中輸入 Nlbmgr 開啟 NLB 管理員。
在要新增主機的叢集上按一下滑鼠右鍵並選擇 [新增主機到叢集]。若 NLB 管理員未列出叢集,請連線至叢集。
輸入主機名稱並按一下 [連線]。對話方塊底部會列出主機上可用的網路介面卡。
按一下要用於 NLB 的網路介面卡,然後按一下 [下一步]。此網路介面卡上設定的 IP 位址將成為此主機的專用 IP 位址。
適當地設定其餘主機參數,然後按一下 [完成]。
不正確的編輯登錄可能會對系統造成嚴重損害。變更登錄前,應先備份電腦上所有的重要資料。
透過編輯登錄機碼來增加連線追蹤限制
透過編輯登錄機碼來增加連線追蹤限制:
開啟登錄編輯程式。
編輯 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WLBS\Parameters\Interface\{GUID}\MaxDescriptorAllocs 中的值。
GUID 是遇到此問題的網路介面卡的全域唯一識別碼。這是繫結至 NLB 的網路介面卡。如果 NLB 將要或已經繫結至多個網路介面卡,您可以透過查看登錄中每個 GUID 項目的 ClusterIPAddress 機碼值來尋找正確的介面卡。
應將登錄機碼的現有值加倍。增加該值之後,您必須停用並重新啟用相應的網路介面卡。
Target | Microsoft.Windows.NetworkLoadBalancing.6.2.ServerRole |
Category | Alert |
Enabled | True |
Alert Generate | False |
Remotable | True |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.NetworkLoadBalancing.EventProvider | Default |
WA | WriteAction | Microsoft.Windows.NetworkLoadBalancing.6.2.GenerateAlert.SuppressByDescription | Default |
WriteToDB | WriteAction | Microsoft.Windows.NetworkLoadBalancing.6.2.CollectEvent | Default |
<Rule ID="Microsoft.Windows.NetworkLoadBalancing.6.2.The.maximum.number.of.actively.serviced.connections.that.could.be.tracked.by.NLB.is.reached" Enabled="onEssentialMonitoring" Target="Microsoft.Windows.NetworkLoadBalancing.6.2.ServerRole" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="NLBLibrary!Microsoft.Windows.NetworkLoadBalancing.EventProvider">
<Criteria>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>19</Value>
</ValueExpression>
</SimpleExpression>
</Criteria>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WA" TypeID="Microsoft.Windows.NetworkLoadBalancing.6.2.GenerateAlert.SuppressByDescription">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.NetworkLoadBalancing.6.2.The.maximum.number.of.actively.serviced.connections.that.could.be.tracked.by.NLB.is.reached.AlertMessage"]$</AlertMessageId>
<EnableAlert>true</EnableAlert>
</WriteAction>
<WriteAction ID="WriteToDB" TypeID="Microsoft.Windows.NetworkLoadBalancing.6.2.CollectEvent">
<CollectEvent>false</CollectEvent>
</WriteAction>
</WriteActions>
</Rule>