Skip to content

Unable to establish noVNC connection to VM console #4858

@MoeRT09

Description

@MoeRT09
ISSUE TYPE
  • Bug Report
COMPONENT NAME
UI
CLOUDSTACK VERSION
4.15.0.0
CONFIGURATION

N/A

OS / ENVIRONMENT

Clean Chrome browser installation.

SUMMARY

There seems to be some kind of timing issue, when trying to establish a console connection to a VM using noVNC. Sometimes it does not try to connect. This behavior is really inconsistent between different devices, as trying to connect from some devices had no issue, while others never were able to connect. However we could narrow it down to some timing issue in the browser.

There is a point, where the noVNC connect button is clicked from Javascript (you can not click the button manually, as it is hidden). Depending on the environment this succeeded or not. The most issues seem to be caused by Firefox. But a fresh installation of Chrome (or any other Chromium based browser like Chromium Edge, Brave...) shows a similar behavior. Interestingly you can somehow "fix" this issues, by installing arbitrary browser extensions (maybe they delay the page rendering just so slightly, that the connect button gets clicked).

I recorded a Video demonstrating the behavior by enabling and disabling the "Google Translator" extension. Note, that this is a completely fresh installation of Chrome, with all default extensions disabled. Other extensions do work to, especially password managers.

STEPS TO REPRODUCE
  1. Start Firefox or a Chromium based browser with an empty profile and/or disable all browser extensions.
  2. Open the console of a VM

Videos demonstrating the issue:

cs-vnc-bug-1.mp4

Video 1: "Fixing" the bug by enabling extensions

cs-vnc-bug-2.mp4

Video 2: Manually "clicking" connect via Javascript

EXPECTED RESULTS

Connecting to the console actually connects to the console in every browser and environment.

ACTUAL RESULTS

Depending on the environment, a connection to a VM console can be established or not.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions