В моей работе мы сейчас решаем проблемы, связанные с IIS. Мы используем балансировщик нагрузки F5 на нескольких серверах IIS и поэтому можем немного справиться с тем, что один из них будет извлечен из пула, но мы обеспокоены тем, как перезагрузка Windows Update может повлиять на наши текущие транзакции IIS.
Наши приложения IIS таковы, что они обрабатывают большое количество транзакций в любое время дня. В настоящее время мы автоматизируем установку исправлений для нашего сервера, поэтому в период обслуживания могут возникнуть некоторые перезагрузки.
Когда мы (безопасно, а не аварийно) перезагружаем нашу машину, будет ли потеряна текущая обработка транзакций через IIS? Или Windows даст службе IIS достаточно времени, чтобы завершить их перед выключением, позволяя другим нашим серверам с балансировкой нагрузки принимать трафик?
Я нашел довольно много вопросов о сбросе IIS, но я не уверен, что они применимы к перезагрузке машины.
IIS не «изящно» закрывает соединения во время завершения работы по расписанию. Пользовательские сеансы будут сброшены, и если вы не управляете BIG-IP, сеансы будут по-прежнему отправляться на отключенный серверный узел, пока монитор виртуального сервера BIG-IP не пометит его как отключенный и не перераспределит трафик на другие узлы. Имейте в виду, что большинство мониторов / мониторов служб IIS заметят это быстро, но, поскольку он определяется пользователем, я полагаю, что вызову его.
Чтобы уменьшить или смягчить эту проблему, вы хотите пометить узел как отключенный вручную в графическом интерфейсе или через вызов API BIG-IP, например (iControlREST). Это предотвратит маршрутизацию новых подключений к серверу, который будет обслуживаться, и позволит существующим сеансам истощиться и перераспределиться по мере необходимости.
Исключение составляют давно установленные сеансы могут сохраняться дольше, чем вы хотели бы. В таких случаях иногда необходимо принудительно отключить соединение, отметив узел «Forced Offline» в BIG-IP. Это приведет к сбросу существующих подключений и распределению новых подключений по другим узлам. Это нежелательно, но это лучше, чем сбросить IIS и разрешить сброс соединения, когда монитор BIG-IP отказывает X раз, прежде чем пометить узел как неработающий.
Итак, вот ваш порядок действий:
И это можно автоматизировать в BIG-IP с помощью встроенных скриптов или вызовов API из безопасных систем управления.
Вы можете отслеживать трафик к вашему узлу в BIG-IP (в статистике виртуального сервера) или через предпочитаемое вами программное обеспечение для управления. Это позволит вам определить существующие соединения для каждого узла.
Вот ваше практическое руководство по командам GUI и CLI для достижения того, что вы ищете:
K13310 - K13310: отключение узлов или участников пула для обслуживания