OpenNebula VNC console to vCetner


In my previous testing environments I’ve had the VNC console working fine to vCenter VMs. Now that I’m building in the production environment, however, I’m getting “Failed to connect to server (code: 1006)” from the VNC console, about a minute after “Starting VNC handshake”.

I have set the remotedisplay.* options on vCenter and deployed VMs from OpenNebula directly, both suffer from the same issue.

I saw on another forum post that GDB Server needs to be enabled on the ESX hosts… When doing a VNC console in OpenNebula does it connect to vCenter or to the ESX host itself? Is there anything else I’m missing?


Hi ianneilson,

You are correct that the GDB server needs to be enabled on every ESXi host in order for VNC connections to work in OpenNebula.

I have attached the following screenshots to show where the configuration is done in both vCenter windows client as well as the vCenter SUSE appliance if you are running that.

vCenter Web Client GUI:

vCenter Windows Client GUI:

From what I can see from the OpenNebula instance that I run, when I call the VNC connection in SunStone a connection is made to the ESX server directly where that VM is running on the port allocated during the deployment process.

If you are running vCenter, you do not need to setup SSH key configurations for those hosts, it seems somehow the authentication may happen via vCenter and then your connection is forwarded to the host that has that VM running.

Hope this helps.

Great, thanks for the in depth reply!

Lack of working stemmed from firewalling in the production network. ESX hosts are on a different subnet to the OpenNebula server and all routing between the two was cut off, we assumed they would never need to talk to each other directly because vCenter is in place.

I had the networking guy open up a range of ports in 5900^ and tested, working now.

For anyone finding this forum post in the future and trying to fix a similar problem: User -> port 29876 OpenNebula Server -> 5900^ port range ESX Hosts. Make sure that remotedisplay.* settings are set and GDBserver is enabled on the hosts as above.