NLB-трафик останавливается на всех узлах при перезагрузке одного узла
У нас был двухузловой кластер NLB, на котором работали сайты IIS на виртуальных машинах. Оба узла были подключены к сети, балансировщик функционировал точно так, как ожидалось (если трафик сбалансирован на 50/50, и вы останавливаете или дренируете узел, все маршруты трафика переходят в другой узел).
Но когда я перезагрузил узел, даже если я остановил его до перезагрузки, ДРУГОЙ узел, который должен был получать производственный трафик во время перезагрузки, прекратил принимать запросы.
Насколько мне известно, это НЕ было, как NLB должен работать. Если я отключаю узел, другие узлы в кластере NLB не должны заботиться об этом и должны продолжать принимать трафик в соответствии со своими правилами порта, пока перезагружается автономный узел.
Ни одно из моих правил порта не использовало сходство, поэтому я знал, что это не проблема.
Поэтому, немного мучившись, я наткнулся на ответ (см. Мой опубликованный ответ)
1 ответ
После некоторых исследований я обнаружил, что проблема связана с VMWare и тем фактом, что кластер NLB находится в режиме одноадресной передачи.
Очевидно, что VMWare необходимо правильно настроить, чтобы избежать проблем на уровне коммутатора с виртуальными MAC-адресами, созданными из кластеров NLB в режиме одноадресной передачи, и рекомендует настроить сетевые адаптеры для соответствия режиму, или, что еще лучше, просто использовать кластеры NLB в режиме многоадресной передачи, чтобы избежать вопрос целиком.