locked
Высоконагруженный терминальный сервер_Неуправляемость! RRS feed

  • Вопрос

  • Коллеги, вечер добрый! Помогите разобраться с серьезной неожиданно возникшей проблемой, пож-та!

    Перешли с 2008 на 2016 терм. сервер. Имеем: RDS ферму с двумя мощными серверами, на обоих роли CB, SH + в сети выделенный SQL-сервер. Порядка 300 терм. сессий на каждом сервере. CPU загружен максимум на 30%, оперативная память - занято порядка 25 % от общего объема. По работе самой фермы - никаких нареканий, все работает, все довольны.

    Но! Когда кол-во юзверей переваливает примерно за 150 человек на каждой ноде - оба сервера становятся полностью неуправляемыми со стороны администраторов:

    - не посмотреть любые логи в Журналах Windows ("Средство просмотра событий не может открыть журнал событий или пользовательское представление. Убедитесь, что служба событий запущена, либо слишком длинный запрос. Сервер RPC занят и не может завершить операцию (1723)"

    - не посмотреть службы ("Возникла следующая ошибка при чтении списка служб на: Ошибка 1783: Заглушке переданы неправильные данные."

    - не доступна консоль управления RDS  в Диспетчера сервера ("Якобы, не запущены службы RDS...)

    Когда кол-во юзверей на терминалах снова падает до 100-150 человек - снова все приходит в норму и прекрасно работает. В какой стороне копать, коллеги? Кто-нибудь сталкивался с подобным явлением?

    30 сентября 2019 г. 21:38

Ответы

  • Закрываю тему - инженер Microsoft в рамках созданного кейса на эту тему официально ответил, что несмотря на физические характеристики сервера максимальное кол-во RDP подключений к серверу для его полноценной нормальной работы - не более 120 сессий :)

    Даже привел ссылки на статьи сторонних ресурсов:)

    • Предложено в качестве ответа SQxModerator 7 октября 2019 г. 12:30
    • Помечено в качестве ответа Vector BCOModerator 7 октября 2019 г. 22:47
    7 октября 2019 г. 9:58

Все ответы

  • Здравствуйте,

    Уточните пожалуйста какой контроллер дисков используется на данных сервера?
    На момент проблемы есть ли возможно увидеть нагруженость дисков?


    Avis de non-responsabilité:
    Mon opinion ne peut pas coïncider avec la position officielle de Microsoft.

    Bien cordialement, Andrei ...

    MCP

    1 октября 2019 г. 1:03
    Модератор
  • В момент возникновения проблемы нужно смотреть либо дисковую подсистему (наличие очередей на чтение/запись), либо сеть (возможно что весь bandwidth) уже забит. Для этого использовать мониторинг с соответствующими триггерами, либо если он отсутствует - Perfomance Collection Set. Также посмотрите не выполняются ли задания бэкапа в этот момент и используются ли в компании перемещаемые профили.
    1 октября 2019 г. 5:37
  • Сервера -  HP DL380 G10

    Дисковый контроллер: HPE Smart Array P408i-a SR Gen10

    По данным мониторинга производительности в момент появления описанного глюка:

    - %активности диска на обоих серверах - 4-5

    - текущая длина очереди диска - 0-1

    т.е. загруженности дисковой подсистемы никакой нет
    1 октября 2019 г. 8:44
  • Добрый! Очередь на чтение/запись диска - нулевая. По сети - тоже самое. Средствами системного монитора - все свободно. С этого начал копать проблему, собственно

    Бакапы на данных серверах отсутствуют. Перемещаемые профили не использую, за исключением того, что средствами GPO перемещаю папки "Desktop" и "Documents" при входе пользователей на терминалы на серверный ресурс.

    1 октября 2019 г. 8:50
  • Закрываю тему - инженер Microsoft в рамках созданного кейса на эту тему официально ответил, что несмотря на физические характеристики сервера максимальное кол-во RDP подключений к серверу для его полноценной нормальной работы - не более 120 сессий :)

    Даже привел ссылки на статьи сторонних ресурсов:)

    • Предложено в качестве ответа SQxModerator 7 октября 2019 г. 12:30
    • Помечено в качестве ответа Vector BCOModerator 7 октября 2019 г. 22:47
    7 октября 2019 г. 9:58
  • Закрываю тему - инженер Microsoft в рамках созданного кейса на эту тему официально ответил, что несмотря на физические характеристики сервера максимальное кол-во RDP подключений к серверу для его полноценной нормальной работы - не более 120 сессий :)

    Даже привел ссылки на статьи сторонних ресурсов:)

    Дайте-ка, пожалуйста, скриншот официального ответа.

    Ещё бы и на ссылки посмотреть.

    Т.е. это проблема в 2016 сервере, хотите сказать? Если на 2008 всё работало.

    Вот пример с моего хоста (правда оно 2012r2):

    PS C:\> (query user).count
    229



    • Изменено DmitryG_ 7 октября 2019 г. 10:22
    7 октября 2019 г. 10:19
  • Проблема ваша скорее всего в этом баяне

    Так же обсуждалось тут

    8 октября 2019 г. 7:09
  • Кол-во RDP-соединений (не более 110) инженер озвучил устно по телефону:)

    Ссылки, которые он направил ниже:

    Ниже ссылка, на статью которая говорит о количестве соединений, которые в нашем разговоре назвал; «нииточками»

     

    Comparison of Standard and Datacenter editions of Windows Server 2019

    https://docs.microsoft.com/en-us/windows-server/get-started-19/editions-comparison-19

     

     

     

    об обстоятельствах которые виляют на количество пользователей

    How many concurrent Remote Desktop Sessions can run on a single Windows Remote Desktop Server?

    https://support.accops.com/support/solutions/articles/5000571828-how-many-concurrent-remote-desktop-sessions-can-run-on-a-single-windows-remote-desktop-server-

     

     

     

    Remote Desktop Services - planning

    https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/rds-poster#remote-desktop-services-in-windows-server

     

    Plan and design your RDS deployment

    Build and deploy RDS

    Run and tune your RDS environment

     

    Remote Desktop Services - High availability

    https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/rds-plan-high-availability 

    8 октября 2019 г. 13:21
  • Решил проблему действительно только одним способом: поднял на двух физических серверах 6 виртуальных. Кол-во RDP-сессий уменьшилось до 90 на каждом сервере. Все работает как часы:)
    8 октября 2019 г. 13:24
  • Да, у меня такая же проблема была даже не на ферме.. Но когда в Ферме, оказалось что лимит еще меньше )) Можно вопрос, а как решили проблему с профилями пользователей??? Где хранятся?
    10 октября 2019 г. 13:30
  • Не зря Vector BCO говорил, что по его наблюдению проблемы начинаются от 70 пользователей)
    10 октября 2019 г. 13:40
  • Профили пользователей хранятся на самом сервере, кроме папок "Documents" и "Desktop" - они политикой перемещаются на файловый сервер, чтобы пользователи "видели" свои сохраняемые документы на любой из нод фермы. Раз в 30 дней все профили "убиваются" политикой при перезагрузке сервера.
    14 октября 2019 г. 19:25
  • Не зря Vector BCO говорил, что по его наблюдению проблемы начинаются от 70 пользователей)
    :) В нашем случае проблемы начинались от 160 юзверей на терминале. Сервер становился просто неуправляемым куском железа:) Но при этом жалоб от самих пользователей, к удивлению, не поступало...
    14 октября 2019 г. 19:28
  • У меня правда профили UPD и там все хранится, но перестает пускать пользователей и админов.
    15 октября 2019 г. 19:49
  • Со стороны инженера приводить ссылку на сторонний ресурс, мягко горя странно, тем более, что на этом ресурсе излагаются какие-то директивные вещи непонятно на чем основанные.

    У нас, например, без проблем на терминальном сервере живет порядка 200 rds-сессий пользователей (и это не предел, ресурсы сервера позволяют пережить и большее количество пользователей на сервер)

    Что касается потери управляемости, с которой вы столкнулись, то связана она с двумя сущностями:

    1) пользовательские службы, которые в подавляющем большинстве не нужны на сервере, но создаются по умолчанию для каждого пользователя залогинившегося на сервер. Их можно и нужно отключать (см параметр UserServiceFlags https://docs.microsoft.com/en-us/windows/application-management/per-user-services-in-windows). Если вы не отключите большинство ненужных служб это вызовет переполнение какого-то там буфера или области памяти, которая не была рассчитана на такое дикое количество служб и вы потеряете возможность управления службами 

    2) UWP-приложения, входящие в состав сервера, для которых при каждом входе пользователя создаются правила firewall'а (приложения эти так же  большинстве своем не понадобятся вашим пользователям и их желательно вырезать либо в application mode, либо на этапе winPE phase of depoyment, либо придется действовать скриптами, удаляя нарастающий как снежный ком правила firewall'а. Для борьбы с правилами множищимися из-за UWP-приложениями рекомендуется использовать ключ реестра DeleteUserAppContainersOnLogoff (google it!), который, правда проблему радикально не решит, но значительно ее смягчит, остаток правил все равно придется регулярно дорабатывать напильником (скриптами).

    Огромное количество правил FW (даже если у вас FW выключен!), если с ними не бороться, приводит к следующим проблемам:

    - долгий вход в сессию

    - черный экран при входе в сессию, вместо рабочего стола

    - не работает кнопка Пуск (при нажатии на нее ничего не происходит)


    my blog: http://shserg.ru/















    • Предложено в качестве ответа s.h.s. _ 24 февраля 2021 г. 9:33
    • Изменено s.h.s. _ 24 февраля 2021 г. 9:37
    24 февраля 2021 г. 8:56
  • Со стороны инженера приводить ссылку на сторонний ресурс, мягко горя странно, тем более, что на этом ресурсе излагаются какие-то директивные вещи непонятно на чем основанные.

    У нас, например, без проблем на терминальном сервере живет порядка 200 rds-сессий пользователей (и это не предел, ресурсы сервера позволяют пережить и большее количество пользователей на сервер)

    Что касается потери управляемости, с которой вы столкнулись, то связана она с двумя сущностями:

    1) пользовательские службы, которые в подавляющем большинстве не нужны на сервере, но создаются по умолчанию для каждого пользователя залогинившегося на сервер. Их можно и нужно отключать (см параметр UserServiceFlags https://docs.microsoft.com/en-us/windows/application-management/per-user-services-in-windows). Если вы не отключите большинство ненужных служб это вызовет переполнение какого-то там буфера или области памяти, которая не была рассчитана на такое дикое количество служб и вы потеряете возможность управления службами 

    2) UWP-приложения, входящие в состав сервера, для которых при каждом входе пользователя создаются правила firewall'а (приложения эти так же  большинстве своем не понадобятся вашим пользователям и их желательно вырезать либо в application mode, либо на этапе winPE phase of depoyment, либо придется действовать скриптами, удаляя нарастающий как снежный ком правила firewall'а. Для борьбы с правилами множищимися из-за UWP-приложениями рекомендуется использовать ключ реестра DeleteUserAppContainersOnLogoff (google it!), который, правда проблему радикально не решит, но значительно ее смягчит, остаток правил все равно придется регулярно дорабатывать напильником (скриптами).

    Огромное количество правил FW (даже если у вас FW выключен!), если с ними не бороться, приводит к следующим проблемам:

    - долгий вход в сессию

    - черный экран при входе в сессию, вместо рабочего стола

    - не работает кнопка Пуск (при нажатии на нее ничего не происходит)


    my blog: http://shserg.ru/















    А не поделитесь, какие именно службы останавливали, чтобы проблем с работой фермы не случилось? Например та же CDPUserSvc после отключения не даст косяков?
    24 февраля 2021 г. 10:58