The OpenStack dashboard (Horizon) sports several protocols to access consoles of OpenStack instances (virtual machines). The most commonly used is VNC. However, VNC has problems of its own: it doesn’t work very well with slow, or high-latency connections. Here’s where SPICE comes into rescue:
The Spice project aims to provide a complete open source solution for interaction with virtualized desktop devices…
In order to enable the HTML5 SPICE client in OpenStack Horizon, you can follow the instructions in the SPICE console OpenStack documentation. Basically, it all boils down to:
- Install the
spice-html5
package - Disable VNC support, configure and enable SPICE in
/etc/nova/nova.conf
- Restart relevant services
# yum install -y spice-html5
Next, disable VNC support, configure and enable SPICE in /etc/nova/nova.conf
:
# cat /etc/nova/nova.conf [DEFAULT] ... web=/usr/share/spice-html5 # # Options defined in nova.cmd.novncproxy # # Host on which to listen for incoming requests (string value) novncproxy_host=0.0.0.0 # Port on which to listen for incoming requests (integer # value) novncproxy_port=6080 # # Options defined in nova.cmd.spicehtml5proxy # # Host on which to listen for incoming requests (string value) spicehtml5proxy_host=0.0.0.0 # Port on which to listen for incoming requests (integer # value) spicehtml5proxy_port=6082 ... # Disable VNC vnc_enabled=false [spice] # # Options defined in nova.spice # # Location of spice HTML5 console proxy, in the form # "http://127.0.0.1:6082/spice_auto.html" (string value) html5proxy_base_url=http://my.host.com:6082/spice_auto.html # IP address on which instance spice server should listen # (string value) server_listen=0.0.0.0 # The address to which proxy clients (like nova- # spicehtml5proxy) should connect (string value) server_proxyclient_address=127.0.0.1 # Enable spice related features (boolean value) enabled=true # Enable spice guest agent support (boolean value) agent_enabled=true # Keymap for spice (string value) keymap=en-us ...
And finally:
# service httpd restart # service openstack-nova-compute restart # service openstack-nova-spicehtml5proxy start # chkconfig openstack-nova-spicehtml5proxy on
Great post! We will be linking to this great content on our website.
Keep up the great writing.