VDI
VDI
VDI, или Virtual Desktop Infrastructure, — инфраструктура виртуальных рабочих столов. Это общее название идеологии, согласно которой сотрудники для выполнения своих задач используют удаленные рабочие места, организованные на виртуальных машинах. Эта концепция не нова и похожа на использование терминального сервера. Отличается тем, что такой терминальный сервер организуется в виртуальной машине, возможно для каждого сотрудника отдельной и даже не единственной. Сами сотрудники при этом могут использовать т.н. "тонкие клиенты".
Так что же это такое?
Так как это концепция, то возникает путаница (технические нюансы) того, что понимать под термином VDI:
- только удаленный доступ к рабочему окружению (или только протокол VNC, RDP, SPICE, X2Go)
- терминальный виртуальный сервер для множества пользователей с протоколом удаленного доступа (Xvnc, Xspice, Xrdp)
- доступ к консоли виртуальной машины (к qemu) по VNC или SPICE
Кто-то считает, что установив X2Go на виртуальном сервере и предоставив доступ пользователям, уже можно называть подобное VDI. Или предоставление доступа к консоли виртуалки в PVE или OpenNebula по SPICE тоже можно назвать VDI. Но это все просто удаленный доступ к рабочему месту.
Критерии
Предлагаю называть VDI нечто большее, обладающее следующими характеристиками (некоторые могут быть опциональными):
- система управления виртуальными машинами или использование существующих систем управления (VMware, PVE, OpenNebula, Openstack и т.п.)
- брокер соединений от пользователя к виртуальным машинам, единая точка входа пользователей с аутентификацией
- клиентское приложение или web-приложение для доступа к удаленному рабочему месту
- использование golden image и средств управления им (эталонный образ-шаблон виртуальной машины), который будет клонироваться при создании виртуальной машины
- возможность создавать виртуальные машины по требованию пользователя
- сквозная аутентификация (SSO) в системе управления VDI и гостевой ОС внутри виртуальной машины
- возможность выполнения дополнительных скриптов и применения настроек после разворачивания виртуальной машины (например, ввод в домен AD, Samba или FreeIPA)
Что есть в репо
В основном на рынке представлены коммерческие и довольно дорогие системы VDI. В Альт присутствуют следующие решения VDI:
- ravada — проект со своей системой управления виртуальными машинами, с минимум функций, доступом пользователей к VM через web-интерфейс. Назвать VDI можно с натяжкой. Но для простых применений может быть достаточным.
- openuds — продвинутая VDI, удовлетворяющая множеству вышеперечисленных требований, использует различные системы управления VM (PVE, OpenNebula, OpenStack). Состоит из нескольких взаимосвязанных компонентов: server (брокер — django приложение), tunnel (guacomole), actor (ПО для взаимодействия из виртуальной машины с брокером), client (python GUI приложение для клиентов).