Сбой устойчивости Netscaler, сброс пакетов

Сбой устойчивости Netscaler, сброс пакетов

У меня есть vserver, настроенный с помощью этого

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

Похоже, что если параметр «sid» установлен на «сервер 1», а в момент поступления запроса «сервер 1» не работает, он возвращается к циклическому перебору и отправляет запрос куда-то еще (например, на сервер 2).

Как настроить NS таким образом, чтобы если запрос привязан к серверу, а этот сервер не работает, запрос просто сбрасывался или отклонялся?

решение1

В этом и заключается весь смысл использования балансировщика нагрузки: если один бэкенд не работает, он ПЕРЕЙДЕТ на другой. Если вы этого не хотите, создайте 2 неадресуемых LB vserver за переключением контента и используйте политику переключения контента, чтобы определить, что куда идет. Я делаю в основном все из графического интерфейса, но конечный результат должен быть примерно таким:

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

Связанный контент