14 октября 2011 в 12:33

Пробуем бесплатную виртуализацию со специями в Ubuntu 11.04 amd64 из песочницы

image

Специя или SPICE (сокр. от англ. «Simple Protocol for Independent Computing Environments», то есть «Простой протокол для независимой вычислительной среды») — открытый протокол удаленного доступа к компьютеру или виртуальной машине.

Использование SPICE позволяет не только получить доступ к экрану, а также к буферу обмена и звуковой карте. В настоящее время протокол SPICE находится в стадии интенсивной разработки, несмотря на это его уже сегодня можно попробовать использовать в виртуальной машине под управлением модифицированного гипервизора KVM вместо базового открытого протокола VNC (Virtual Network Computing), используемого по-умолчанию.

Первоначально протокол был разработан кампанией Qumranet, которую затем купила Red Hat, Inc, которая 9 декабря 2009 объявила о решении открыть исходный код протокола. Стабильная версия SPICE доступна в операционной системе Red Hat Enterprise Linux, как средство виртуализации рабочих станций.

Конечно, помимо SPICE и VNC существуют и другие протоколы удаленного доступа такие как:
  • PCoverIP — протокол разработанный Terradici, используемый в VmWare View.
  • RDP (Remote Desktop Protocol) — протокол, разработанный в Microsoft, используемый в продуктах Microsoft, Oracle VirtualBox.

К сожалению вышеуказанные протоколы являются закрытыми и не могут использоваться свободно.

Настраиваем хост


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

В случае если вы используете Ubuntu 11.04 amd64 и не желаете тратить время на компиляцию, вы можете воспользоваться предварительно собраными deb-пакетами подготовленными Борисом Державцем, либо deb-пакетами платформы виртуализации, подготовленными проектом UmVirt.

deb-пакеты платформы виртуализации подготовленные в рамках проекта UmVirt cозданы на основе более свежих версий программ и правил сборки пакетов используемых Борисом Державцем т.е. являются форком.

В качестве окружения вы можете использовать не только реальный компьютер на платформе amd64 обладающий функцией виртуализации, а также эквивалентную виртуальную машину. Что позволяет получить многоуровневую виртуализацию.

Установка из репозитория Бориса Державца


Для установки платформы виртуализации из репозитория Бориса Державца добавьте репозиторий с помощью команды:

sudo add-apt-repository ppa:bderzhavets/git-spice

Затем обновите информацию о пакетах с помощью команды:

sudo apt-get update

Затем установите платформу виртуализации с помощью команды:

sudo apt-get install qemu-kvm virt-manager

Установка из архива deb-пакетов платформы виртуализации UmVirt


Для установки deb-пакетов платформы виртуализации UmVirt, загрузите арихив пакетов «UmVirt VP» со страницы загрузки сайта проекта, распакуйте его и запустите инсталяционный скрипт от имени root используя комманду sudo:

sudo ./install.sh

В процессе установки инсталляционный скрипт проверит окружение, осуществит автоматическую установку пакетов и всех зависимостей.

Использование


После того как вы установили платформу виртуализации, вы можете приступить к работе с помощью программы virt-manager, имеющей интуитивно понятный графический интерфейс. Для избежания проблем в работе, рекомендую запускать virt-manager от имени root.

Попробуйте создать и запустить виртуальную машину под управлением Ubuntu, предварительно добавив в нее звуковую карту и сменив протокол удаленного доступа c VNC на SPICE.

Затем попробуйте получить доступ к виртуальной машине, слушающей порт 5900, через SPICE-клиент cpicec выполнив следующую команду:

spicec -h 127.0.0.1 -p 5900

В результате при запуске вы должны услышать звук из виртуальной машины.

Настраиваем гостя


Чтобы работать в виртуальной машине было комфортно, нужно установить гостевые дополнения SPICE: Драйвер видеокарты QXL и VD-агента. Для операционной системы Windows гостевые дополнения доступны на официальных сайте проекта SPICE. Некоторые дистрибутивы Linux изначально поддерживают QXL-видеокарту, однако её драйвер работает не стабильно.

Для Ubuntu дополнения можно установить из специального репозитория spice2, подготовленного Борисом Державцем, и из архива с инсталяционным скриптом, подготовленным проектом UmVirt. Гостевые дополнения в архиве, подготовленным проектом UmVirt, содержат более качественный QXL-драйвер, поддерживающий большее количество разрешений, и более свежий VD-агент.

Для установки гостевых дополнений из репозитория spice2 выполняются следующие команды:

sudo add-apt-repository ppa:bderzhavets/spice2
sudo apt-get update
sudo apt-get install spice-vdagent

Для установки гостевые дополнений, подготовленных проектом UmVirt необходимо загрузить и распаковать архив дополнений со страницы загрузки.Затем установить их с помощью команды:

sudo ./install.sh

Для того чтобы улучшить взаимодействие с виртуальной машиной, выключите виртуальную машину, измените тип видеокарты на QXL и осуществите запуск виртуальной машины (если машина не заведется с первого раза, заводите несколько раз). Теперь вы можете слушать не только звук но и смотреть видео, объединить буферы обмена.

В заключение, несколько советов по увеличению производительности:
  • Так как Flash плеер перегружает процессор виртуальной машины для чистоты экспериментов по проверке производительности, при воспроизведении видео используйте файлы в форматах OGV и WebM они могут воспроизводится в Ubuntu изначально и не перегружают процессор.
  • Используйте сетевое хранилище для сокращения затрат процессорного времени на операции ввода-вывода
  • Используйте виртуальные устройства VirtIO

За более подробной информацией обращайтесь на официальный сайт SPICE, а также на сайт платформы виртуализации UmVirt.

Источники

Борис Морозов @b0r1s
карма
5,0
рейтинг 0,0
Самое читаемое Администрирование

Комментарии (17)

  • 0
    В чём преимущество перед VNC?
    • 0
      «Использование SPICE позволяет не только получить доступ к экрану, а также к буферу обмена и звуковой карте.»
    • 0
      Скоростью, Видео c youtube играется как на реальной машине.
  • 0
    Только из-за spice, и вообще последних версий libvirt/virt-manager использую fedora.

    В fedora 15 сделали интеграцию spice в virt-manager, всё работает из коробки.

    В убунте конечно тоже молодцы, но разработчики libvirt всё-таки работают под федорой и разрабатывают под федору.
    • НЛО прилетело и опубликовало эту надпись здесь
      • 0
        Разработчики RedHat разрабатывают инструменты виртуализации не под Fedora, а под Red Hat Enterprise Linux. Fedora — это своеобразный эксперимантальный полигон в котором обкатываются все свежие технологии.

        Не удивляйтесь, если что заглючит или отвалится при работе с Fedora.

        Ubuntu был выбран по причине того что он более доступный, более простой, более удобный и более стабильный дистрибутив. Есть конечно еще более стабильный Debian, но он к сожалению обновляется не так часто как Ubuntu.
        • НЛО прилетело и опубликовало эту надпись здесь
        • 0
          Разрабатывают под федорОЙ для будущей адаптации в рхеле.
  • НЛО прилетело и опубликовало эту надпись здесь
  • 0
    В Oneiric использование PPA всё ещё требуется?
    • 0
      PPA на ряду с ручным добавлением репозиториев позволяет устанавливать новые версии пакетов. По этой причине PPA потребуется не только в Oneiric но и в следующих версиях.
      • 0
        Ну это понятно, что PPA нужен для обновления, а хотя бы просто поставить и задействовать Spice, пускай и не самых последних версий, без PPA в Oneiric можно?
        • 0
          На базе базовых пакетов в Oneiric нельзя установить платформу виртуализации с поддержкой SPICE так как вместо специально модифицированного гипервизора QEMU/KVM, подготовленного в рамках проекта SPICE, использована его майнстреймовая версия, собранная без поддержки SPICE.

          Использовать Oneiric как SPICE-гостя на базе базовых пакетов также нельзя, по причине использования некачественной версии QXL, плохо прорисовывающей графику, и отсутствия vd-агента.
          • 0
            Ясно, спасибо за ответ и за статью. Надеюсь, в Precise поддержка Spice будет обеспечена «из коробки».
  • 0
    Читал сайт, не понятно — использовать вместо тормозного VNC для доступа к линух боксу можно?
    • 0
      Работы ведутся в этом направлении. Пока удаленный доступ осуществляется только к виртуальным машинам.
    • 0
      Да можно. Размещена небольшая заметка по использованию виртуальной QXL-видеокарты и встоенного в неё SPICE-сервера вместо VNC-сервера.

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.