[ops] Openstack Victoria SPICE configuration not working

Stephen Finucane stephenfin at redhat.com
Mon Aug 9 10:59:11 UTC 2021


On Thu, 2021-08-05 at 12:25 -0500, number9 wrote:
> I have posted this on stackexchange, but am also asking here:
> 
> Running openstack on Ubuntu 20.04 with a controller node and four 
> compute nodes. I am reading the instructions on configuring SPICE here. 
> I will admit, I found out about which packages to install from other 
> sites, as the instructions at the link do not actually list any software 
> that needs to be installed.
> 
>      On the compute nodes and controller, I installed nova-spiceproxy
>      On the controller I installed nova-spiceproxy and spice-html5

Not an answer, but as an aside SPICE support is poorly maintained in nova and
its usage not generally advised. It may be removed in a future release. I would
suggest relying on noVNC instead. With that said...

> 
> I followed the instructions in the link on configuring 
> /etc/nova/nova.conf on the controller and all compute nodes.
> 
> In a nutshell, when you click on console in the dashboard, it simply 
> says:
> 
> Something went wrong!
> 
> An unexpected error has occurred. Try refreshing the page. If that 
> doesn't help, contact your local administrator.
> 
> I have parsed every log in /var/log on the compute and controller nodes 
> and found nothing that would indicate it is failing.
> 
> On the compute node, I can do a ps aux and see that spice is running on 
> the instance I am trying to connect to.
> 
> 
> I am really not sure where to go. I have tried VNC and noVNC also to no 
> avail, each time completely removing the old
> configs and only adding the new. I have reverted back to SPICE to try 
> the "simple" approach.
> 
> My relevant config items in /etc/nova/nova.conf from a compute node are:
> 
> [DEFAULT]
> vnc_eanabled = false

There's a typo here, but it shouldn't matter - that config option has been
replaced by the '[vnc] enabled' option below. The doc clearly needs an update.
As another aside, because virtually everyone seems to use an installer, the
actual install guides get very TLC and are subsequently prone to bitrot :(
However, the remote console doc at [1] was updated in recent releases and should
be relatively accurate.

[1] https://docs.openstack.org/nova/latest/admin/remote-console-access.html

> # yes, I know it is redundant, I am following the docs...
> 
> [vnc]
> enabled = false
> 
> [spice]
> enabled = true
> agent_enabled = true
> html5proxy_base_url = http://10.131.39.40:6082/spice_auto.html
> # the above IP is the IP of the controller.
> server_listen = 0.0.0.0
> server_proxyclient_address = 10.131.29.42

So I assume '10.131.39.40' is address of the controller and '10.131.29.42' is
the address of the compute node, yes? Is the former publicly accessible from the
same place you're browsing the web UX? I would assume not, given it's a private
network IP. If not, this needs to be updated. This is the value returned from
the API which is in turn used by Horizon iirc.

> # the above IP is the IP of the controller that I pulled this config 
> from
> html5proxy_host = 0.0.0.0
> html5proxy_port = 6082

These are redundant (they match the defaults) but also no harm so...

> 
> Back on the controller node, in /etc/nova/nova.conf I have:
> 
> [spice]
> enabled = true
> agent_enabled = false
> html5proxy_host = 0.0.0.0
> html5proxy_port = 6082
> keymap = en_us

This all looks correct to me. Somewhat unrelated: I'm not certain whether this
is true for SPICE, but you should not configure the keymap option for VNC. It's
the source of bugs since the QEMU-based keymaps this enables are incomplete and
buggy. Better to use a newer version of noVNC that supports native keymapping.

> 
> I also have vnc false, as it is on the compute nodes. I will admit 
> further, I have tried at least 20 iterations of this, just leaving off 
> proxy ports, or thinking for a moment that the proxyclientaddress was 
> the controller node, but none of them work. I do restart nova on the 
> controller and all compute nodes after every change.
> 
> Any ideas or directions would be appreciated. I wish there were logs, I 
> am perhaps missing them or need to turn on debugging of some kind.

I suspect the issue is with the address used for '[spice] html5proxy_base_url'.
I would suggest using the 'openstack console url show' command to get a URL to
access the console without needing to invoke Horizon. If you're able to access
this URL then the issue is instead somewhere in Horizon. If not, it's definitely
nova. You can also enable debug-level logging for the nova-spicehtml5proxy and
nova-novncproxy services to ensure you're actually seeing a connection from your
browser.

Hopefully this helps somewhat,
Stephen




More information about the openstack-discuss mailing list