OpenUDS виртуализация Linux приложений

Материал из ALT Linux Wiki

OpenUDS позволяет разворачивать и управлять сеансами виртуализированных приложений Linux. Удалённый доступ обеспечивается с помощью X2Go. Подключение возможно как с клиентов под управлением Windows, так и Linux.

Приложения запускаются на независимых виртуальных машинах (ВМ), создаваемых OpenUDS на основе шаблона — ВМ, на которой предварительно установлены нужные приложения.

Если пользователь обращается к нескольким приложениям, все они запускаются на одном и том же виртуальном рабочем столе, что позволяет эффективно использовать ресурсы.

Подготовка шаблона ВМ (ОС Альт)

Подготовка шаблона ВМ:

  1. Установить ОС.
  2. Установить сервер X2Go:
    # apt-get update
    # apt-get install x2goserver
    # systemctl enable --now x2goserver
    
  3. Установить и зарегистрировать OpenUDS Actor (см. раздел Подготовка шаблона ВМ).

Настройка на сервере OpenUDS

На сервере OpenUDS:

  1. Зарегистрировать поставщика услуг для используемой платформы виртуализации (Proxmox VE, OpenNebula и т.д.), если он ещё не создан, и базовую службу, указав подготовленный шаблон ВМ (подробнее см. Регистрация поставщика услуг).
  2. Зарегистрировать аутентификатор и создать пользователей (см. Настройка аутентификации пользователей).
  3. Создать менеджер ОС, выбрав тип «Linux OS менеджер» (этот шаг можно пропустить, если используется поставщик машин статических IP):
    OpenUDS. Создание менеджера ОС
    Создание менеджера ОС:
    OpenUDS. Настройка менеджера ОС
    На вкладке «Расширенный» в поле «Действие при выходе из системы» рекомендуется выбрать:
    • «Удалить сервис» — ВМ удаляется сразу после завершения сеанса;
    • «Держать сервис привязанным» — ВМ сохраняется для повторного использования (полезно при частых подключениях)
    OpenUDS. Настройка менеджера ОС — «Действие при выходе из системы»
  4. Создать транспорт (для каждого виртуального приложения создаётся отдельный транспорт):
    • в разделе «Транспорты» нажать кнопку «Новый» → «X2Go»:
      OpenUDS. Создание транспорта
    • на вкладке «Основной» задать название транспорта. Рекомендуется указать здесь имя приложения — оно будет отображаться пользователю (особенно важно, если в одном пуле опубликовано несколько приложений):
      OpenUDS. Настройка транспорта — вкладка «Основной»
    • на вкладке «Учётные данные» указать учётную запись пользователя, от имени которого будет запускаться приложение (пользователь должен существовать в шаблоне ВМ):
      OpenUDS. Настройка транспорта — вкладка «Учётные данные»
    • на вкладке «Параметры»:
      • в списке «Экран» выбрать пункт «UDS vAPP»;
      • в поле «vAPP» указать полный путь к исполняемому файлу приложения (установленному на шаблоне ВМ):
      OpenUDS. Настройка транспорта — вкладка «Параметры»
    • на вкладке «Расширенный» можно задать раскладку клавиатуры, определить качество изображения:
      OpenUDS. Настройка транспорта — вкладка «Расширенный»
    • нажать кнопку «Сохранить».
  5. Создать «Пул услуг»:
    • на вкладке «Основной» указать имя службы, выбрать базовую службу (список «Базовый сервис») и менеджер ОС («ОС менеджер»):
      OpenUDS. Настройка пула услуг — вкладка «Основной»
    • на вкладке «Экран/Дисплей»:
      • указать, в какой группе будет отображаться этот пул (группа должна быть предварительно создана в разделе «Пулы»→«Группы»);
      • указать, какое изображение будет использовать приложение (изображение должно быть предварительно загружено в разделе «Инструменты»→«Галерея»).
      OpenUDS. Настройка пула услуг — вкладка «Экран/Дисплей»
    • на вкладке «Доступность» указать количество услуг, которые должны быть доступными для подключения пользователей. Рекомендуется, чтобы общее количество доступных ВМ соответствовало ожидаемому числу одновременных пользователей.
      OpenUDS. Настройка пула услуг — вкладка «Доступность»
    • сохранить конфигурацию, нажав кнопку «Сохранить».
  6. В настройках созданного пула:
    • на вкладке «Группы» указать, какие группы пользователей имеют доступ к виртуальному приложению;
    • на вкладке «Транспорты» назначить ранее созданный транспорт X2Go (где был определен путь к виртуальному приложению):
      OpenUDS. Новый транспорт для «Service Pools»
      К одному пулу можно назначить несколько транспортов (по одному на приложение).
    • на вкладке «Кэш» (для платформ виртуализации — PVE, OpenNebula) убедиться, что автоматически сгенерированные рабочие столы настроены правильно.

Настройка клиента подключения

Если в качестве клиента выступает дистрибутив ОС «Альт»:

  • установить клиент OpenUDS (пакет openuds-client) и клиент X2Go (x2goclient):
    # apt-get update
    # apt-get install openuds-client
    # apt-get install x2goclient
    

Если в качестве клиента выступает ОС Windows:

  1. Загрузить клиент X2Go (https://wiki.X2Go.org/doku.php).
  2. Установить клиент X2Go.
  3. Скачать OpenUDS Client для компьютеров с ОС Windows (из панели управления OpenUDS Server):
    Загрузка OpenUDS Client for Microsoft Windows
  4. Установить OpenUDS Client (установка стандартна для Windows-приложений).
Примечание: Рекомендуется проверить подключение к серверу X2Go вручную до использования через OpenUDS.


Доступ к приложениям Linux

После завершения настройки пользователь увидит опубликованные приложения в веб-интерфейсе OpenUDS:

OpenUDS. Доступ к приложениям Linux

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

  • при прямом клике по ВМ запускается приложение по умолчанию (транспорт с наивысшим приоритетом, то есть с наименьшим значением поля «Приоритет»);
  • чтобы запустить другое приложение, выберите его из раскрывающегося списка:

OpenUDS. Выбор приложения из списка