Простой протокол для независимых вычислительных сред или SPICE - это протокол, используемый для доступа к удаленным рабочим столам виртуальных машин и управления ими. Он основан на модели клиент-сервер, где сервер (сервер SPICE) установлен на хост-машине и запускает гостевую виртуальную машину для доступа через Интернет. Гостевая виртуальная машина удаленно управляется клиентской системой, на которой запущен клиент Spice.
QEMU, эмулятор и виртуализатор машин с открытым исходным кодом, использует сервер SPICE для обеспечения возможностей удаленного рабочего стола. QEMU выполняет гостевой код непосредственно на центральном процессоре. Этот повышает производительность Сам QEMU использует KVM (Kernel-based Virtual Machine), модуль ядра Linux, для выполнения аппаратной виртуализации.
Особенности SPICE
- Spice поддерживает передачу и обработку команд 2D-графики.
- Аппаратное ускорение через GPU и CPU клиента.
- Использует OpenGL для потоковой передачи видео, обеспечивая более плавное взаимодействие с пользователем
- Чтобы сохранить важные аспекты передаваемого объекта, Spice использует сжатие без потерь для изображений.
- В случае сжатия видео Spice использует сжатие видео с потерями для некритических областей видео. Это значительно экономит пропускную способность и улучшает производительность Spice.
- Поддерживает два режима мыши: серверный и клиентский
- Поддерживает плавную миграцию виртуальных машин между серверами, подключенными к клиенту.
Основными компонентами модели Spice являются Spice Server, Spice Client и Spice Protocol.
Сервер SPICE работает внутри эмулятора QEMU. Он использует пакет libspice-server1 и другие зависимости для связи с удаленным клиентом. Он также управляет аутентификацией клиентских подключений.
Клиент Spice - это утилита, работающая на стороне клиента. Клиент подключается к удаленному рабочему столу гостевой виртуальной машины через клиент Spice. В этом руководстве мы будем использовать инструмент удаленного просмотра для доступа к нашей гостевой виртуальной машине. Remote-viewer можно установить из пакета virt-viewer.
Протокол Spice - это стандартный протокол для построения канала связи между клиентом и сервером.
Сводка по окружающей среде
Прежде чем приступить к созданию вещей, необходимо понять весь сценарий. Во-первых, мы работаем с хост-машиной, гостевой виртуальной машиной и клиентской машиной. На хост-машине работает эмулятор QEMU, на котором мы запускаем гостевую виртуальную машину. Клиентская машина будет использоваться для подключения к гостевой виртуальной машине. Клиентская система может быть самой хост-системой для простоты, но в нашем случае это другой компьютер с Ubuntu 20.04.
Общее резюме:
- Наша хост-машина (сервер Spice) - это Debian 10 (Buster), на котором запущен эмулятор Qemu. IP: 192.168.1.7
- Гостевая виртуальная машина - это Ubuntu 18.04, работающий внутри эмулятора Qemu указанной выше хост-машины.
- Клиентская машина - это Ubuntu 20.04 и мобильное устройство Android, на котором установлено программное обеспечение клиента Spice под названием «aSPICE: Secure Spice Client».
Предпосылки:
- Хост-машина с установленным Debian 10 (Buster).
- В HOST включена аппаратная виртуализация.
- Базовые знания о виртуализации в операционной системе linux.
Примечания: Это длительный процесс, в котором несколько компьютеров работают в разных системах, поэтому будьте осторожны и запускайте команды только на правильном компьютере.
Действия, которые необходимо выполнить на хост-машине i.е. Debian 10 (Buster)
Шаг 1. Введите следующую команду для выполнения команд с привилегиями суперпользователя:
$ sudo suШаг 2. Обновите репозитории и пакеты на хост-машине i.е. Debian 10 (Buster) перед установкой на него Spice Server:
# apt update && apt upgrade -yШаг 3. Установите следующие зависимости и пакеты, необходимые для работы Spice Server:
# apt install -y qemu-kvm libvirt-daemon-system bridge-utils virt-manager gir1.2-специиclientgtk-3.0Шаг 4. Теперь нам нужно запустить гостевую виртуальную машину (Ubuntu 18.04) внутри диспетчера виртуальных машин. Выполните следующие шаги:
# virt-managerЭто откроет диспетчер виртуальных машин на хост-машине.е. наш Debian 10 (Buster).
а) В меню диспетчера виртуальных машин выберите Файл-> Новая виртуальная машина.
б) Выберите источник установки как локальный носитель и нажмите кнопку «Вперед».
Теперь найдите .iso-образ ОС для установки в качестве гостевой ВМ. Как упоминалось ранее, мы выбираем Ubuntu 18.04 в качестве гостевой ВМ:
c) В следующем окне выберите размер RAM и количество процессоров:
г) Теперь создайте хранилище для вашей виртуальной машины:
д) В следующем окне вы увидите подробную информацию о вашей машине. Сохраните выбор сети для устройства NAT.
е) Активируйте виртуальную сеть при появлении запроса.
Теперь продолжите обычный процесс установки выбранной гостевой ОС.
Шаг 5. После установки гостевой ОС перейдите в Диспетчер виртуальных машин и выберите Сведения о виртуальной машине, как показано ниже:
Откроется новое окно с подробной информацией о нашей выбранной гостевой виртуальной машине (Ubuntu 18.04).
Здесь вы можете изменить имя и другую конфигурацию гостевой виртуальной машины, например ОЗУ, количество процессоров и т. Д.
ШАГ 6. Теперь перейдите к опции «Display Spice» и внутри текстового поля «Address» выберите опцию «All interfaces». Это поможет нам просматривать гостевую виртуальную машину на всем устройстве в локальной сети, на котором запущена клиентская утилита spice.
Нажмите «Применить», чтобы сохранить изменения.
Примечание: вам потребуется перезапустить гостевую ОС для применения определенных изменений.
g) Теперь запустите виртуальную машину из главного окна Virtual Machine Manager, как показано ниже:
На этом завершена настройка нашего хост-компьютера для установки Spice Server. Мы также запустили гостевую виртуальную машину внутри эмулятора Qemu, установленного на хост-машине.
Действия, выполняемые на клиентской машине (Ubuntu 20.04)
На клиентском компьютере должен быть установлен spice-клиент для просмотра гостевой виртуальной машины. Выполните следующие действия на клиентской виртуальной машине (Ubuntu 20.04).
Шаг 1. Обновите репозитории и пакеты в клиентской системе:
$ sudo apt update && sudo apt upgrade -yШаг 2. Теперь установите следующие необходимые пакеты для запуска spice client:
$ sudo apt install virt-viewer -yШаг 3. Теперь, чтобы открыть программу удаленного просмотра, выполните следующую команду. Утилита удаленного просмотра устанавливается из пакета virt-viewer.
$ sudo удаленный просмотрщикОткроется новое маленькое окно, как показано ниже. Введите IP-адрес хост-машины и порт сервера специй.
Если вы правильно выполнили этот шаг, вы должны увидеть экран гостевой виртуальной машины (Ubuntu 18.04) на клиентской виртуальной машине (Ubuntu 20.04) как здесь:
Клиент Spice для мобильных устройств (Android)
Мы также можем использовать spice-клиент на устройстве Android для просмотра нашей гостевой виртуальной машины. Просто следуйте инструкциям ниже:
1. Зайдите в магазин игр и загрузите приложение «aSPICE: Secure Spice Client».
2. Теперь откройте приложение и щелкните значок ПК в правом верхнем углу, чтобы добавить соединение.
3. Введите IP-адрес хост-машины Debian 10 (Buster), на которой работает гостевая виртуальная машина. Сохраните конфигурацию.
4. В главном окне появится значок, показывающий гостевую виртуальную машину. Теперь щелкните этот значок, чтобы запустить гостевую виртуальную машину, как показано ниже:
На этом мы завершаем наше сегодняшнее руководство по установке сервера Spice на Debian 10 (Buster). Надеюсь, вам понравилось руководство. Пожалуйста, не забудьте поделиться этим руководством с другими.