Расчет необходимых ресурсов для реализации сервера удаленных рабочих столов
Приветствую Всех зашедших или заблудших на мой блог.
Сегодня я попытаюсь описать расчет параметров сервера и другого оборудования для
создания сервера удаленных рабочих столов. Для примера будут взяты две
реализации на базе терминального доступа и 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.
Для принятия правильного решения о использовании одной
из технологий не мешало бы вспомнить и подумать вот еще о чем:
Во-первых, приложения, требующие доступа с
правами администратора. Данные приложения можно запустить и на
терминальном сервере, тогда получиться, что пользователь, получивший доступ к
такому приложению, работает в контексте администратора. Следовательно, в случае
некорректных действий такого пользователя может произойти сбой, и работа всех
пользователей может неожиданно остановиться в самый разгар рабочего дня. При
работе же в виртуальном десктопе «пострадает» только одна виртуальная машина –
машина этого же пользователя.
Во-вторых, может встретиться случай, что производитель
некоторого программного обеспечения не поддерживает терминальный режим и,
следовательно, могут возникнуть косяки.
И, наконец, третья причина – нестабильно работающее
приложение. При работе в терминальном режиме изоляция происходит на уровне
сессии, и если приложение вызывает сбой на уровне самой ОС, то вместе с
пользователем, запустившим такое приложение, перезагрузятся и остальные
пользователи, работающие на этом же сервере. А при использовании виртуализации
десктопов перезагружена будет только одна виртуальная машина.
Итак, для успешного решения задачи необходимо -
руководствоваться здравым смыслом и ориентироваться на стоящие перед вами
задачи. Вот некоторые из действий, которые могут в этом помочь:
- Необходимо сегментировать своих пользователей на группы в зависимости от того, какие ресурсы им необходимы для работы.
- Провести инвентаризацию приложений, выяснить, где и как они могут быть использованы в новой инфраструктуре.
- Провести аудит имеющихся лицензий Microsoft в целях понимания, что потребуется еще приобретать для построения полнофункционального решения.
- Проверить каналы связи (их качество и текущую загруженность), по которым пользователи будут подключаться к ресурсам.
- Посмотреть на протоколы доступа, с которыми может работать решение. Можно выделить три наиболее распространенных протокола: RemoteFX (RDP) от компании Microsoft, PCoIP от компании Teradici и HDX (также хорошо известный, как ICA) от компании Citrix Systems.
- Оценить возможности, предоставляемые протоколом доступа, особенно в части работы с тем оборудованием, которое сотрудники подключают локально и которое теперь должно будет перенаправляться или пробрасываться в виртуальную машину или терминальное приложение. Такими устройствами могут быть принтеры, сканеры, считыватели штрих-кодов, устройства безопасности, гарнитуры и т.д. Особое внимание нужно уделить тому, к каким портам данные устройства подключаются – COM или USB.
- Определиться с устройствами, с которых пользователи будут удаленно подключаться к ресурсам. При выборе клиентских устройств необходимо будет проверить, с какими протоколами они могут работать, а также какими возможностями обладают сами устройства (сколько и каких портов имеет устройство, а также какими вычислительными ресурсами располагает клиент).
Комментарии
Отправить комментарий