Виртуализацией уже никого не удивить. Виртуализируется сегодня все: серверы, приложения, рабочие места. Однако для большинства рядовых пользователей эта технология является чем-то вроде того суслика из фильма ДМБ: «ты не видишь, я не вижу, а он есть». Однако все меняется, когда приходят они — виртуальные рабочие места, и вместо громоздкого системного блока или ноутбука на столе офисных работников появляется маленькая коробочка, т.н. тонкий клиент. Конечно, все может быть и немного по-другому, но сути это не меняет. О том, что такое виртуализация десктопов, какая она бывает, и что ждет нас в будущем, мы и поговорим.

Итак, что такое VDI (инфраструктура виртуальных рабочих столов)? Все просто: на физическом сервере разворачиваются виртуальные машины с пользовательскими либо серверными ОС, которые доступны через интернет из любой точки мира, где он есть (от 64 Кбит/с, если работу надо сделать, не считаясь с комфортом) с любого «умного» девайса. При этом для пользователя ничего не поменяется, но вот для ИТ-департамента ситуация с администрированием значительно изменится с точки зрения безопасности доступа к данным, доступности рабочих мест, простоты и стоимости обслуживания. Несмотря на сравнительно большую стоимость VDI (иногда в несколько раз) по сравнению с терминальным доступом, в случае, когда обязательным условием является изоляция рабочей среды пользователя с клиентской ОС на уровне отдельной виртуальной машины, VDI становится наиболее экономичным вариантом разворачивания новых точек и офисов вне зависимости от географии присутствия компании. При этом сохраняется вся функциональность сотрудников на местах и значительно снижается риск утечек конфиденциальной корпоративной информации за счет централизации управления рабочими данными.

VDI или терминальный доступ: критерии выбора


Основные вендоры VDI-решений активно рекламируют VDI как must have для средних и малых компаний, но, положа руку на сердце, малому и среднему бизнесу виртуальные рабочие столы не нужны по той цене, по которой они предлагаются. Даже если вдруг потребуется жесткое соблюдение политик безопасности, терминального доступа более чем достаточно. Под терминальным доступом в самом общем плане имеем ввиду удаленный доступ множества пользователей к приложениям, запущенным в рамках операционной системы сервера, общей для всех пользователей, с едиными низкоуровневыми системными процессами и т.д. Это основное отличие от VDI, где для каждого пользователя на аппаратном сервере будет развернута отдельная виртуальная машина с операционной системой и необходимыми конкретному пользователю приложениями. Также существует выгодная гибридная схема, когда пользователь подключен к серверной ОС, но 1 пользователь = 1 виртуальная машина. Это так называемый «серверный VDI», сочетающий в себе плюсы терминального решения и виртуализации десктопов.

С точки зрения экономии терминальные сервисы остаются предпочтительным вариантом. Если никаких ограничений (основная проблема терминального режима заключается в том, что это серверная ОС и многопользовательская система) работоспособности приложений нет, то компания продолжает использовать виртуальные сервисы как наиболее экономичный вариант. Какие ограничения могут быть:

  1. Производитель приложения говорит, что не поддерживает приложение в терминальной среде. При этом оно может работать там совершенно нормально, но если что-то произойдет, то вендор откажет в поддержке. Например, Autodesk Autocad. До определённой версии он официально не поддерживался в терминальной среде, но исправно в ней работал. Однако поддерживался Autodesk Autocad Map 3D, который в функциональном плане от обычного Autodesk Autocad почти не отличался.

  2. Приложения собственной разработки, написанные с отступлением от лучших практик. Например, используются недокументированные функции или вызовы, как результат – приложение «привязано» к одной конкретной версии ОС и не может быть перенесено на любую другую – клиентскую или серверную. Зачастую такие приложения никуда нельзя перенести без того, чтобы они либо не потеряли часть функций, либо вообще не перестали работать.

  3. Устаревшие или «доработанные напильником» приложения, которые при запуске требуют прав администратора. На локальной машине это нормальная ситуация, но в терминальном режиме каждый пользователь, запустивший такое ПО, будет работать под правами администратора, и если он решит, например, выключить сервер, так как он администратор, он это сможет сделать и все другие пользователи на этом сервере останутся без доступа к своим рабочим местам.

  4. Приложение работает, всех устраивает, но оно периодически вызывает падение «синего экрана». Например, если оно раз в месяц падает на личном ПК – ничего страшного. Но если оно будет работать в терминальной среде на 100 пользователей, то статистически начнет падать по 3 раза в день.

В этих 4 сценариях рекомендуется использовать виртуальные десктопы вместо терминальных сервисов.

VDI гипервизорная


Давайте оговоримся: под VDI мы рассматриваем проекты внедрения виртуализации рабочих мест у преимущественно крупного бизнеса. На чем же они строятся, и какие есть варианты?



По сути, сегодня есть всего два варианта виртуальной инфраструктуры рабочих мест (терминальный доступ и «серверный VDI», упомянутый выше, также часто используются для решения задач VDI, но за полноценный VDI мы их считать не будем): гипервизорная и контейнерная. Гипервизорная наиболее распространена, и именно к этому виду относится большинство популярных решений для виртуализации от таких производителей как Microsoft, VMware и Citrix. Причем в связи с тем, что такая модель наиболее распространена, она имеет множество отлаженных «фишек», которые недоступны в случае с «контейнерами». Например, функцию прямого подключения дополнительного GPU, часто требующегося в конструкторских и дизайнерских бюро. Подобная технология (GRID Virtual GPU) полноценно поддерживается гипервизором XenServer. Рассмотрим же ПО для обеспечения удаленного доступа к рабочим столам Citrix XenApp и XenDesktop.

На сегодня архитектурно XenApp и XenDesktop друг от друга не отличаются. Единственно, что их технически отличает – агент, который ставится на клиентскую ОС – VDI (часто именно это называют XenDesktop) или на серверную ОС – терминальный сервер (то, что подразумевается под XenApp). Однако, не нужно забывать, что в XenDesktop начиная с редакции Enterprise включены и VDI и терминальные сервисы. Раньше, до версии 7, технически это были два разных продукта – разная архитектура, консоли управления. И если пользователю система представлялась единой, то администратору было сложнее: фактически в рамках решения присутствовали и терминальные сервисы, и виртуальные десктопы, настройку каждого из них приходилось выполнять отдельно в разных местах. Сейчас в решении есть единая консоль для терминального варианта и виртуальных десктопов, единый веб-портал, где можно отслеживать состояние системы (Desktop Director), статус конкретной машины и многое другое.

Инфраструктура виртуализации десктопов Citrix работает на любом гипервизоре: XenServer, Microsoft Hyper-V, VMware ESXi, и Nutanix Acropolis. Это четыре гипервизора, где система может сама автоматически создавать виртуальные машины, удалять их, перезапускать, выключать. Соответственно, при смене гипервизора можно бесшовно перейти с одного на другой. В случае с другими гипервизорами XenDesktop будет воспринимать виртуальные машины как физические, без возможности их автоматического создания, удаления и управления.

С помощью XenDesktop фактически можно заменить рабочее место любого сотрудника. В рамках данного решения используется свой фирменный протокол передачи данных. В случае если нет возможности использовать агента, который ставиться на клиентское рабочее место, используется собственная (Citrix) реализация HTML5. Это одно из отличий от продуктов некоторых других вендоров, у которых один протокол лицензированный, второй — собственной разработки.
Даже если у кого-то из заказчиков еще остался промышленный UNIX (AIX, HP Unix, Solaris), то в рамках XenApp и XenDesktop начиная с редакции Enterprise есть возможность поставить XenApp for UNIX. Соответственно, продукты Citrix поддерживаются серверными операционными системами Windows и различными вариантами Linux. Если нужно использовать офлайновый режим работы, то есть отдельный продукт Desktop Player, который работает на Mac- и Windows-ноутбуках. Это корпоративное решение, которое не подразумевает, что конечный пользователь сам может развернуть себе виртуальную машину, это можно сделать только с помощью администратора.

При вопросе «что выбрать?» стоит исходить не из конкретного желаемого продукта, а из ограничений, накладываемых приложениями, их вариантами лицензирования, требованиями пользователей и стоимостью всего решения. XenApp в чистом виде лицензируется только как конкурентный пользователь. XenDesktop может лицензироваться и как конкурентный пользователь, и как пользователь/устройство, то есть здесь нет отдельной лицензии на пользователя и на устройство. В этом случае работает логика сервера лицензий, который выбирает, в какой вариант переключиться, чтобы было потреблено наименьшее количество лицензий при текущем использовании.

Разница в стоимости лицензии пользователь/устройство против конкурентного пользователя (XenApp и XenDesktop) приблизительно в два раза. Иногда получается, что заказчику нужен XenApp, но ему выгоднее купить XenDesktop, который продается по схеме лицензирования пользователь-устройство. Он получит необходимое ему в два раза дешевле, но при этом сможет в дальнейшем при необходимости подключить виртуальные десктопы.

VDI контейнерная и из облака




Теперь поговорим о контейнерной виртуализации. На сегодня она является экзотикой, самый известный пример такой технологии — Parallels Containers для Windows. Главное преимущество этого варианта – значительно большая по сравнению с традиционным VDI (но меньшая, чем у терминальных сервисов) плотность размещения пользователей на сервере (до 250 мест), и в некоторых случаях возможность немного сэкономить на лицензиях ПО Microsoft. Контейнерная виртуализация объединяет в себе ряд плюсов, но и ряд минусов, перешедших к ней от VDI и терминальных сервисов. До выхода Windows Server 2016 Microsoft не поддерживала контейнерные технологии вообще, и компании, внедрившие этот продукт в свою инфраструктуру, при выходе любого обновления к серверной ОС (а это десктоп серверной ОС) должны были ждать, пока Parallels проверит и даст добро на установку соответствующего обновления. Теперь, после выхода Windows Server 2016, и официальной поддержки технологии контейнеров Windows в рамках ОС ситуация может изменится.

Контейнерная технология виртуализации работает в ядре ОС (Windows Server 2008/2012), что позволяет разделять объекты ядра между контейнерами, тем самым изолируя их друг от друга. Каждый контейнер имеет свой собственный набор процессов, сессий и драйверов, а также реестр и дерево объектов ядра. При этом достигается полноценная виртуализация рабочих столов, а пользователи не замечают никакой разницы по сравнению с классическим вариантом, потому что видит десктоп серверной ОС, специальными темами «перекрашенный» в привычную ему клиентскую операционную систему. В среднем в таком варианте требуется в полтора раза меньше вычислительных ресурсов и ресурсов СХД, чем в случае гипервизора. Нельзя сказать, что этот вариант однозначно экономичнее, чем классическая VDI, но при определенных условиях экономия на вычислительной мощности серверной части может стать главной и оправдать внедрение с точки зрения бизнеса. Стоит сказать, что на сегодняшний момент это все еще не до конца признанная технология виртуализации десктопов (Microsoft до сих пор не оказывает поддержку при таком варианте VDI) и часть возможностей, доступных гипервизорной виртуализации, недоступна контейнерной.

Вот актуальные на сегодня подходы к VDI. Что же дальше? А дальше путь идет «в облака». Например, уже сегодня в VMware Horison 7 в версии Enterprise реализован запуск десктопов и приложений с помощью облачной автоматизации. Однако стоит учесть, что согласно лицензионным правилам Microsoft, на настоящий момент доставка клиентского десктопа из публичного облака запрещена. Единственное «послабление» сделано для продуктов Citrix. В начале 2016 года компании Citrix и Microsoft объявили о том, что единственным легальным вариантом будет развернутая в облаке Microsoft Azure система XenDesktop. В этом случае можно будет отдавать пользователю Windows 10 в качестве десктопа. XenDesktop уже сейчас можно развернуть «из коробки» в облачных средах Amazon Web Services, Microsoft Azure или в рамках Cloud Platform.

Пока что это лишь зачатки «включения» в продукт виртуализации облачных сред, но действительность ИТ с все возрастающим множеством «..aaS» говорит о том, что возможно появится и аббревиатура «VDI-as-a-Service». Реализуется поддержка программных продуктов конкурента, а также работа с максимальным числом ОС и ПО, как открытого, так и проприетарного. Что ждет VDI – покажет время, но очевидно, что трансформация не останавливается, становится доступнее и проще. Возможно, мы застанем те времена, когда «толстый» клиент полностью будет вытеснен тонким.
Поделиться с друзьями
-->

Комментарии (11)


  1. Mako_357
    10.11.2016 21:29

    Если мы говорим про десктоп, то почему ни слова про графику? Как то некомфортно работать, когда скроллинг дёрганый или любая анимация тормозит. Или я отстал от жизни?


    1. navion
      11.11.2016 03:25

      Комфорт для печатных машинок считается непозволительной роскошью, а все красивости с анимациями стараются отключать.


      1. sergx71
        17.11.2016 13:50

        Всё очень сильно зависит от тех задач, которые хотят решить с помощью решения с виртуальными десктопами или терминальными приложениями. Если основной целью внедрения является предоставление возможности сотрудникам работать по каналам с минимальным потреблением трафика, то да – вы абсолютно правы, администратор будет изыскивать все возможности, чтобы с помощью политик, твиков убрать у пользователя всё, что вызывает дополнительную нагрузку с точки зрения сетевой подсистемы. С другой стороны есть множество примеров, когда основными триггерами внедрения были – повышение безопасности решения; доступ пользователей к бизнес приложениям с любых устройств (планшеты, смартфоны, альтернативные ОС); возможность привлечения талантов из других регионов; экономия на стоимости рабочей силы и арендных платежей; необходимость предоставления доступа к тяжёлым графическим приложениям. Во всех этих случаях обеспечение комфортности работы пользователя является одной из приоритетных задач.

        Мако_357 и navion – описанные вами ситуации были справедливы к системам развёртываемым несколько лет назад. Прогресс на месте не стоит


        1. navion
          17.11.2016 14:27

          Скорее у современных ОС интерфейсы стали такими медленными, что тормоза от терминала почти незаметны.

          С трудом могу представить проект, где сервер набьют гридами и терадичевскими картами ради красивостей в ворде у офисных работников, а не увеличения плотности.


    1. sergx71
      17.11.2016 13:22

      Про графику сказали :) Сейчас есть различные варианты предоставления графических возможностей при удалённой работе: Терминальные приложения могут воспользоваться ресурсами графической карты установленной в сервер (если речь идёт про аппаратный сервер). В случае виртуальной машины можно использовать проброс графического ядра в ВМ, можно работать с виртуальной графической картой vGPU от NVidia или GVT-g от компании Intel. Если нагрузка со стороны графики не очень большая, то можно использовать варианты эмуляции графических карт средствами гипервизора. На стороне клиентского устройства применяются свои «хитрости» — обработка графической информации не центральным процессором, а выделенным чипом, что позволяет например на устройстве, стоимостью менее 100$, построенном на ARM процессоре, осуществлять просмотр FullHD видео. Но не следует забывать о том, в комфортность работы пользователя немалый вклад вносит протокол и доступная полоса пропускания.


      1. navion
        17.11.2016 13:37

        а выделенным чипом, что позволяет например на устройстве, стоимостью менее 100$

        Это какое же устройство на чипе Teradici продают за сотню баксов?


  1. vlreshet
    11.11.2016 15:37

    Всё новое — хорошо забытое старое? В начале 2000х везде стояли тонкие клиенты, потом от них избавились, ибо тормозило и лагало. А теперь снова этот тренд возвращается?


    1. sergx71
      17.11.2016 13:53

      А он никуда и не девался. На самом деле можно исторически вернуться в ещё более далёкое прошлое и вспомнить мейнфреймы и алфавитно-цифровые терминалы. Та же самая идея – работа осуществляется на мощной машине, разделяя её ресурсы, а простые конечные устройства использовались лишь для ввода и отображения информации. Затем наступила эра ПК, и идеи удалённой работы на какое-то время отошли на второй план. Затем терминальные сервисы стали использоваться как средство решения определённых тактических задач, а сейчас они же + виртуализация десктопов позволяют говорить о переносе нагрузки в облака и переходе к использованию различных xaaS решений.


  1. DYm00n
    11.11.2016 19:59

    Далек от подобного, поэтому хотелось бы узнать у знающих людей. Лет 10-15 назад были тонки клиенты, как я понимаю, смысл их — тупая железка с минимальным софтом конектится к серверу, а уже на нем запускается «твоя операционка», а подобные системы, это по сути то же самое, только запускать их можно практически на любом устройстве (планшет, смартофон, малинка) и через сеть, или инет конектится в своей операционке, которая может находиться на др. континенте?


    1. 0000168
      14.11.2016 13:05
      +1

      Это из оперы про Мейнфре?ймы, на заре компьютерной эры это было из разряда «must have». Потом их благополучно вытеснили сервер, и ПК.
      Сейчас когда мы живем в 4ой эре , они опять возвращаются для обслуживания наших все возрастающих цифровых потребностей.


    1. sergx71
      17.11.2016 14:20

      В целом да – идея именно такая. Убирается зависимость от того, на какой платформе работает приложение, какое устройство у пользователя есть сейчас в руках, а также где сейчас находится этот пользователь. Если есть сеть передачи данных, есть устройство, которое может подключаться к этой сети, и есть агент для данной платформы, то пользователь может работать со своими приложениями. Сейчас даже последнее требование не является обязательным, так как есть возможность подключиться к системам, используя браузер с поддержкой HTML5.