Hi Fariborz,

It is good to know you are interested.

We will create a pull request for 4.11.2 LTS in the next weeks.

-Wei


Fariborz Navidan <mdvlinqu...@gmail.com> 于2019年4月4日周四 上午10:29写道:

> Hello,
>
> It's a great and valuable job because we have already observed that noVNC
> integrated into control panels such as Virtualizor has great speed and
> efficiency in comparison with CloudStack's native console proxy
> implementation. Especially noVNC is more comfortable when user is on on a
> low speed or high latency internet connection.
>
> We were looking forward to investigate current CPVM and try to integrate
> noVNC. It's pleasure to us that this has already been implemented and hope
> we can take advantage of it in near future.
>
> Best regards
>
> On Thu, Apr 4, 2019 at 12:34 PM Wei ZHOU <ustcweiz...@gmail.com> wrote:
>
> > Hello CloudStack developers and users,
> >
> > We (as leaseweb) would like to share our NoVNC solution on our cloudstack
> > platforms with the CloudStack community . The feature was implemented in
> > 2012 and we have made some changes since that. We have used it for more
> > than 7 years and it is very stable.
> >
> > Unlike the pull request submitted by sachinnitw1317 (
> > https://github.com/apache/cloudstack/pull/2204 ) ,which is based on the
> > novnc as the front end (different from the cloudstack) and the java
> > websocket proxy (same as cloudstack) in console proxy vm (cpvm), we use
> > modified novnc and websockify to launch a websockify proxy in cpvm .
> >
> > Here are some technical details:
> >
> > (1) We use two open source projects: noVNC (
> https://github.com/novnc/noVNC
> > , 0.6.2) and websockify (https://github.com/novnc/websockify ,latest)
> > (2) We modified websockify so we can launch it without the target
> > server/port and token.
> > (3) We reuse the 'path' in novnc and websockify to pass some necessary vm
> > informations from cloudstack to novnc and websockify. path is encrypted
> in
> > cpvm / java, which contains target server,target port, vnc password,
> client
> > ip and timestamp. When a new client comes, websockify will decrypt 'path'
> > to get the vm informations above, and check if the client ip matches and
> > the timestamp has not expired.
> > (4) We moved the server/client initialization from novnc(js) to
> > websockify(python). When a new client comes, websockify will create a
> > websocket connection to the target server and port ,then check the
> protocol
> > version and authentication scheme, use the password in step (3) in vnc
> > authentication .
> > (5) Add a global setting in cloudstack for encryption in java and
> > decryption in websockify.
> >
> > Compared to the cloudstack native console (ajax/java websocket proxy) and
> > the novnc console purposed in PR 2204 (novnc /java websocket proxy) , we
> > believe that the novnc console based on websockifty (written in python)
> is
> > more efficient than the consoles based on java websocket proxy.
> >
> > If you have any questions or concerns, please feel free to ask. If nobody
> > objects, we will port our changes to cloudstack 4.11.2 LTS and submit a
> > pull request on cloudstack github, so everyone who is interested can
> merge
> > and build it in his/her fork and test it .
> >
> > Considering that novnc and websockify are both open source projects, and
> we
> > also use some open source code (such as in pyDes.py VNC password
> > authentication) , it would be appreciated if anyone can help us on
> software
> > licensing issues.
> >
> >
> > Kind regards,
> >
> > Wei Zhou
> > Principal Cloud Engineer
> > LEASEWEB
> >
>

Reply via email to