понедельник, 10 февраля 2020 г.

Использование физических ПК в качестве рабочих столов в Horizon

Update: На сайте techzone.vmware.com доступен документ Using Horizon 7 to Access Physical Windows Machines, описывающий детали использования физических ПК в Horizon (https://techzone.vmware.com/resource/using-horizon-7-access-physical-windows-machines).

Одной из основных сложностей в организации работы VDI является предоставление необходимых вычислительных и дисковых ресурсов для запуска виртуальных десктопов. И дело не только в стоимости этих ресурсов. Если приобрести или арендовать необходимые лицензии, или даже взять в тестовое пользование, можно в течение нескольких дней, то поставка, установка и настройка оборудования может потребовать недели или даже месяцы. Для того, чтобы быстрее предоставить пользователям удаленный доступ к рабочим столам, в Horizon можно создавать пулы, включающие существующие физические компьютеры: настольные ПК или ноутбуки.

Среди плюсов такого решения:
  • Простота настройки VDI. Поскольку пользователи уже работают со своими ПК, то не требуется создавать и распространять эталонный образ, устанавливать приложения, мигрировать данные пользователей. Достаточно поставить агент Horizon Agent на ПК, создать пулы с физическими десктопами и назначить их нужным пользователям.
  • Отсутствие необходимости модернизировать серверную инфраструктуру. Для работы VDI достаточно поднять один сервер Horizon Connection Server (или несколько, если требуется отказоусточивость и масштабирование) с 4 vCPU и 10 ГБ ОЗУ, и один или несколько Unified Access Gateway c 2 vCPU и 4 ГБ ОЗУ для организации удаленного доступа пользователей из Интернет. 
  • Широкие функциональные возможности по работе с ПК в удаленном режиме - пользователи могут подключать различные периферийные устройства: принтеры, сканеры, USB-накопители, гарнитуры и web-камеры, копировать данные через буфер обмена или общие папки, использовать возможности графических адаптеров для воспроизведения видео или работы с 3D приложениями и многое другое.
  • Быстрая адаптация для пользователей. Пользователи работают со своими ПК, с ОС и приложениями, к которым они привыкли.
К минусам можно отнести:
  • Отсутствие возможности удаленной перезагрузки и диагности устройства. Если ПК зависнет, сотрудникам поддержки придется разбираться с проблемой локально.
  • Сложность поддержки. Поскольку физические ПК являются персональными устройствами, то обеспечение доступности и сохранности данных на ПК становится первоочередной задачей.
В старых версиях Horizon для подключения к физическим ПК применялись протоколы RDP или PCoIP. PCoIP хотя и обеспечивает более высокий уровень производительности, но требует установки в ПК адаптера PCoIP Host Card (http://blog.vmpress.org/2013/08/pcoip-1.html) и дополнительное сетевое подключение для передачи трафика PCoIP.

Начиная с 7.7, в Horizon появилась поддержка подключения к физическим ПК по протоколу Blast. Это стало возможным благодара появлению в Windows 10 Build 1803 функции Indirect Display Driver, позволяющей захватывать изображение с графического адаптера и перенаправлять его на виртуальные дисплеи.

Поддерживаются графические адаптеры Intel, AMD и NVIDIA, для которых установлены драйверы, совместимые с WDDM 2.4 или выше.

Сама процедура установки и настройки пула с физическими ПК мало чем отличается от создание обычного пула с ВМ. В качестве подготовительных шагов требуется ввести ПК в домен, установить драйвер графического адаптера и актуальную версию Horizon Agent и зарегистрировать ПК на Connection Server.

При создании пула выбрать Manual desktop pool.

В качестве источника десктопов указать Other sources.

Выбрать VMware Blast в качестве протокола по умолчанию.

И выбрать один или несколько физических ПК для добавления в пул.

При подключении к ПК в диспетчере устройств отобразится виртуальный адаптер VMware Horizon Indirect Display Driver.

Дополнительную информацию по адаптеру можно получить из утилиты dxdiag.

Хочу напомнить, что аппаратное кодирование изображения кодеками H.264 и H.265 в Blast доступно только на графических адаптерах NVIDIA.


Более подробно об использовании графических адаптеров NVIDIA в Blast можно прочитать в статьях http://blog.vmpress.org/2017/05/vmware-blast-h264.html и http://blog.vmpress.org/2019/02/horizon-blast-h265.html

Напоследок несколько советов по настройке физических ПК:
  • Отключите гибернацию на ПК. Сделать это можно из меню Control Panel -> Options, или выполнив команду: powercfg /h off
  • Отключите отображение кнопок выключения и перезагрузки ПК из меню Пуск. Сделать это можно через групповые политики: User Configuration -> Administrative Templates -> Start Menu and Taskbar -> Remove and prevent access to the Shut Down, Restart, Sleep, and Hibernate commands. Для того, чтобы применять эту настройку только при удаленном подключении пользователей вы можете использовать VMware Dynamic Environment Manager.
  • Для удаленного включения ПК вы можете задействовать функцию Wake-on-LAN в настройках BIOS на ПК. Для отправки WOL пакетов можно использовать различное ПО управления или просто скрипт на PowerShell: https://gallery.technet.microsoft.com/PowerShell-for-Wake-on-LAN-81f79a0a
  • Для оптимизации ПК для работы в VDI вы можете использовать утилиту: https://flings.vmware.com/vmware-os-optimization-tool