SPICE

From Proxmox VE
Jump to navigation Jump to search
Screen-enable-spice.png
Screen-start-spice-viewer.png

Introduction

SPICE (Simple Protocol for Independent Computing Environments) is an open remote computing solution built for virtual environments which allows users to view a computing "desktop" environment. The integrating of Spice into Proxmox VE provides a solution for interaction with virtualized desktop devices, like keyboard, mouse, audio and video. Interaction between front-end and back-end is done using Virtual Device Interfaces (VDI).

Spice achieves a user experience similar to an interaction with a local machine, while trying to offload most of the intensive CPU and GPU tasks to the client. Spice is suitable for both LAN and WAN usage, without compromising on the user experience.

Using Spice on Proxmox VE is easy and secure. It is integrated in the cluster environment, the user- and authentication system - and of cource, all traffic is fully encrypted.

Proxmox VE 3.1 introduced Spice as a technology preview.

The VNC console is still available and the default.

Requisites for SPICE

In order to use Spice you need the following:

  • Spice client on your desktop OS
  • Spice drivers inside your VM (VirtIO, QXL Graphic card drivers)

SPICE client

Enable SPICE for a VM

By default, Spice in not enabled and the traditional VNC based console is used. In order to enable Spice, just select SPICE as virtual "Graphic card" - as shown in the screenshot on top of this page.

OS specific settings for VM

Windows

Windows 7/8/10 and Windows 2012/2016

Fully supported, just install windows spice guest tools 0.132 or higher (spice-guest-tools-0.132.exe or higher)

Linux

All linux distributions released after 2011 have the necessary qxl driver included as a part of the Xorg package.

Start your SPICE session

When you click on Spice console button, a connection config file is downloaded. You need to configure your browser to always open this configuration file and associate it with remote-viewer.

The association is automatic for Chrome and Internet Explorer (they use the mime type association from the OS). For Firefox, the association must be done manually, as Firefox has his own internal mime type association (See Options/Applications).

Using client USB devices

USB devices from the desktop client can be mapped into the VM, using the virt-viewer GUI. Please note, the Windows version of virt-viewer does not support this. You need to use a virt-viewer on a Linux Desktop.

  • enable one or more Spice USB devices in your VM config.
    • usb0: spice
    • usb1: spice
    • ...

Using Audio

In order to got audio/sound, you need to add a virtual sound-card into your VM config. Just add the following line to your VM config (/etc/pve/qemu-server/XXX.conf, XXX being the VM ID):

args: -device AC97,addr=0x18

or

args: -device intel-hda,id=sound5,bus=pci.0,addr=0x18 -device hda-micro,id=sound5-codec0,bus=sound5.0,cad=0 -device hda-duplex,id=sound5-codec1,bus=sound5.0,cad=1

In upcoming releases, adding audio devices can be done via GUI.

Trouble Shooting

If you can't start a Spice session from the PVE Web gui, you can try the following shell script: https://git.proxmox.com/?p=pve-manager.git;a=blob_plain;f=spice-example-sh;hb=HEAD

Video Tutorials