Termidesk (Термидеск) —  это система управления виртуальными рабочими местами (VDI). Termidesk позволяет создавать VDI с подключением по различным протоколам удалённого доступа. Подробнее см. в официальной документации Termidesk.

VMmanager может использоваться в качестве поставщика ресурсов Termidesk — платформы виртуализации, в которой Termidesk создаёт VDI. Подключение к VDI, созданным в VMmanager, осуществляется по протоколу SPICE.

Версия VMmanager Infrastructure поддерживает дополнительные возможности интеграции:

  • подключение аудио и видеоустройств;
  • подключение смарт-карт;
  • подключение локальных директорий.

Работа платформы VMmanager и сервера управления VDI Termidesk на одном сервере не поддерживается.

Подготовка VMmanager


  1. Создайте учётную запись администратора для интеграции. Подробнее см. в статье Добавление пользователей.
  2. Создайте ВМ, которая будет использоваться для создания VDI. Подробнее см. в статье Создание виртуальных машин.
  3. Установите на ВМ агент Termidesk по инструкции из официальной документации.
  4. В настройках ВМ разрешите подключения по протоколу SPICE. Подробнее см. в статье SPICE.
  5. Создайте образ на основе подготовленной ВМ. Подробнее см. в статье Пользовательские образы виртуальных машин.

Настройка дополнительных возможностей для версии VMmanager Infrastructure

Подготовка узлов кластера

  1. Если в платформе нет кластера с узлами с ОС Astra Linux, создайте такой кластер. Подробнее см. в статьях Создание кластера, Управление серверами кластера.
  2. На узлах кластера установите агенты Termidesk: 

    wget https://termidesk.ru/repos/astra/GPG-KEY-PUBLIC -O - | apt-key add -
    CODE
    echo "deb https://termidesk.ru/repos/astra 1.7_x86-64 non-free" >> /etc/apt/sources.list
    CODE
    apt update && apt install -y python3-termidesk-vmsd
    CODE
    systemctl start termidesk-vmsd
    CODE
    1. Создайте unit-файл /lib/systemd/system/touch_termidesk.service следующего содержания: 

      [Unit]
      Description=Touch Termidesk socket at Startup
      Before=libvirtd.service
      Type=oneshot
      
      [Service]
      ExecStart=/usr/bin/touch /var/run/tvmd.sock
      
      [Install]
      WantedBy=multi-user.target
      CODE
    2. Выполните команды: 

      systemctl daemon-reload
      CODE
      systemctl enable touch_termidesk
      CODE
      systemctl start touch_termidesk
      CODE

Подготовка ВМ

  1. Создайте конфигурацию ВМ с опцией Интеграция с Termidesk. Подробнее см. в статье Конфигурации виртуальных машин.
  2. Создайте ВМ для VDI на основе созданной конфигурации. Подробнее см. в статье Создание виртуальных машин.
  3. В настройках ВМ разрешите подключения по протоколу SPICE и включите опцию Интеграция с Termidesk. Подробнее см. в статье SPICE.
  4. Если к VDI требуется подключение видеоустройств, установите агент для видеоустройств.
  5. Если к VDI требуется подключение смарт-карт, установите агент для смарт-карт.
  6. Если требуется передавать файлы на VDI, установите утилиту spice-vdagent:

    sudo apt install spice-vdagent
    BASH
  7. Если к VDI требуется подключение локальных директорий:

    1. Подключитесь к ВМ для VDI по SSH.
    2. Установите службу spice-webdavd

      sudo apt install spice-webdavd
      BASH
    3. Запустите службу:

      sudo spice-webdavd -p 9843
      BASH
    4. Установите утилиту davfs2

      sudo apt-get install davfs2
      BASH
    5. Создайте директорию для монтирования (например, /home/m/): 

      sudo mkdir /home/m
      BASH
    6. Примонтируйте локальную директорию: 

      sudo mount -t davfs http://127.0.0.1:9843 /home/m
      BASH
  8. Создайте образ на основе подготовленной ВМ. Подробнее см. в статье Пользовательские образы виртуальных машин.

Настройка интеграции


Настройка интеграции выполняется на стороне Termidesk. Чтобы настроить интеграцию, добавьте поставщик ресурсов с типом "Платформа VMmanager". Подробнее см. в официальной документации Termidesk.

Рекомендации по подготовке VDI с ОС Astra Linux


Для подготовки VDI рекомендуем использовать образ Astra Linux 1.7.3 Desktop из репозитория ISPsystem.

Для работы VDI нужен пользователь, отличный от root. Если добавить учётную запись пользователя в образ ВМ, то при создании VDI эта учётная запись будет автоматически удалена платформой. Чтобы создать учётную запись пользователя, используйте скрипт:

  1. Создайте скрипт для добавления пользователя. В разделе Фильтры для выполнения в поле Теги ОС выберите тег astra. Подробнее см. в статье Создание скрипта для ВМ

    Пример скрипта

    useradd -m -s /bin/bash astra
    echo "astra:secret_pass" | chpasswd 
    BASH

    astra — имя пользователя для подключения

    secret_pass — пароль пользователя

  2. При добавлении шаблона рабочего места в Termidesk в поле Пользовательский скрипт укажите название скрипта.