Failed to connect to server VNC console in Openstack

Post Date: April 12, 2019
Last Updated: October 17, 2026

Introduction

This guide explains how to fix the VNC console in OpenStack when the Horizon dashboard shows a console error, usually “Failed to connect to server (code: 1006)”. The instance itself is fine. The console just can’t reach it.

The cause is almost always a wrong address in nova.conf on the compute node. The VNC console in OpenStack depends on a short chain of addresses, and if one is wrong, the chain breaks.

Prerequisites

Before you fix the VNC console in OpenStack, make sure you have:

  • Root or sudo access to the compute node, and to the controller for the checks
  • The compute node’s internal (management network) IP address
  • A running instance to test with

Architecture

  • You click the console in Horizon, which opens a URL built from novncproxy_base_url. This is the address your browser uses, so it must be reachable from your workstation
  • That URL points to nova-novncproxy, a proxy that normally runs on the controller and listens on port 6080
  • The proxy then connects to the compute node at the address set in server_proxyclient_address, which is the compute node’s own internal address
  • On the compute node, the instance’s VNC server listens at the address set in server_listen

To see why the VNC console in OpenStack fails, follow that chain from browser to proxy to compute node to instance. By default server_proxyclient_address is 127.0.0.1, so the proxy tries to connect to itself on the controller instead of to the compute node, and the console fails with “Failed to connect to server”.

For the full reference, see the OpenStack documentation on configuring remote console access.

Steps to Fix the VNC Console in OpenStack

1. Find the Compute Node’s Internal IP

On the compute node:

hostname -I

Pick the address on the network the controller uses to reach this node, usually the management network.

Correction to the original: The original guide said the problem was a missing “controller IP” and described the compute node’s address as its “public IP”. Neither is accurate. The setting you change is the compute node’s own internal address, which OpenStack’s documentation describes as the private address the proxy should connect to. If you have several compute nodes, each one needs its own IP.

2. Edit nova.conf on the Compute Node

To get the VNC console in OpenStack working again, open the file:

sudo vi /etc/nova/nova.conf

Make sure the [vnc] section contains:

[vnc]
enabled = true
server_listen = 0.0.0.0
server_proxyclient_address = 192.168.1.5
novncproxy_base_url = http://controller-public-name:6080/vnc_auto.html
  • Replace 192.168.1.5 with this compute node’s internal IP from Step 1
  • Replace controller-public-name with a hostname or IP of the controller that your browser can reach

Notes:

  • The original used the option name vncserver_proxyclient_address. Older releases used that name, but current releases use server_proxyclient_address in the [vnc] section. If you run a very old release, check its own documentation for the exact name.
  • server_listen = 0.0.0.0 makes instance VNC ports listen on every interface of the compute node. Restrict access to those ports so only the controller can reach them, or use the node’s internal IP here instead of 0.0.0.0.
  • If you serve consoles over HTTPS, set novncproxy_base_url explicitly to the https:// address.

3. Restart the Compute Service

On RDO/CentOS-style systems:

sudo systemctl restart openstack-nova-compute.service

On Ubuntu:

sudo systemctl restart nova-compute

4. Check the Proxy on the Controller

On the controller, confirm the proxy behind the VNC console in OpenStack is running and listening on port 6080:

sudo systemctl status openstack-nova-novncproxy.service
sudo ss -tlnp | grep 6080

On Ubuntu the service is named nova-novncproxy. Also make sure your firewall or security group allows TCP port 6080 from your workstation to the controller.

5. Test with a Fresh Console URL

Console links are short-lived, so test the VNC console in OpenStack with a new link rather than reusing an old page:

openstack console url show <server-name>

Open the URL it prints, or reload the console tab in Horizon.

Still Seeing “Failed to Connect to Server”?

If the VNC console in OpenStack still won’t connect, check these:

  • The browser can’t reach novncproxy_base_url. A common mistake is an internal-only name like controller that your workstation can’t resolve. Use a name or IP reachable from where you open Horizon
  • Port 6080 is blocked between your browser and the controller
  • The same IP was copied to every compute node. Each node needs its own server_proxyclient_address
  • nova-novncproxy isn’t running on the controller
  • The logs have the answer. Check /var/log/nova/nova-novncproxy.log on the controller and /var/log/nova/nova-compute.log on the compute node

Conclusion

The VNC console in OpenStack fails with “Failed to connect to server” when the proxy can’t reach the instance’s console, most often because server_proxyclient_address still has its default value of 127.0.0.1. Set it to each compute node’s own internal IP, check that novncproxy_base_url is reachable from your browser, restart the compute service, and test with a fresh console URL.

Frequently Asked Questions

Why does the VNC console in OpenStack work for some instances but not others? Instances on different compute nodes use that node’s nova.conf. If one node has the wrong address, only the instances running on it will fail.

Do I need to reboot instances after I fix the VNC console in OpenStack? Usually not for server_proxyclient_address, because the proxy reads it when you open a console. A change to server_listen generally applies only to instances that are started or hard rebooted afterward, since that address is set when the instance is created.

Should the compute node’s address be public or private? Private. It’s the internal address the proxy uses to reach the node. Only novncproxy_base_url needs to be reachable from outside.

Why does the error appear again after a while? Console URLs expire after a short time. Open a new console from Horizon instead of reusing an old tab.

How to install openstack-utils package On CentOS 7.6

How to Install single node OpenStack on CentOS 7.6

Talk to Our Technology Experts

Running into OpenStack console or networking issues? Our team can help with OpenStack deployment, cloud infrastructure troubleshooting, and ongoing support.

Connect with our technology experts.

admin

Our team has expertise across software and web development, WordPress, e-commerce, mobile applications, UI/UX, cloud and infrastructure, DevOps, CI/CD, API integration, security, testing, automation, and technical support. The team also works with AI-based software solutions, LLMs, AI workflows, AI agents, and intelligent application development to help businesses automate processes and build smarter digital solutions. We focus on developing, deploying, maintaining, and optimising secure, scalable, and reliable technology solutions while helping businesses adopt modern technologies and drive digital transformation.

Leave a Comment

Scroll to Top