Часть 1. Знакомство с архитектурой и назначением
Программный продукт Termidesk от российского разработчика ООО «УВЕОН — ОБЛАЧНЫЕ ТЕХНОЛОГИИ» (входит в группу компаний «Астра») предназначен для создания инфраструктур виртуальных рабочих мест (VDI). Чтобы ускорить его развитие и обеспечить высокий уровень сервиса для заказчиков, в ГК «Астра» на ближайшие годы запланировано десятикратное увеличение штата профильных специалистов, и поэтому мы ежедневно проводим собеседования для кандидатов на технические позиции всех уровней.
Интересная, но вполне объяснимая особенность выяснилась на этапе их знакомства с устройством инфраструктуры виртуальных рабочих мест. Многие, имея широкий кругозор и опыт в технологиях, протоколах и решениях по направлению LDAP, FreeIPA, MS AD, Docker, vSphere, libvirt/KVM, oVirt, OpenNebula, OpenStack, SPICE, RDP и VNC, зачастую не всегда уверенно представляют себе принципы построения и ключевые отличия платформ серверной виртуализации от законченной инфраструктуры VDI.
Один из факторов того, почему так происходит, можно проиллюстрировать примером развития самих платформ серверной виртуализации. Далеко не сразу системные администраторы приняли саму идею положить все яйца сервисы в одну корзину, но по мере развития технологий, применения средств резервного копирования подобные решения стали находить все более широкое применение.
Сейчас, пожалуй, уже не встретить примеров, когда новая ИТ-инфраструктура всецело полагается на подход «1 сервер — 1 сервис» и использование виртуализации де-факто становится неотъемлемым подходом при построении инфо-коммуникационной инфраструктуры масштаба предприятия.
Подобное, уверены, будет происходить и с технологией VDI по причине простоты её использования и широкого спектра преимуществ. На следующем примере мы можем увидеть, как брюки превращаются легко пользователь может получить доступ к рабочему месту с набором предустановленного программного обеспечения с любого устройства из любой точки.
Как, зная и понимая предназначение составляющих «кирпичиков», понять комплексную картину? Возможно, целесообразно пойти от частного к общему, но для простоты восприятия попробуем наоборот и в сравнении:
На картинке виден идентичный многоуровневый подход к построению инфраструктуры виртуальных рабочих мест. Но почему VDI — это не монолитный продукт в виде EXE\MSI файла?
Ответ на данный вопрос приводится в рекомендации международного союза электросвязи в виде описания функциональной архитектуры модели DaaS (Desktop as a Service) — рабочего места как услуги.
Уместным будет также дать короткое принципиальное различие подходов:
DaaS — это услуга, предоставляющая удаленный доступ к виртуализированным рабочим местам и приложениям;
VDI — это продукт, который развертывается в локальном центре обработки данных и, подобно DaaS, предоставляет удаленный доступ к виртуализированным рабочим местам и приложениям.
В рекомендации же выделяется ряд принципиальных составляющих систем VDI / DaaS, которые находят применение в построении инфраструктуры рабочих мест на основе Termidesk.
Диспетчер подключений
Основная задача диспетчера — предоставить авторизованному пользователю его виртуальное рабочее место (ВРМ). Для этого реализованы следующие функции:
взаимодействие с поставщиком услуг (платформой виртуализации), на котором размещается ВРМ;
взаимодействие с локальной системой идентификации или централизованными сервисами каталогов для процедур аутентификации и авторизации пользователей;
настройка гостевой операционной системы (ОС) ВРМ в соответствии с заданными параметрами — изменение имени узла, ввод в доменную инфраструктуру;
поддержание жизненного цикла ВРМ.
Диспетчер формирует фонды ВРМ в следующих режимах:
индивидуальные рабочие места — для пользователя формируется отдельная виртуальная машина, содержащая необходимый набор прикладного ПО. Состояние ВРМ сохраняется при выходе пользователя;
коллективные рабочие места — на основе шаблона ВРМ для нескольких пользователей формируется набор виртуальных машин с необходимым набором прикладного ПО. Данные пользователя не сохраняются в ВРМ, и оно удаляется после выхода пользователя. ВРМ назначается первому подключившемуся пользователю.
Управление и конфигурация диспетчера производятся через графический интерфейс управления и командную строку.
Шлюз подключений
Шлюз обеспечивает изоляцию инфраструктуры ВРМ от внешнего мира посредством использования одного IPv4-адреса и одного TCP-порта и может быть установлен совместно с диспетчером или отдельно для целей масштабирования.
Агент гостевой ОС
Данный компонент устанавливается в гостевую ОС и, обмениваясь данными с диспетчером подключений, позволяет гибко управлять виртуальными рабочими местами, поддерживая двухстороннюю связь.
Клиент подключений
Это программа устанавливается на компьютер пользователя, который может представлять собой нулевой, тонкий или толстый клиент под управлением различных ОС. Программа выполняет задачи подключения к диспетчеру подключений и запуску приложения для выбранного протокола доставки.
В этой связи любой продукт VDI или услуга DaaS представляется комплексным решением, где каждому компоненту отводится своя существенная роль. Для наглядности приведем следующую картину, описывающую более наглядно взаимосвязи диспетчера подключений, протоколов доставки и поддержку взаимодействия при помощи клиента подключений и агента гостевой операционной системы.
Об основных достижениях разработок, особенностях их технической реализации мы планируем информировать сообщество в последующих циклах статей в рамках исполнения нашей дорожной карты развития Termidesk, релизы которого выпускаются на ежеквартальной основе с выходом мажорного релиза в конце календарного года.
Из основных разработок этого года можно выделить следующие компоненты и функционал:
Termidesk Viewer – компонент, который уже создан для замены модуля Remote Viewer. Реализация данного компонента позволяет оптимизировать как полосу пропускания, так и качество восприятия пользователей при работе с решениями видеоконференц-связи;
стример приложений – компонент, который позволит реализовать доставку отдельных приложений (Linux / Windows) и монтирование отдельных приложений в гостевую ОС;
менеджер профилей пользователей – компонент, который позволяет явно отделить пользовательские данные от образа самой виртуальной машины.
На следующем примере мы используем подключение к ВРМ при помощи клиента подключений с применением компонента Termidesk Viewer, на котором можно наблюдать оптимизацию полосы пропускания при пробросе видеокамеры:
оптимизированная работа в ВКС для Termidesk Viewer (на примере — порядка 1,5 Мбит/с);
проброс камеры как RAW устройства в ВРМ, используется по умолчанию для Remote (Virt) Viewer (на примере — порядка 31,5 Мбит/с).
Мониторинг сетевой активности в режиме реального времени исходящего трафика (с устройства подключения) для видеокамеры в ВРМ выполняется и отображается внизу экрана при помощи команды iftop.
Особенности работы инфраструктуры серверной виртуализации в этом случае могут принципиально различаться в зависимости от выбранного решения. Сам же диспетчер подключений виртуальных рабочих мест Termidesk умеет взаимодействовать c широким спектром решений, включая ПК СВ «Брест», zVirt, VMware, Aerodisk vAir, oVirt, Openstack, и другими облачными платформами, предлагающими пользователям услугу DaaS.
На этом краткий обзор решений VDI / DaaS на примере Termidesk завершен. В следующих статьях мы начнем раскрывать особенности функциональных возможностей нашего продукта. До скорой встречи!
И да, мы часто используем наши же продукты как в работе, так и на собеседованиях. Поэтому, если у кого-то есть заинтересованность в данном направлении развития, мы с удовольствием встретимся с вами. Пишите нам на info@uveon.ru и подписывайтесь на вакансии ГК «Астра» на сервисе HH или на Хабр.Карьере.