OpenUDS виртуализация Linux приложений: различия между версиями

Материал из ALT Linux Wiki
Строка 18: Строка 18:


На сервере OpenUDS необходимо:
На сервере OpenUDS необходимо:
# Зарегистрировать «Service providers» для соответствующей платформы виртуализации (если его еще нет) и базовую службу, указав настроенный ранее шаблон ВМ (подробнее см. [[VDI/OpenUDS#Подключение_системы_виртуализации|Регистрация «Service providers»]]).
# Зарегистрировать «Поставщик услуг» для соответствующей платформы виртуализации (если его еще нет) и базовую службу, указав настроенный ранее шаблон ВМ (подробнее см. [[VDI/OpenUDS#Подключение_системы_виртуализации|Регистрация «Поставщика услуг»]]).
# Зарегистрировать аутентификатор и создать пользователей (см. [[VDI/OpenUDS#Настройка_аутентификации_пользователей|Настройка аутентификации пользователей]]).
# Зарегистрировать аутентификатор и создать пользователей (см. [[VDI/OpenUDS#Настройка_аутентификации_пользователей|Настройка аутентификации пользователей]]).
# Создать «OS Manager» (пропустить этот пункт, если используется служба «Static IP Machine Provider»), выбрав в выпадающем списке пункт «Linux OS Manager»:
# Создать «Менеджер ОС»  (пропустить этот пункт, если используется служба «Поставщик машин статических IP»), выбрав в выпадающем списке пункт «Linux OS менеджер»:
#: [[Файл:Openuds_os_manager02.png|OpenUDS. Настройка «OS Manager»]]
#: [[Файл:Openuds_os_manager02.png|OpenUDS. Настройка «OS Manager»]]
#: При создании «OS Manager» рекомендуется в списке «Logout Action» выбрать пункт «Remove service». В этом случае, когда пользователь закрывает приложение, рабочий стол, на котором оно запущено автоматически удаляется. Также для развертывания приложений Linux можно использовать пункт «Keep service assigned».
#: При создании «Менеджера ОС» рекомендуется в списке «Действие при выходе из системы» («Logout Action») выбрать пункт «Удалить сервис» («Remove service»). В этом случае, когда пользователь закрывает приложение, рабочий стол, на котором оно запущено автоматически удаляется. Также для развертывания приложений Linux можно использовать пункт «Держать сервис привязанным» («Keep service assigned»).
#: [[Файл:Openuds_os_manager-remove.png|OpenUDS. Настройка «OS Manager» - «Logout Action»]]
#: [[Файл:Openuds_os_manager-remove.png|OpenUDS. Настройка «OS Manager» - «Logout Action»]]
# Создать «Transports» (можно создать столько «transports», сколько приложений должно быть опубликовано.):
# Создать «Транспорт» (для каждого приложения, которое должно быть опубликовано, нужно создать свой транспорт):
#* в разделе «Transports» нажать кнопку «Новый» и выбрать пункт «X2Go direct»:
#* в разделе «Транспорты» нажать кнопку «Новый» и выбрать пункт «X2Go»:
#*: [[Файл:Openuds_transports_x2go_l1.png|OpenUDS. Настройка «Transports»]]
#*: [[Файл:Openuds_transports_x2go_l1.png|OpenUDS. Настройка «Transports»]]
#* в открывшемся окне, на вкладке «Main» задать имя (желательно указать здесь имя приложения — это имя пользователь будет видеть, если в одном пуле ресурсов определено несколько «transports»):
#* в открывшемся окне, на вкладке «Основной» задать имя (желательно указать здесь имя приложения — это имя пользователь будет видеть, если в одном пуле ресурсов определено несколько приложений):
#*: [[Файл:Openuds_transports_x2go_l2.png|OpenUDS. Настройка «Transports» - вкладка «Main»]]
#*: [[Файл:Openuds_transports_x2go_l2.png|OpenUDS. Настройка «Transports» - вкладка «Main»]]
#* на вкладке «Credentials», указать учетную запись пользователя, который будет запускать приложение (этот пользователь должен существовать в шаблоне ВМ):
#* на вкладке «Учётные данные», указать учетную запись пользователя, который будет запускать приложение (этот пользователь должен существовать в шаблоне ВМ):
#*: [[Файл:Openuds_transports_x2go_l3.png|OpenUDS. Настройка «Transports» - вкладка «Credentials»]]
#*: [[Файл:Openuds_transports_x2go_l3.png|OpenUDS. Настройка «Transports» - вкладка «Credentials»]]
#* на вкладке «Parameters», в раскрывающемся списке «Desktop» необходимо выбрать пункт «UDS vAPP», а в поле «vAPP» и указать полный путь к приложению (установленному на шаблоне ВМ):
#* на вкладке «Параметры», в раскрывающемся списке «Экран» («Desktop») необходимо выбрать пункт «UDS vAPP», а в поле «vAPP» и указать полный путь к приложению (установленному на шаблоне ВМ):
#*: [[Файл:Openuds_transports_x2go_l4.png|OpenUDS. Настройка «Transports» - вкладка «Parameters»]]
#*: [[Файл:Openuds_transports_x2go_l4.png|OpenUDS. Настройка «Transports» - вкладка «Parameters»]]
#* на вкладке «Advanced» можно указать раскладку клавиатуры, и в поле «Quality» определить качество изображения (0-9). По умолчанию 6.
#* на вкладке «Расширенный» можно указать раскладку клавиатуры, и в поле «Качество» («Quality») определить качество изображения (0-9). По умолчанию 6.
#*: [[Файл:Openuds_transports_x2go_l5.png|OpenUDS. Настройка «Transports» - вкладка «Advanced»]]
#*: [[Файл:Openuds_transports_x2go_l5.png|OpenUDS. Настройка «Transports» - вкладка «Advanced»]]
#* нажать кнопку «Save».
#* нажать кнопку «Сохранить».
#Создать «Service Pools»:
# Создать «Пул услуг»:
#* на вкладке «Main» указать имя службы, в списке «Base service» выбрать созданную ранее службу, в списке «OS Manager» выбрать менеджер ОС.
#* на вкладке «Основной» указать имя службы, в списке «Базовый сервис» («Base service») выбрать созданную ранее службу, в списке «ОС менеджер» («OS Manager») выбрать менеджер ОС.
#* на вкладке «Display» указать, в какой группе будет отображаться этот пул, и какое изображение будет использовать приложение (эти элементы создаются в разделе «Tools»).
#* на вкладке «Экран/Дисплей» указать, в какой группе будет отображаться этот пул (группа должна быть предварительно создана в разделе «Пулы»→«Группы»), и какое изображение будет использовать приложение (изображение должно быть предварительно загружено в разделе «Инструменты»→«Галерея»).
#*: [[Файл:Openuds_pool_gimp0.png|OpenUDS. Настройка «Service Pools» - вкладка «Display»]]
#*: [[Файл:Openuds_pool_gimp0.png|OpenUDS. Настройка «Service Pools» - вкладка «Display»]]
#* на вкладке «Availability» необходимо указать количество услуг, которые  должны быть доступными для подключения пользователей (желательно иметь как можно больше «Maximim number of services to provide» или «Services to keep in cache»).
#* на вкладке «Доступность» необходимо указать количество услуг, которые  должны быть доступными для подключения пользователей. Желательно иметь как можно больше «Максимальное количество предоставляемых сервисов» («Maximum number of services to provide»)  или «Сервисы для удержания в кэше» («Services to keep in cache»).
#*: [[Файл:Openuds_pool_gimp1.png|OpenUDS. Настройка «Service Pools» - вкладка «Availability»]]
#*: [[Файл:Openuds_pool_gimp1.png|OpenUDS. Настройка «Service Pools» - вкладка «Availability»]]
#* сохранить конфигурацию, нажав кнопку «Save».
#* сохранить конфигурацию, нажав кнопку «Сохранить».
# В настройках созданного пула:
# В настройках созданного пула:
#* на вкладке «Groups» указать какие группы пользователей будут иметь доступ к виртуальному приложению.
#* на вкладке «Группы» указать какие группы пользователей будут иметь доступ к виртуальному приложению.
#* на вкладке «Transports» необходимо назначить ранее созданный транспорт X2Go (где был определен путь к виртуальному приложению):
#* на вкладке «Транспорты» необходимо назначить ранее созданный транспорт X2Go (где был определен путь к виртуальному приложению):
#*: [[Файл:Openuds_transports_x2go_l6.png|OpenUDS. Новый транспорт для «Service Pools»]]
#*: [[Файл:Openuds_transports_x2go_l6.png|OpenUDS. Новый транспорт для «Service Pools»]]
#* на вкладке «Cache» (для платформ виртуализации — PVE, OpenNebula) убедиться, что автоматически сгенерированные рабочие столы настроены правильно.
#* на вкладке «Cache» (для платформ виртуализации — PVE, OpenNebula) убедиться, что автоматически сгенерированные рабочие столы настроены правильно.

Версия от 09:00, 28 декабря 2022

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

Пользователи могут запускать приложения на независимых ВМ, созданных в OpenUDS, на основе шаблона (машины, где эти приложения должны быть установлены). Если пользователь обращается к нескольким приложениям, все эти приложения будут запущены на одном виртуальном рабочем столе, что позволяет значительно оптимизировать ресурсы.

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

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

Подготовка шаблона ВМ на основе ОС Альт:

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

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

На сервере OpenUDS необходимо:

  1. Зарегистрировать «Поставщик услуг» для соответствующей платформы виртуализации (если его еще нет) и базовую службу, указав настроенный ранее шаблон ВМ (подробнее см. Регистрация «Поставщика услуг»).
  2. Зарегистрировать аутентификатор и создать пользователей (см. Настройка аутентификации пользователей).
  3. Создать «Менеджер ОС» (пропустить этот пункт, если используется служба «Поставщик машин статических IP»), выбрав в выпадающем списке пункт «Linux OS менеджер»:
    OpenUDS. Настройка «OS Manager»
    При создании «Менеджера ОС» рекомендуется в списке «Действие при выходе из системы» («Logout Action») выбрать пункт «Удалить сервис» («Remove service»). В этом случае, когда пользователь закрывает приложение, рабочий стол, на котором оно запущено автоматически удаляется. Также для развертывания приложений Linux можно использовать пункт «Держать сервис привязанным» («Keep service assigned»).
    OpenUDS. Настройка «OS Manager» - «Logout Action»
  4. Создать «Транспорт» (для каждого приложения, которое должно быть опубликовано, нужно создать свой транспорт):
    • в разделе «Транспорты» нажать кнопку «Новый» и выбрать пункт «X2Go»:
      OpenUDS. Настройка «Transports»
    • в открывшемся окне, на вкладке «Основной» задать имя (желательно указать здесь имя приложения — это имя пользователь будет видеть, если в одном пуле ресурсов определено несколько приложений):
      OpenUDS. Настройка «Transports» - вкладка «Main»
    • на вкладке «Учётные данные», указать учетную запись пользователя, который будет запускать приложение (этот пользователь должен существовать в шаблоне ВМ):
      OpenUDS. Настройка «Transports» - вкладка «Credentials»
    • на вкладке «Параметры», в раскрывающемся списке «Экран» («Desktop») необходимо выбрать пункт «UDS vAPP», а в поле «vAPP» и указать полный путь к приложению (установленному на шаблоне ВМ):
      OpenUDS. Настройка «Transports» - вкладка «Parameters»
    • на вкладке «Расширенный» можно указать раскладку клавиатуры, и в поле «Качество» («Quality») определить качество изображения (0-9). По умолчанию 6.
      OpenUDS. Настройка «Transports» - вкладка «Advanced»
    • нажать кнопку «Сохранить».
  5. Создать «Пул услуг»:
    • на вкладке «Основной» указать имя службы, в списке «Базовый сервис» («Base service») выбрать созданную ранее службу, в списке «ОС менеджер» («OS Manager») выбрать менеджер ОС.
    • на вкладке «Экран/Дисплей» указать, в какой группе будет отображаться этот пул (группа должна быть предварительно создана в разделе «Пулы»→«Группы»), и какое изображение будет использовать приложение (изображение должно быть предварительно загружено в разделе «Инструменты»→«Галерея»).
      OpenUDS. Настройка «Service Pools» - вкладка «Display»
    • на вкладке «Доступность» необходимо указать количество услуг, которые должны быть доступными для подключения пользователей. Желательно иметь как можно больше «Максимальное количество предоставляемых сервисов» («Maximum number of services to provide»)  или «Сервисы для удержания в кэше» («Services to keep in cache»).
      OpenUDS. Настройка «Service Pools» - вкладка «Availability»
    • сохранить конфигурацию, нажав кнопку «Сохранить».
  6. В настройках созданного пула:
    • на вкладке «Группы» указать какие группы пользователей будут иметь доступ к виртуальному приложению.
    • на вкладке «Транспорты» необходимо назначить ранее созданный транспорт X2Go (где был определен путь к виртуальному приложению):
      OpenUDS. Новый транспорт для «Service Pools»
    • на вкладке «Cache» (для платформ виртуализации — 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 или с https://github.com/altlinux/openuds-installers/releases).
  4. Установить OpenUDS Client (установка ничем не отличается от инсталляции большинства других программ в ОС Windows).

После установки клиента X2Go, рекомендуется проверить возможность подключения к серверу X2Go.

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

Теперь можно получить доступ к виртуальным приложениям:

OpenUDS. Запуск приложения Gimp

Если для пула услуг («Service Pools») было назначено несколько видов «transports» (несколько приложений), то в правом верхнем углу службы будет отображена кнопка. Если выбрать непосредственно ВМ, будет вызван транспорт по умолчанию (транспорт с меньшим значением в поле приоритет). Для того чтобы использовать другой транспорт, нужно выбрать его в раскрывающемся списке:

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