У меня есть 3 веб-сервера IIS в веб-ферме ARR. Когда мы делаем скользящие выпуски, мы переводим один сервер в автономный режим в качестве резервного сервера и переводим его в «недоступное состояние». Я заметил, что с ARR серверы не будут оставаться в этом состоянии ... они автоматически возвращаются в сеть через несколько часов или дней. . Кто-нибудь знает, как исправить эту ситуацию? Это очень плохо, поскольку на неработающем сервере обычно не работает правильная версия нашего кода.
Мне нужно держать сервер недоступным, пока я не скажу иное.
Я использую ARR 2.5 на Windows 2008 R2 Datacenter SP1 и столкнулся с той же проблемой при переходе на сервер фермы, выбрав «Запретить новые подключения» или «Немедленно сделать сервер недоступным». В конечном итоге контроллер вернет сервер фермы в состояние доступности. Я проверил журналы доступа на затронутом сервере, и в одном случае он стал доступен и начал обслуживать запросы через 2 часа.
Что касается решения Джима Б., у меня есть одна проблема. Если вы развернете правильный код на основном сервере и не настроите тест работоспособности до следующей проверки, то все серверы фермы, на которых был подготовлен новый работающий код, будут помечены как неработоспособные, а в большинстве случаев это все серверы фермы. . Я не понимаю, почему даже кратковременное нарушение работоспособности сервера фермы стоит этого обходного пути. Если мне не хватает картинки, дайте мне знать.
Я подумал, что будет умен и сначала установлю сервер фермы как неработоспособный, а затем сделаю его недоступным. Сервер сразу стал недоступен и здоровый.
Лично я могу быть уверен, что сервер фермы не станет доступным автоматически, только если полностью удалить его из системы балансировки нагрузки после того, как у вас появится разумная уверенность в том, что соединения разряжены.
Тем не менее, похоже, это ошибка. Я не могу быть уверен, что конкретный сервер фермы не будет обрабатывать трафик сеанса, когда я пытаюсь уйти от него (например, для обновлений и перезапусков).
Я понял, когда (а не почему) это происходит - и как это исправить!
Это происходит, когда пул приложений веб-сайта по умолчанию (процесс ARR) на балансировщике нагрузки завершается или перезапускается.
Следуйте рекомендациям микрософтов и установите время простоя пула приложений = 0: Рекомендуемое Microsoft руководство по настройке ARR
Я бы предложил настройка проверки работоспособности чтобы сверить версию с версией кода, который вы хотите запустить. При внесении изменений просто измените ответное совпадение. Вам также следует запретить новые подключения на сервере у вас есть окно обслуживания. Это истощит соединения и не позволит им включиться независимо от состояния сервера.