Netscaler持久化失敗,丟包

Netscaler持久化失敗,丟包

我有一個配置了這個的虛擬伺服器

-persistenceType CUSTOMSERVERID -lbMethod ROUNDROBIN -rule "URLQUERY CONTAINS sid="

看起來,如果“sid”參數設定為轉到“伺服器 1”,並且在請求傳入時,“伺服器 1”已關閉,它會退回到循環並將請求發送到其他地方(伺服器 2 用於範例)

如何配置 NS,以便如果請求綁定到伺服器並且該伺服器已關閉,則該請求將被丟棄或拒絕?

答案1

這就是使用負載平衡器的全部意義,如果一個後端發生故障,它將轉到另一個後端。如果您不希望這樣,請在內容交換後面建立 2 個不可尋址的 LB 虛擬伺服器,並使用內容交換策略來定義內容的去向。我幾乎所有的事情都是透過 GUI 完成的,但最終結果應該是這樣的:

add lb vserver LB_for_backend_1 SSL 0.0.0.0 0 -persistenceType COOKIEINSERT -timeout 240 -Listenpolicy None -cltTimeout 180
add lb vserver LB_for_backend_2 SSL 0.0.0.0 0 -persistenceType COOKIEINSERT -timeout 240 -Listenpolicy None -cltTimeout 180

bind lb vserver LB_for_backend_1 service_For_Backend_1
bind lb vserver LB_for_backend_2 ServiceGroup_for_backend_2

add cs vserver CS_CUSTOMSERVERID SSL 192.168.1.100 443 -cltTimeout 180 -Listenpolicy None
add cs policy CSPol_for_backend_1 -rule "HTTP.REQ.URL.SET_TEXT_MODE(IGNORECASE).CONTAINS(\"sid=")
add cs policy CSPol_for_backend_2 -rule "HTTP.REQ.HOSTNAME.SET_TEXT_MODE(IGNORECASE).CONTAINS(\"hostname")" 

bind cs vserver CS_CUSTOMSERVERID -policyName CSPol_for_backend_1 -targetLBVserver LB_for_backend_1 -priority 110
bind cs vserver CS_CUSTOMSERVERID -policyName CSPol_for_backend_2 -targetLBVserver LB_for_backend_2 -priority 120

相關內容