noVNC — 虚拟机Web控制台

noVNC是一个HTML5 VNC客户端,常用于云计算和虚拟机控制面板。由于多数VNC服务器不支持WebSockets,需借助websockify作为代理进行TCP到WebSocket的转换。本文介绍了如何配置vncServer,启动noVNC服务,以及利用websockify在不同场景下建立代理,实现Web上访问和控制VNC服务器。
摘要由CSDN通过智能技术生成

不管是 VMware, Xen 还是 KVM都可以通过 VNC 客户端访问这些虚拟机的控制台,如果要开发虚拟机的 web 控制面板的话当然最好能配一个 web 的 VNC 客户端。noVNC 正是我们需要的 HTML5 VNC 客户端,其采用 HTML 5 WebSockets, Canvas 和 JavaScript 实现,并且被普遍用在各大云计算、虚拟机控制面板中,比如 OpenStack Dashboard 和 OpenNebula Sunstone 。

前面说了 noVNC 采用 WebSockets 实现,但是目前大多数 VNC 服务器都不支持 WebSockets,所以 noVNC 是不能直接连接 VNC 服务器的,怎么办呢?需要一个代理来做 WebSockets (Http socket)和 TCP sockets 之间的转换,理解这一点很重要。这个代理也已经有了,在 noVNC 的目录里,叫做 websockify。

vncServer

  1. 安装vnc4server,使用noVNC访问服务器的虚拟机控制器,首选需要在服务器如192.168.110.179安装该服务;

    xy@tnode07:~$ sudo apt-get install vnc4server

    配置vnc的xstartup文件:vi /home/xy/.vnc/xstartup

    
    #!/bin/sh
    
    [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
    [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
    xsetroot -solid grey
    vncconfig -iconic &
    x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
    x-window-manager &
  2. 启动vncserver服务

    xy@tnode07:~$ vncserver         //启动vncserver服务
    
    You will require a password to access your desktops.
    
    Password:
    Verify:
    xauth:  file /home/xy/.Xauthority does not exist
    
    New 'tnode07:1 (nsr)' desktop is tnode07:1
    
    Creating default startup script /home/xy/.vnc/xstartup
    Starting applications specified in /home/xy/.vnc/xstartup
    Log file is /home/xy/.vnc/tnode07:1.log
  3. 命令查看vncserver状态

    xy@tnode07:~/noVNC/websockify$ ps axu|grep vnc4
    xy     6867  0.0
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值