OpenStack Dashboard (Horizon)

noVNC support for Google Chrome 14+

Asked by Everett Toews on 2011-09-22

Hi All,

We're using nova-vncproxy and noVNC (https://github.com/openstack/noVNC) and it recently (within the past week) stopped working for us. Also within the past week Google Chrome updated to version 14. No coincidence.

After a lot of trial and error we found that only Safari 5.1 on both the Mac and Windows was still working. Chrome is no longer working. Can anyone confirm this?

Does https://github.com/openstack/noVNC need to pull updates from https://github.com/kanaka/noVNC to improve browser compatibility?

According to https://github.com/kanaka/noVNC/wiki/Browser-support

"In general noVNC works on any browser with Canvas and WebSockets support (either native or via web-socket-js) which is just about everything except IE 8 and lower. However, noVNC works best and is fastest in Chrome (any version) and Firefox 4 (with native WebSockets manually enabled, see note 4)."

However the tables below that quote seem to be pretty outdated.

Anyway, I'm not sure if the Dashboard project is the best place to ask the question/make this request. If this is more appropriate for the Nova project, I'll move over there.

Thanks,
Everett

Question information

Language:
English Edit question
Status:
Solved
For:
OpenStack Dashboard (Horizon) Edit question
Assignee:
No assignee Edit question
Solved by:
Everett Toews
Solved:
2011-10-31
Last query:
2011-10-31
Last reply:
2011-09-25
Joel Martin (kanaka) said : #1

Chrome 14 (and firefox 6) introduce the new WebSocket protocol support (HyBi-08). If nova-vncproxy has not been updated with support for the new protocol version then that explains why it only works for you in Safari. For reference, websockify (included with kanaka/noVNC) has had initial support since May although there were some major fixes in July and Aug.

Hey Everett,

I made a quick test implementation of a new nova vnc proxy that leverages the server that ships with kanaka. Essentially all I did was create a wrapper around wsproxy.py that can talk to the nova message queue for auth.

You can try it out here: git://github.com/cloudbuilders/noVNC.git. If you are doing a test run with this, you shouldn't run nova-vncproxy. Basic usage is like so:

    cd noVNC
    ./utils/nova-wsproxy.py 6080 --web .

Which will run the server in the foreground, and should be able to handle requests that redirect from dashboard's "vnc console" links.

So this is not yet a replacement for nova-vncproxy, but if it sounds interesting give it a try and let me know what you think.

Also, in order to fix nova-vncproxy, some feature work needs to be done in eventlet: https://bitbucket.org/which_linden/eventlet/issue/97/websocket-hybi-07-compatibility

Everett Toews (everett-toews) said : #3

I'm hoping to have some time to look at this during the summit or the week after.

Everett

Everett Toews (everett-toews) said : #4

Finally had a chance to try this out with devstack using the latest nova-wsproxy and it looks like it's working in:

Chrome 15
Firefox 7
Safari 5.1

Thanks.