海南都市网_海南最权威的都市企业资讯门户网站之一
您当前的位置 : 海南都市网  >  资讯
测试运维 | 远程桌面管理工具novnc的搭建和使用
2020-08-14 06:33:41 来源:互联网 阅读:-

随着技术的发展,测试行业也慢慢和运维靠拢,与devops对应,诞生了testops的概念。所以各位测试同学务必建立起一定的运维知识。在传统的运维或者测试工作当中,对于机器的远程桌面管理一直是很常规的工作,比如windows的远程桌面RDP,Linux的vnc和nomachine。今天我们主要聊一下novnc这个东西在vnc领域的使用,原因在于,有时候我们不想安装一个客户端软件,或者需要提供一个方便的远程的工具内嵌到我们的应用当中。下文以ubuntu为例进行介绍,windows比较简便,不在赘述。

安装vncserver

传统linux服务器在安装过程中为了减少空间,提高效率和增强安全性,一般只会做最小的服务器安装,所以不会安装桌面相关的组件。而在vnc的使用过程中,大家动动脑子就知道,没有桌面支持,我们显示个鸟文件夹啊。

  • 以xfce为例,我们增加桌面环境的支持:

sudo apt-get install xfce4

  • 然后我们安装vnc服务端:

sudo apt-get install vnc4server

  • 修改~/.vnc/xstartup中的内容为:

#!/bin/sh

unset SESSION_MANAGER

unset DBUS_SESSION_BUS_ADDRESS

startxfce4 &

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup

[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

xsetroot -solid grey

  • 然后使用如下命令启动vnc:

vncserver

启动的时候会提示输入连接密码以及是否提供一个只读密码,根据需要,自行输入。启动成功后会得到如下结果:

ubuntu@awvs:~/.vnc$ vncserver

New 'X' desktop is awvs:1

Starting applications specified in /home/ubuntu/.vnc/xstartup

Log file is /home/ubuntu/.vnc/awvs:1.log

这里面要说明下,vnc的服务器的端口从5901开始,上面的awvs:1中,awvs是主机名;1的意思就是端口5901,如果是2的话,端口就是5902了。如果要停止当前的vnc服务,使用:

vncserver -kill :1

支持,服务端的配置算完成了。一般的介绍中,后面会介绍客户端的安装。比较常见的有tightnvc、vncviewer等,随便选择安装一款即可。比如我在windows上安装的就是tightvnc。

测试运维 | 远程桌面管理工具novnc的搭建和使用

使用的时候,从程序里面找到tightvnc viewer进行启动,然后输入我们vnc服务的ip和地址,比如上文的192.168.10.49:5901:

测试运维 | 远程桌面管理工具novnc的搭建和使用

启动后输入我们在执行vncserver的时候设定的密码:

测试运维 | 远程桌面管理工具novnc的搭建和使用

,就可以看到远程桌面了:

测试运维 | 远程桌面管理工具novnc的搭建和使用

novnc的安装和使用

上文我们说到,使用vnc的时候必须安装服务端和客户端,其中服务端是必不可少的,客户端有可以不必安装的解决方案,这里介绍下novnc:https://github.com/novnc/noVNC。看下官方的介绍:

noVNC is both a HTML VNC client JavaScript library and an application built on top of that library. noVNC runs well in any modern browser including mobile browsers (iOS and Android).

简单翻译下:noVNC是一个使用HTML的VNC客户端javascript的库和基于该库之上的应用。noVNC运行在所有的现代浏览器当中(包括iOS和安卓)。

Many companies, projects and products have integrated noVNC including OpenStack, OpenNebula, LibVNCServer, and ThinLinc.

再来看看典型客户:许多、项目和产品都在其中集成了noVNC,包括OpenStack, OpenNebula(OpenNebula是专门为云计算打造的开源系统,用户可以使用Xen、KVM、VMware等虚拟化软件一起打造企业云。利用OpenNebula可以轻松构建私有云、混合云、公开云)、LibVNCServer(一个实现了vnc服务器端的库)等。

简单总结下:NoVNC是一个js库,在云计算等iaas层有着典型的应用。这与我在上面提到的测试必须掌握一定的运维知识相符合:)

  • 首先在ubuntu上开启snap:

sudo apt install snapd

sudo systemctl enable --now snapd.socket

  • 然后通过snap安装novnc应用:

sudo snap install novnc

  • 接下来使用如下的命令创建一个novnc的服务:

sudo snap set novnc services.n6081.listen=6081 services.n6081.vnc=localhost:5901

简单解释下,该novnc的服务名称为services.n6081,监听的端口为6081,所监听的vnc服务为locahost:5901,如果连接的是其他服务器,将localhost改为对应的ip或者主机名即可。

  • 使用如下的命令查看服务的状态:

sudo snap get novnc services.n6081

测试运维 | 远程桌面管理工具novnc的搭建和使用
  • 接着,我们使用浏览器打开http://192.168.10.49:6081/vnc.html:
测试运维 | 远程桌面管理工具novnc的搭建和使用

点击其中的“链接”按钮,输入我们启动vnc时候的密码,见证奇迹的时刻到了:

测试运维 | 远程桌面管理工具novnc的搭建和使用

我们在浏览器上实现了通过vnc协议对服务器的链接和管理,有么有:)

  • 如果我们想停止掉某个监听服务器,直接运行如下命令:

sudo snap set novnc services.n6081.listen='' services.n6081.vnc=''

就是把监听的端口和vnc服务都设置为空串就行了,这个时候在访问http://192.168.10.49:6081/vnc.html发现已经链接不上了,而且通过snap get命令发现服务有如下输出:

测试运维 | 远程桌面管理工具novnc的搭建和使用

是不是很方便:)

总结与扩展

文章介绍了ubuntu上vnc服务的搭建以及通过novnc不安装vnc客户端情况下使用浏览器访问和管理vnc服务器的步骤,非常方便,很有实战价值。

我的落地应用,主要是在selenium集群做ui自动化测试时,每个selenium客户端上安装了vnc server,然后通过测试平台的界面,使用novnc访问这些客户端,从而可以实时进行自动化测试用例的调试和监控。关于selenium的自动化测试,后续撰文再说。

推荐阅读:重庆青年网

频道推荐
  • 聚力重启 合和共生 CHIC大湾区展破浪而来
    聚力重启 合和共生 CHIC大湾区展破浪而来

    “筑梦大湾区,奋进‘新常态’。”7月17日,2020大湾区国际服装服饰博览会(CHIC2020大湾区展)大幕落下,作为亚洲地区最具规模与影响力的服装服饰专业展会...

    2020-07-21
  • 没有痣的他们是不是别有一番风味
    没有痣的他们是不是别有一番风味

    很多明星的脸上都有痣,有的明星为了不影响自己的颜值,都把它点掉了,像李易峰、李倩。还有的明星则保留了那些痣,让自己有辨识度,但会不会点掉更好呢,一起来看看迪丽热...

    2019-12-31
  • 《奔腾年代》剧中这十句台词说得特在理,您觉得呢?
    《奔腾年代》剧中这十句台词说得特在理,您觉得

    《奔腾年代》已经完美收官,不知有没有和我一样的小伙伴依旧是恋恋不舍。在感受奔腾机车梦和白首终老爱情的同时,我也被剧中频出的金句台词所感染?下面这十句台词,我觉得...

    2019-12-31
  • 明着圈钱的5大烂片,坑粉丝、卖人设,他们做到了!
    明着圈钱的5大烂片,坑粉丝、卖人设,他们做到

    1、《奔跑吧!兄弟》电影版。票房:4.35亿。好好的综艺,为什么拍电影,前两季综艺还算可以,后面一季比一季差,到现在连关注都懒得关注,太没有意义,简直就是浪费大...

    2019-12-31
  • 他是《父母爱情》校长儿子,出演“学霸腹黑男”演技炸裂:有前途
    他是《父母爱情》校长儿子,出演“学霸腹黑男”

    说起娱乐圈子承父业的不在少数,有葛存壮、葛优父子,陈强、陈佩斯父子。年轻一代中有陈宝国、陈月父子,郭德纲、郭麒麟还有就是今天要说的杨立新、杨玏父子。杨立新都知道...

    2019-12-30
  • 李兰迪清宫造型被吐槽后,中戏考试照片曝光,终于理解导演的审美
    李兰迪清宫造型被吐槽后,中戏考试照片曝光,终

    李兰迪最近的热度是真的很高,有很多的人都是在一直关注着她,之前在综艺节目《亲爱的客栈3》中的时候,她也是因为性格问题一直被大家讨论,之前因为饰演余周周留下的印象...

    2019-12-30
  • 同是老戏骨“年轻照”,苏大强忍了,苏母也忍了,看到他沦陷了
    同是老戏骨“年轻照”,苏大强忍了,苏母也忍了

    现在纵观整个娱乐圈,可以说是90后,00后的天下。每播一部剧,剧中的小鲜肉和小花都特别多,而且颜值确实很高。但是有时也会需要很多老戏骨出演,往往他们的一些角色深...

    2019-12-27