[4.11.2/DO NOT MERGE] noVNC console#3283
Conversation
This is downloaded by
"""
cd systemvm/debian/root/
git clone https://github.com/kanaka/noVNC.git
"""
This is downloaded by
"""
cd systemvm/debian/root/noVNC/
git clone https://github.com/kanaka/websockify utils/websockify
"""
The last commit is
"""
commit e4658ada2e2e179cdb8f6362dbb7c5e3ce3ff717
Author: Pierre Ossman <ossman@cendio.se>
Date: Tue Apr 2 17:04:19 2019 +0200
Re-enable Windows support
It works well enough now with the recent fixes and a modern Python.
"""
|
Thanks for the PR @ustcweizhou I'll help review this in upcoming weeks. However, 4.11 is a LTS branch and closed for any major changes and we won't accept this in 4.11. I'll help you with reviewing/testing/merging this towards master/4.13. |
|
@ustcweizhou can you comment on any integration/testing against xenserver/vmware? |
|
@rhtyd sure. There are not special setting for xenserver/vmware. steps are listed as below there are two ways to access the novnc console I added vnc authentication to websockify (it has same process with cloudstack/java and novnc/javascript) and tested ok with kvm. Since I do not have testing environment for xenserver/vmware, I am not sure if it works with xenserver/vmware. |
|
Thanks @ustcweizhou I'll give it a try in coming weeks. |
|
@rhtyd There is a simple way to test if vnc authentication in websockify works in xenserver/vmware, which does not require cloudstack git clone https://github.com/ustcweizhou/noVNC and access vm via |
yadvr
left a comment
There was a problem hiding this comment.
-1 we cannot accept new features in 4.11, I'll let @ustcweizhou decide if he wants to close this PR. Further effort can follow on #3296
|
Closing this in favour of #3296 which is the same feature/PR against master branch. Let's continue testing/reviewing against the master based PR. |
Description
This feature provides novnc console for virtual machines.
It is developed based on
(1) noVNC 1.1.0
(2) latest websockify
Some changes in cloudstack
(1) add a new servlet /novncconsole
(2) a websocket proxy based on websockify will be launched in CPVM.
(3) add vnc password authentication in websockify
(4) generate 'path' and decrypt it in websockify to connect to server/port and check vnc password.
Types of changes
Screenshots (if appropriate):
How Has This Been Tested?
(1) it works with ubuntu 16.04/qemu 2.5
(2) If consoleproxy.sslEnabled is changed, please restart management server and CPVM (or cloud service in CPVM). It determines http or https will be used in novnc console
(3) If novnc.console.default is true,novnc console will be default console on UI. If it is false, we still can access novnc console via /novncconsole?cmd=access&vm=XXX
(4) global setting novnc.encryption.key is hidden, it can be changed via cloudmonkey. Restart CPVM (or cloud service in CPVM) if it is changed.
What need to do ?
(1) Test on other environment / hypervisor
(2) Add License
(3) Encrypt vm vnc information using rijndael/CBC instead of rijndael/ECB.