Как часто вы перезапускаете интенсивно используемый сервер удаленных рабочих столов (VM) Windows Server 2008R2?


17

Примечание. Я читал, как часто нужно перезапускать серверы Windows? но этот вопрос относится конкретно к нашему серверу удаленного рабочего стола .

У нас есть сервер Windows Server 2008R2 - VMware ESX VM, лицензированный для служб удаленных рабочих столов, для 25 пользователей, который также выполняет RRAS (SSTP). В среднем по рабочим дням в рабочее время вошли в систему от 8 до 12 активных пользователей и еще 4-6 «отключенных» пользователей. Он имеет жесткое резервирование процессора 12 ГГц и 16 ГБ оперативной памяти, также полностью зарезервированные. При необходимости резервирование процессора может быть увеличено до 24 ГГц.

Многие из наших пользователей полагаются исключительно на работу сервера. Они также горько жалуются на его производительность, но многие не хотят менять рабочие привычки или программное обеспечение, чтобы улучшить его производительность. В частности:

  • Пользователи отказываются выходить из системы вместо отключения
  • Пользователи настаивают на использовании Lync 2013 вместо Lync 2010 (Lync 2013 - печально известная проблема с ресурсами)

Я не могу переоценить значение их отказа выйти из системы. Отключенные пользователи продолжают загружать ОЗУ, оставаясь отключенными, что означает, что в любой момент времени у нас работает до 16 экземпляров определенных программ.

По опыту я также заметил, что утечки / зомби имеют тенденцию накапливаться, чем дольше работает сервер удаленного рабочего стола. После перезагрузки сервер обновляется и работает намного быстрее, даже если сравнивать производительность после того, как многие пользователи вошли в систему. Я также читал, что регулярные перезагрузки могут быть полезны.

Поэтому я предложил регулярные перезагрузки виртуальной машины - я хотел бы делать это еженедельно, скажем, в субботу вечером, - так как я чувствую, что эти перезагрузки решат большую часть проблемы.

Я хотел бы знать, если вы являетесь администратором Windows,

  • Прав ли я в том, что мусор / зомби / утечки накапливаются во время сеанса, даже после того, как пользователь отключился / повторно подключился?

  • Как часто вы перезапускаете аналогично используемый Windows Server со службами удаленных рабочих столов?


10
Почему бы не использовать политику для принудительного выхода из системы для неактивных сеансов?
Массимо

@Massimo, потому что они сочли бы это слишком жестким ... они теряют работу каждый раз, когда я перезагружаюсь без достаточного уведомления, то есть перезагружаю все, что им нужно знать, к «полудню» того дня, и даже тогда это происходит только после некоторого ворчание, обсуждение и т. д.
tacos_tacos_tacos

12
Вам нужно будет скорректировать ожидания ваших пользователей. IMO, это неразумно ожидать, что они могут безопасно оставить бездействующий сеанс с несохраненными данными в течение любого промежутка времени. Неожиданный сбой, отказ оборудования, отключение электричества или какой-либо другой акт Хаоса могут так же легко уничтожить их несохраненную работу.
Зоредаче

2
Я не возражаю против этого вопроса, но ответы на него будут основаны на вариантах. Попробуйте перефразировать для большего количества фактов или (или, по крайней мере, на основе производительности) ответов.
Джим Б.

1
@tacos_tacos_tacos это мой опыт. Что именно должно засорить в работающей ОС? Это смутное понятие, которое необоснованно. ОС не так много делает. Пользовательские процессы делают вещи. Когда они ушли, сланец снова стал чистым. ОС обычно убирается с дороги и выполняет то, что просят пользовательские процессы. Это не инициирует использование ресурса само по себе.
usr

Ответы:


23

Как правило, я против идеи, что сервер Windows должен быть перезагружен на регулярной основе, за исключением серверов TS / RDS. Мы перезагружаем наши каждый день. Он очищает старые сеансы, освобождает используемые ресурсы (ЦП, ОЗУ, файловые дескрипторы и т. Д.), Поэтому я считаю, что вы должны настроить ежедневную перезагрузку серверов RDS по расписанию.

Обратите внимание, что этот ответ только мое мнение. Там нет констатации факта здесь.


Там, где я работал, мы каждую ночь перезагружали нашу. Иногда сервер не возвращается, но это случается так редко, что оно того стоило.
Фредерик Нильсен

Как часто вы переустанавливали его?
Конрад Гаевский

4
+1 Citrix, Microsoft и я все рекомендуем регулярные перезагрузки для серверов TS. По сути, это компьютерные блоки для конечных пользователей, и обычно они запускают приложения, которые не оптимизированы для серверов - это означает утечки памяти, не высвобождение ресурсов и т. Д. Еженедельно по абсолютному минимуму, но ежедневно везде, где вы можете - это облегчит вашу жизнь.
Дан

@ Есть ли какие-либо ссылки на рекомендации Microsoft, которые вы упоминаете (обычная перезагрузка)?
tacos_tacos_tacos

17

Пользователи отказываются выходить из системы вместо отключения

Установите соответствующие групповые политики для автоматического выхода из системы. Вы можете отдельно контролировать время простоя и выход из системы. Это, безусловно, должно минимизировать некоторые проблемы в течение дня.

Я перезагружаю ферму TS с 3 серверами ежедневно в 3 часа утра. Потому что да хрень может накапливаться со временем, когда у вас много людей, использующих одну систему. У нас есть 3 сервера, которыми пользуются от 60 до 90 человек, в зависимости от дня и времени года.

Возможно, мне не нужно часто это перезагружать, но мы начали использовать терминальные службы с Windows 2000, и наши драйверы принтеров были ужасными в то время. Спулер печати в основном потерпит неудачу через день или два после пробуждения. Поэтому мы начали перезагружаться по ночам, поскольку у нас не было никаких рычагов, чтобы заставить производителей принтеров исправлять свои дрянные драйверы.


что касается драйверов принтера и т. д. Я читал здесь или где-нибудь еще, что заслуживает уважения, что MS добилась больших успехов в этом отделе - и в уменьшении необходимости перезагрузки в целом - между Windows 2000 Server и Windows Server 20032R2 SP3. Поэтому я не уверен, что проблема с драйверами актуальна. На самом деле, я заметил, что более новые версии Windows (Server), похоже, отлично справляются с драйверами печати и спулингом.
tacos_tacos_tacos

На самом деле я не часто перезагружаю свой сервер TS, но каждую ночь я останавливаю диспетчер очереди печати, удаляю все задания печати и перезапускаю его. Это также устраняет случаи, когда пользователи не могут войти в систему с использованием RDP. (Windows Server 2003)
Рэнди Оррисон,

6

В зависимости от ваших денежных средств, времени и опыта ваших пользователей, другой идеей может быть установка второго сервера. Вам все равно придется периодически перезагружаться, но вы, похоже, достигаете пределов одного сервера.

Вы должны иметь возможность использовать одну и ту же клиентскую клиентскую лицензию (лицензирование - не моя самая сильная область), и в зависимости от вашего решения по виртуализации дополнительная виртуальная машина уже может быть покрыта существующим лицензированием.

Даже без дополнительных ресурсов виртуальной машины и с дополнительными накладными расходами ОС вы можете лучше справиться с управлением системой в виде двух отдельных виртуальных машин с процессором 6 ГГц и 8 ГБ памяти, при условии, что вы сможете равномерно распределить нагрузку. Есть три возможных метода:

  1. Самый простой способ - использовать правильное решение для балансировки сетевой нагрузки, такое как F5 Networks, Cisco Systems и аналогичные компании. Если вы уже приобрели подобное решение, его стоит использовать здесь. Затем вы можете проигнорировать оставшуюся часть ответа, поскольку f5 сможет соответствующим образом проанализировать все запросы на полное доменное имя, используемое для доступа к вашему текущему серверу удаленных рабочих столов, и вернуть соответствующий IP-адрес на основе наименее используемых ваших серверов.
  2. Round-Robin DNS - сносное решение. Это не гарантирует идеально ровную нагрузку, но может быть полезным временным промежутком, пока вы обучаете своих пользователей (см. 3), если вы не можете использовать балансировщик сетевой нагрузки. Замените текущие имена DNS-клиентов, которые используют две записи хоста, которые имеют одинаковое имя, но разные IP (ваши два сервера), в идеале также настраивайте отдельные записи хоста (предпочтительно на основе имени хоста сервера), которые связаны с каждым отдельным сервером.

Установите длинный TTL для записей циклического перебора, если вы не хотите, чтобы клиенты оставляли отключенные сеансы на одном сервере после истечения срока их кэша DNS и получения IP-адреса другого сервера. В качестве альтернативы сделайте имя хоста компьютера, к которому они подключены, очевидным (например, сделайте его частью фона) и попросите их повторно подключиться к этому имени хоста, если они хотят воскресить свой сеанс.

  1. Пусть ваши клиенты распределяют нагрузку. При ~ 25 пользователях можно просто попросить (по электронной почте или при входе в систему на сервере), что некоторые пользователи подключаются к одному серверу, а остальные - к другому. В качестве альтернативы, если вы управляете их настольной платформой или они получают доступ к серверу через Citrix или другое устройство виртуализации приложений, просто настройте их файл hosts † так, чтобы они всегда подключались к одному и тому же серверу (настольному компьютеру) / гарантировали, что один и тот же пользователь всегда отправляется на один и тот же сервер ( прибор).

† Если они всегда будут использовать один и тот же рабочий стол, просто измените файл hosts на локальном рабочем столе. Если они перемещаются между компьютерами, напишите сценарий (распространяемый через групповую политику) для анализа файла хоста так, чтобы запись DNS, которую они в настоящее время используют для сервера, указывала на IP-адрес сервера, который должен использовать конкретный пользователь. Замените строку, содержащую это DNS-имя, если оно уже существует, или добавьте его в конец файла, если его нет.


2
+1 за креативность. Я могу настроить балансировщик нагрузки, и это честно.
tacos_tacos_tacos

4

Я знаком с «типом пользователя», который отказывается выходить из системы. Однако у них, похоже, не было проблем с пониманием того, что Сервер будет перезагружаться ночью, поэтому любая несохраненная работа будет потеряна. Это на сервере Server 2008 R2 TS, поддерживающем около 20 пользователей на одном компьютере.


1

> Пользователи отказываются выходить из системы вместо отключения

У вас есть проблема управления / HR, а не техническая проблема. Если люди, оставшиеся в системе, влияют на работу других людей (без необходимости снижая производительность), то на самом деле есть только два решения:

  1. Сделайте это технической проблемой и организуйте увеличение ресурсов (больше оперативной памяти, SSD вместо вращающегося металла, ...), если это возможно, чтобы проблема исчезла. Конечно, есть пределы тому, чего вы можете достичь, выбрасывая новые ресурсы на одной машине, но это может сработать.

  2. Продолжайте решать эту проблему как проблему управления людьми и найдите способ поощрения (или провала в применении ) соответствующей дисциплины. Конечно, это может быть вне вашей прямой ответственности, поэтому это может быть довольно сложно, в зависимости от политики вашего офиса ...

У нас была похожая проблема с людьми, которые никогда не перезагружали свои настольные компьютеры, а это означало, что обновления безопасности иногда помещались в очередь на месяцы. Политика безопасности гласила, что «исправления для известных проблем безопасности должны быть установлены своевременно, сразу же в тех случаях, когда эксплойты уже существуют в дикой природе, если не будет доказано достаточное количество мер по снижению риска», поэтому в конце концов это было просто применено групповой политикой: все -сервер Windows машины будут перезагружены ночью во вторник, если есть ожидающие обновления, без исключений. Если кто-то возражает против этого, есть два простых аргумента: если мы не будем следовать этой политике, мы потеряем нашу аккредитацию ISO-это-то-и-другое в следующий раз, когда будет проведен какой-либо аудит, важный для бизнеса,

> Пользователи настаивают на использовании Lync 2013 вместо Lync 2010 (Lync 2013 - печально известная проблема с ресурсами)

Есть ли конкретная причина, почему, кроме как они хотят более новые, более блестящие вещи? Если есть какая-то особенность, которая им действительно нужна, тогда вы мало что можете сделать с этим углом.

Если приложение чата является основной проблемой ресурса, мне интересно, есть ли способ убить только экземпляры этой программы в незанятых сессиях вместо уничтожения целых сессий?

> Они теряют работу каждый раз, когда я перезагружаюсь без достаточного уведомления, т. е. для перезагрузки вообще, что им нужно знать к «полудню» того дня

Вы не указываете характер работы, так что это очень зависит от того, что это такое, но они могут терпеть неудачу из-за должной осмотрительности (то есть не выполняют свою работу должным образом ).

Если они не сохранение документов на регулярной основе, то они вкладывают свою работу в опасности, а не вы. Что произойдет, если произойдет отключение питания или другая неисправность, приведшая к отключению сервера? Будут ли они обвинять вас тоже?

Конечно, если они активно работают во время перезагрузки или нуждаются в том, чтобы длительные процессы оставались без присмотра, тогда может возникнуть подлинная проблема планирования, которую вам необходимо решить между вами.


0

С риском быть похожим на продавца - мы используем ShutdownPlus Rolling Restart . Мы настроили его так, чтобы пытаться перезапускать наши серверы каждую ночь. Он работает довольно хорошо - вы можете настроить его на перезапуск серверов только после того, как все вышли из системы. Он перезапустит цикл, если кто-то еще будет использовать RD-сервер X раз. Инструмент также может отключить пользователей, если хотите. Или даже включите питание вашей виртуальной машины @ ESXi.

Я использую его с парой объектов групповой политики, которая выходит из системы отключенных пользователей через пару часов. И отключает активные сессии после определенного времени простоя конечно. Это довольно изящный метод, за исключением случайной мошеннической программы, которая не позволяет закрывать сессии. Мы работали над тем, хотя. То, как мы его настроили, теперь каждый сервер пытается перезагрузить каждый час с 22.00 до 7.00, пока, конечно, это не удастся. По сути, пользователи перезагружаются как минимум 2/3 раза в неделю, что меня устраивает.

К сожалению, это не бесплатная программа, но она делает работу довольно хорошо. Я реализую скрипт powershell, который, надеюсь, обновит серверы и до перезагрузки.


0

Прямой ответ на перезагрузку сервера Microsoft ДА / НЕТ. О, если бы жизнь была такой простой! Это зависит от приложений, запущенных на сервере. Но вот простое руководство, а НЕ жесткое и быстрое правило.

Физический сервер под управлением Windows-сервера ** x Версия ** ( автоматическая перезагрузка и расписание ) 95% можно перезагружать раз в две недели без особых проблем. (Убедитесь, что применяемый патч актуален и необходим). Убедитесь, что вы полностью протестировали исправление на своих тестовых серверах перед выпуском в оперативную / производственную системы.

Виртуальные серверы VMWare под управлением Windows Server x Version - перезагружаются раз в две недели ( см. Комментарий выше, если применяются исправления )

Физический сервер VMWare НИКОГДА / Редко и только в случае необходимости никогда не планируется. (Обычно очень стабильно, если поддерживается в актуальном состоянии). Для исправлений / обновлений VMWare потребуется перезагрузка.

VMWare работает под управлением Windows SQL (ограничение перезагрузки, применение исправлений Windows ТОЛЬКО ВРУЧНУЮ! Перезагрузите ЕСЛИ исправление требуется, и только после того, как вы остановили ВСЕ клиентские подключения) Проверьте, что подключения были повторно подключены после резервного копирования сервера. Для перезагрузки SQL-серверов может потребоваться довольно много времени, поэтому планируйте это вне часов.

Напоминание: перед тем, как ЛЮБОЙ поменять на VMWare (Windows Server), сделайте это! если происходит сбой системы после установки Service Patch или обновления, или если приложения не запускаются, вы можете быстро получить резервную копию сервера и запустить его с ограниченным временем простоя. Не забывайте делать записи об ошибках, чтобы вы могли найти исправление, не оставляйте систему в покое, потому что она вышла из строя, поскольку в будущем она может выйти из строя.

Надеюсь, что это помогает и идет небольшой путь, чтобы прояснить ситуацию.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.