Расчет необходимых ресурсов для реализации сервера удаленных рабочих столов



Приветствую Всех зашедших или заблудших на мой блог. Сегодня я попытаюсь описать расчет параметров сервера и другого оборудования для создания сервера удаленных рабочих столов. Для примера будут взяты две реализации на базе терминального доступа и vdi. Сразу выделим что же общего в этих технологиях... Обе данные технологии базируются на вычислениях на стороне сервера, поэтому определяющим будет выбор протокола удаленного доступа и его возможности. Основные отличия же будут в следующем:
  • уровне изоляции предоставляемого ресурса
  • лицензиях необходимых для реализации выбранного решения
Взглянем на технологии с точки зрения ресурсов, к которым осуществляется подключение. В случае терминального сервера это отдельная сессия на общем сервере Windows. В случае vdi – отдельный контейнер с клиентской ОС. Здесь можно выделить два ключевых различия:
  • серверная ОС vs клиентской
  • отдельная сессия (которая разделяет ресурсы ОС) vs отдельная виртуальная машина
 Для того чтобы иметь точку отсчета для принятия решения допустим, что будут использоваться тонкие клиенты и количество пользователей 100, для облегчения и наглядности расчетов)).
Итак, для vdi, помимо лицензии на само решение, нам понадобятся:
  • Лицензия Microsoft VDA, дающая право на подключение к виртуальному десктопу
  • Лицензии на серверные ОС (которые используются для различных компонентов решения)
  • Лицензии клиентского доступа CAL
  • Лицензия на SQL
  • Лицензии для подключения к SQL (SQL CAL)
  • Лицензии терминального доступа (RDS CAL)
При использовании терминального доступа нам нужно:
  • Лицензии на серверные ОС
  • Лицензии клиентского доступа CAL
  • Лицензия на SQL
  • Лицензии для подключения к SQL (SQL CAL)
  • Лицензии терминального доступа (RDS CAL)
 Ну а что у нас с аппаратной точки зрения (серверы и СХД). Для того чтобы получить количественные оценки, будем исходить из 100 пользователей, работающих с офисными приложениями (MS Office), браузером и т.д. серверов с ОЗУ 64 Гб и двумя (будет нормально работать и на одном) процессорами по шесть ядер в каждом. Таким образом, решение на базе vdi потребует четыре сервера. Виртуальные машины с ОС Windows 7 c 2 Гб оперативной памяти. Тогда на одном сервере с 64 Гб памяти мы сможем запустить 31 виртуальную машину, что для сотни пользователей потребует от нас 4 сервера). В большинстве случаев для реализации указанного решения требуется система хранения данных. Необходимо учитывать, что выбор СХД должен осуществляться не по объему, а по показателю - «количество операций ввода/вывода дисковой подсистемы в секунду» (IOPS). Примем, что средний офисный сотрудник при работе в виртуальной машине Windows 7 создает нагрузку от 15 до 25 IOPS. Во время старта или выключения виртуальной машины данный показатель будет больше. Возьмем максимальное значение 25 и посчитаем дисковую подсистему: 100 пользователей * 25 = 2500 IOPS. Один диск SAS 15k rpm может выдать до 180 IOPS. Диски мы объединим в RAID-5, тогда этот показатель нужно разделить на 4. В результате получаем требуемое количество дисков в СХД: 2500 / (180 / 4) = 55 дисков.
 Для терминального доступа потребуется один сервер, т.к. на одном сервере смогут одновременно работать до 106 пользователей. Из общего объема памяти в 64 Гб я обычно резервирую 16 Гб для нужд ОС и системы терминального доступа. Одному пользователю требуется в среднем по 300-450 Мб оперативной памяти, что в результате дает (64 – 16) / 0,45 = 106. Специальных требований к СХД терминальные серверы вроде как не предъявляют.
Коммутатор и прочее нужное оборудование расписывать я думаю нет необходимости расчет простой нужная пропускная способность и необходимое количество портов.
Узким местом, которое будет влиять на расширяемость системы будет оперативная память, поэтому если есть возможность, то ее необходимо иметь побольше.
Расчет для vdi:

 

 
  
 В конечном итоге стоимость одного рабочего места получилась $656. На мой взгляд это минимум, так как в расчет не были включены затраты на серверную стойку, блоки питания и др. поэтому быстрее всего сумма будет больше и составит порядка $700-800.
Расчет для терминального доступа:
 

 


Для терминального доступа стоимость одного рабочего места получилась $426. На мой взгляд это минимум, так как в расчет не были включены затраты на серверную стойку, блоки питания и др. поэтому быстрее всего сумма будет больше и составит порядка $500-600.
Для принятия правильного решения о использовании одной из технологий не мешало бы вспомнить и подумать вот еще о чем:
Во-первых, приложения, требующие доступа с правами администратора. Данные приложения можно запустить и на терминальном сервере, тогда получиться, что пользователь, получивший доступ к такому приложению, работает в контексте администратора. Следовательно, в случае некорректных действий такого пользователя может произойти сбой, и работа всех пользователей может неожиданно остановиться в самый разгар рабочего дня. При работе же в виртуальном десктопе «пострадает» только одна виртуальная машина – машина этого же пользователя.
Во-вторых, может встретиться случай, что производитель некоторого программного обеспечения не поддерживает терминальный режим и, следовательно, могут возникнуть косяки.
И, наконец, третья причина – нестабильно работающее приложение. При работе в терминальном режиме изоляция происходит на уровне сессии, и если приложение вызывает сбой на уровне самой ОС, то вместе с пользователем, запустившим такое приложение, перезагрузятся и остальные пользователи, работающие на этом же сервере. А при использовании виртуализации десктопов перезагружена будет только одна виртуальная машина.
Итак, для успешного решения задачи необходимо - руководствоваться здравым смыслом и ориентироваться на стоящие перед вами задачи. Вот некоторые из действий, которые могут в этом помочь:
  1. Необходимо сегментировать своих пользователей на группы в зависимости от того, какие ресурсы им необходимы для работы.
  2. Провести инвентаризацию приложений, выяснить, где и как они могут быть использованы в новой инфраструктуре.
  3. Провести аудит имеющихся лицензий Microsoft в целях понимания, что потребуется еще приобретать для построения полнофункционального решения.
  4. Проверить каналы связи (их качество и текущую загруженность), по которым пользователи будут подключаться к ресурсам.
  5. Посмотреть на протоколы доступа, с которыми может работать решение. Можно выделить три наиболее распространенных протокола: RemoteFX (RDP) от компании Microsoft, PCoIP от компании Teradici и HDX (также хорошо известный, как ICA) от компании Citrix Systems.
  6. Оценить возможности, предоставляемые протоколом доступа, особенно в части работы с тем оборудованием, которое сотрудники подключают локально и которое теперь должно будет перенаправляться или пробрасываться в виртуальную машину или терминальное приложение. Такими устройствами могут быть принтеры, сканеры, считыватели штрих-кодов, устройства безопасности, гарнитуры и т.д. Особое внимание нужно уделить тому, к каким портам данные устройства подключаются – COM или USB.
  7. Определиться с устройствами, с которых пользователи будут удаленно подключаться к ресурсам. При выборе клиентских устройств необходимо будет проверить, с какими протоколами они могут работать, а также какими возможностями обладают сами устройства (сколько и каких портов имеет устройство, а также какими вычислительными ресурсами располагает клиент).
Ну вот и все... Очередная статья закончена. Очень жду отзывов по всем уже опубликованным статьям. До скорой встречи!

Комментарии

Популярные сообщения