SPICE — это решения с открытым исходным кодом для управления виртуальными машинами и это решение встроено в Proxmox VE.

Что такое SPICE

Проект SPICE это решение с открытым исходным кодом для удаленного доступа к виртуальным машинам простым способом, чтобы вы могли воспроизводить видео, записывать аудио, совместно использовать USB-устройства и папки без каких-либо сложностей.

SPICE можно разделить на 4 различных компонента:

  • Протокол — это спецификация взаимодействия трех других компонентов.
  • Клиент, такой как remote-viewer, отвечает за отправку данных на виртуальную машину и получение данных от неё. То есть клиент помогает взаимодействовать с виртуальной машиной.
  • Сервер — это библиотека, используемая гипервизором для использования виртуальной машины. Такая библиотека уже встроена в гипервизор Proxmox VE.
  • Гостевая сторона — это программное обеспечение, которое должно быть запущено на виртуальной машине, чтобы сделать SPICE полностью функциональным. Например: драйвер QXL и SPICE VDAgent.
Схема работы SPICE

Всю эту информацию можно почитать на официальном сайте проекта.

Зачем использовать SPICE

Для постоянной работы или настроек виртуальных машин я обычно использую:

  • протокол ssh — для настроек Linux серверов;
  • протокол rdp — для настроек Windows серверов;
  • утилиту pct — для работы с контейнерами Proxmox.

Дополнительно, для постоянной работы внутри виртуальной машины можно пробросить видеокарту и необходимые usb устройства с ноды Proxmox в виртуальную машину.

Так зачем же может понадобится SPICE? Лично мне SPICE пригодился для тестирования различных графических оболочек Linux, из за двух его плюсов. Во-первых, SPICE консоль намного отзывчивее чем стандартная HTML5 консоль. Во-вторых, SPICE очень легко настраивается.

Подготовка виртуальной машины

Чтобы заработал SPICE нужно всего лишь поменять тип дисплея у виртуальной машины:

Proxmox VE — Подготовка виртуальной машины — SPICE

Установка SPICE клиента

Для работы с виртуалками по протоколу SPICE нужно установить на свой компьютер клиент SPICE, я использовал приложение virt-viewer.

Для Windows

Скачать это приложение можно с официального сайта. Вы можете скачать приложение для Windows версии x64 или x86.

Для Linux

А если вы используете Linux, то можно установить virt-viewer из стандартных репозиториев:

# yum install virt-manager (Fedora)
# apt-get install virt-manager (Debian)
# emerge virt-manager (Gentoo)
# pkg_add virt-manager (OpenBSD)

После установки у вас появится приложение remote-viewer.exe. Именно оно сможет открывать файлы с расширением .vv, которые подготавливает сервер Proxmox VE, при подключении к консоли SPICE.

Подключение к SPICE консоли

После запуска виртуальной машины вы сможете подключиться к консоли SPICE:

Proxmox VE — подключение к консоли SPICE

При этом у вас скачается файл с расширением .vv. Этот файл вы должны открыть с помощью приложения remote-viewer.exe. Это текстовый файл, так что вы можете открыть его любым текстовым редактором и посмотреть содержимое.

А так выглядит открытая консоль SPICE, здесь я запустил установку Linux Mint:

Внешний вид консоли SPICE с использованием remote-viewer

Консоль SPICE намного отзывчивее чем стандартная консоль Proxmox VE, но так как для её использования нужно устанавливать дополнительное ПО, то она не используется по умолчанию. Стандартная же консоль использует протокол HTML5 и работает в любом современном браузере.

Установка ПО в виртуальную машину

Для работы определенных функций SPICE требуется, чтобы в гостевой системе был запущен агент SPICE. А также требуется чтобы в виртуальной машине был установлен драйвер qxl.

Виртуальная машина Linux

Драйвер qxl включен во все дистрибутивы Linux старше 2011 года. А SPICE VDAgent можно установить с помощью пакетного менеджера:

$ sudo apt install spice-vdagent

Виртуальная машина Windows

Для Windows вы сможете скачать ПО от сюда, в разделе Guest, и в подразделе Windows binaries.

Дополнительные улучшения SPICE

В опциях виртуальной машины вы можете, дополнительно, включить Folder Sharing и Video Streaming.

Proxmox SPICE — Folder Sharing / Video Streaming

Folder Sharing — позволит вам совместно использовать локальную папку с виртуальной машиной, к которой вы подключаетесь. Но это работает, только если Virtual Machine Viewer запущен на Linux. При этом в гостевой машине нужно установить spice-webdav.

Video Streaming — будет кодировать быстро обновляющиеся области в видеопотоке с потерями. Это может значительно повысить производительность.

Установка spice-webdav в гостевой машине Linux

Для Linux он устанавливается из стандартных репзиториев:

$ sudo apt install spice-webdavd

Дальше убедитесь что служба spice-webdavd.service запущена.

Установка spice-webdav в гостевой машине Windows

А для Windows можете скачать msi пакет от сюда, и установить его. Дальше убедитесь что служба Spice webdav proxy запущена.

Подключение локального каталога к виртуальной машине

После этого, по идее, вы сможете использовать общие каталоги:

Настройка клиента SPICE (Virtual Machine Viewer)

Но это не работает, если Virtual Machine Viewer запущен на Windows, а на Linux я не проверял.

Итог

Для работы с виртуальной машиной по протоколу SPICE нужно на свой компьютер установить клиент SPICE, такой как virt-viewer. Поменять тип дисплея у виртуальной машины на SPICE. Запустить виртуальную машину и открыть консоль SPICE.

Сводка
Описание
SPICE - это решения с открытым исходным кодом для управления виртуальными машинами и это решение встроено в Proxmox VE

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *