VMware Horizon 虚拟化云桌面探索(一) - USB重定向

天锦 发表于 女票们的新建与保养 分类,标签: Vivado的加速之路

又咋了

说出来你可能不信,为了跟龟速的vivado斗志到底,我居然玩上了云桌面!

事情是这样的,在上一回中,我研究了如何使用集群加速vivado的综合和实现的操作,最后部署好之后发现,看着很不错,特别是对于特大型的FPGA工程来说,加速效果是绝对的。可现实是,我一学生,无力购买N多台高配服务器用来组集群,另外我做出来的工程属于那种不大不小的工程,vivado在使用集群进行综合时必然会有调度这一过程,这一过程也是耗时的,一台机器配置成远程或者两台机器组集群编译中小型的工程反倒没什么加速效果,还不如直接作为本地跑,高配的服务器做本地机器直接编译。可是调试怎么搞,我总不能把下载器插在服务器上,抱着笔记本在服务器旁边Debug吧,服务器上综合实现,比特流拷贝到笔记本上再下载调试,文件来回拷?人早晚要疯!

归根结底

还是没钱买高配电脑!穷呗……

怎么把我笔记本上的USB设备(也就是FPGA调试器)重定向到服务器上,就好像插在了服务器上一样呢?难不成用FPGA写个USB转光纤的模块,走网络?别说,还真有!

Bingo

真有把USB通过网络重定向到其他设备的方案,而且不用搞那么大动静又设计FPGA又扯光纤的,它就是云桌面!

云桌面也属于虚拟化的一部分,传统主机所包含的CPU、内存、硬盘、网卡等组件全部在后端的服务器中虚拟出来,单台高性能服务器可以虚拟1-50台不等的虚拟主机(当然,我一也可以把所有资源划分给一台虚拟机);前端设备目前主流的是采用瘦客户机(与电视机顶盒类似的设备)连接显示器和键鼠,用户安装客户端后通过特有的通信协议访问后端服务器上的虚拟机主机来实现交互式操作,达到与电脑一致的体验效果。插在瘦客户机上的USB设备也可以通过其自身特定协议映射到虚拟机中。我的 渣渣笔记本就可以作为瘦客户机去连接服务器中的虚拟机,实现远程操作。

懂行的朋友会说,不是有RDP么,不是有VNC么,再不济,VMware Workstation也能远程连接到ESXi服务器远程操控其中的虚拟机啊。对!可以!但是……他们都不支持USB重定向……

踩点

既然方向有了,可以通过云桌面去搞通USB的重定向问题,那就看看怎么实现云桌面吧。做云桌面的有很多家公司在做,华为的FusionSphere,深信服也有,微软的hyper-v加上RDS也能拼出来一个云桌面。起初尝试了华为的FusionSphere,但是可参考的资料太少,最终没能成功,连虚拟化平台都没有跑出来(说白了还是自己笨……)。最后选了VMware Horizon,咱vsphere玩的溜啊!

直接VMware官网申请Horizon使用,60天试用,先搭出来再说!

结果,我申请到了以下这么多组件……跪了……这都是干嘛的啊……

Screenshot_20191122_202025.jpg

经过一个一个的安装和尝试,已经摸索出了个大概,直接总结如下:

Horizon 7.10.0 View Agent

远程代理组件,需安装在被远程的虚拟机中。

Horizon 7.10.0 View Connection Server

远程连接服务器,类似于一个中间件,负责管理所有的客户端的连接请求和访问授权控制,瘦客户机程序连接到该服务器组件,再由该组件与Horizon View Agent进行通信,同时也负责桌面池的管理比如克隆一个虚拟机,当客户端下线后关闭虚拟机能操作。需要安装在一台独立的服务器中(可以是虚拟机也可以是物理机)。

Horizon 7.10.0 View Agent Direct-Connection

远程代理组件的拓展组件,也是安装在被远程的虚拟机中。可选的安装,当云桌面规模很小的时候,像我这种只连接两个虚拟机,也不是集群啦什么的,可以将Direct-Connection这个组件和View Agent一起安装在虚拟机中,这样客户端就可以直接连接到虚拟机,免去了 View Connection Server 服务器的部署。

Horizon 7.10.0 View Composer

克隆和链接虚拟机的一个服务器组件,用于节约磁盘空间的一个技术,传统的将一个虚拟机模板克隆成N个虚拟机,那么磁盘空间就占了N份模板大小的空间,Composer通过将克隆的虚拟机和模板进行链接以减少这种磁盘空间的浪费。可以和View Connection Server一起安装在同一台服务器中,也可以独立安装在一台服务器中,同样,即可以是虚拟机也可以是物理机。

Horizon 7.10.0 Persona Management

用于物理桌面到桌面云迁移时,将原物理机中的配置和文件迁移到虚拟机。

Horizon 7.10.0 JMP Server

作用未知,尚未探索。

Horizon 7.10.0 View GPO Bundle

作用未知,尚未探索。

Unified Access Gateway (UAG) 3.7 for vSphere and Amazon AWS (Non-FIPS)

作用未知,尚未探索。

Unified Access Gateway (UAG) 3.7 for vSphere (FIPS)

作用未知,尚未探索。

点个灯儿

在VMware官网逛(等)了一上午,总算是把这几个套件下载到本地了(网烂没办法……),先点个亮吧!

基本步骤是1.新建个Windows服务器来部署View Connection Server服务器;2.在虚拟机中安装好View Agent;3.配置View Connection Server服务器;4.终端设备(笔记本)安装Horizon Client。

第一步安装View Connection Server服务器:

1.1新建一台Window Server 服务器,过程不再赘述。

1.2安装连接服务器View Connection Server之前,要确保服务器已经加入了域环境并且当前是以域用户登录到服务器的。

1.3打开开始菜单,运行“gpedit.msc”打开组策略管理器,进入计算机配置-Windows设置-安全设置-用户权限分配-作为服务登录,检查域管理员是否配置为作为服务登录。

1.4打开“计算机管理”工具,进入本地用户和组-组,检查域管理员是否添加至管理员组。

1.5双击运行连接服务器安装程序VMware-Horizon-Connection-Server-x86_64-7.10.0-14584133.exe

1.6无脑“下一步”的那些操作不再赘述,只看以下几个关键点:

3.png

区别见下表:

Horizon 7标准服务器创建一个实例,用于单独安装一台Horizon 7服务器或一组服务器的第一台(主服务器)
Horizon 7副本服务器加入到现有的实例中做备胎(可以有多个)
Horizon 7安全服务器通常安装在DMZ区域以提供安全接入(需要连接到实例中)
Horizon 7注册服务器用于True SSO认证机制

关于IP协议版本,尽量选IPv4,有一些功能暂时还不支持IPv6!

4.png

在此设置一个数据恢复密码

5.png

授权用户以允许登陆。


第二步安装View Agent,同样只看以下几个关键点:

1.png

这里RDS和桌面模式的区别

RDS(Remote Desktop Services 远程桌面服务)是RDP的升级版,其仅限于Windows操作系统桌面的连接,其实现介质有云终端、瘦客户机、平板、手机、笔记本电脑、PC主机等。RDS(Remote Desktop Services 远程桌面服务)是目前很流行的云桌面技术,其应用场景众多(如:教学、办公、阅览室、展示厅等)。RDS是RDP的升级版,其所连接Windows系统桌面的体验效果、稳定性、安全性总体比RDP好。

RDS模式看起来是不错,但是我初次配置的时候没能成功,View Connection Server中一直提示“等待代理”,为了能够成功跑起来,我选了传统的桌面模式(VDI)。RDS以后有真正的桌面云需求的时候再折腾。另外补一句,RDS需要执行两次安装,第一次会安装RDS服务器角色到虚拟机上,重启后再执行安装才是RDS模式的View Agent安装。

2.png

自定义安装这里有很多功能,有一部分是打了红X的,我要用的USB重定向,所以要把USB重定向修改为本地安装。这些功能具体何用途可见下表格:

安装选项

选项功能说明

核心安装核心功能
3D RDSH
此功能在RDSH会话中启用3D硬件加速
USB 重定向允许用户访问其桌面上本地连接的 USB 设备。在单用户计算机上部署的远程桌面上支持 USB 重定向。此外,已发布的桌面和已发布的应用程序中还支持 USB 闪存驱动器和硬盘的重定向。默认情况下,不会选择此选项。必须选择此选项才会进行安装。
适用于 Skype for Business 的 VMware Virtualization Pack在虚拟桌面中使用 Skype for Business 进行优化的音频和视频通话。默认情况下,不会选择此选项。必须选择此选项才会进行安装。
VMware Horizon View Composer Agent

让此虚拟机作为 View Composer 链接克隆桌面池的父虚拟机。如果选择此选项,您将无法选择 VMware Horizon Instant Clone Agent 选项。

实时音频-视频重定向客户端系统连接的网络摄像头和音频设备,以便用于远程桌面。
VMware Horizon Instant Clone Agent让此虚拟机作为即时克隆桌面池的父虚拟机。默认情况下,不会选择此选项。如果选择此选项,您将无法选择 VMware Horizon View Composer Agent 选项。
客户端驱动器重定向允许 Horizon Client 用户与其远程桌面共享本地驱动器。安装此选项之后,无需在远程桌面上执行进一步的配置。在已发布的桌面和应用程序上,以及在未受管计算机上运行的虚拟桌面上也支持客户端驱动器重定向。
虚拟打印允许用户通过其客户端计算机上可用的任意打印机进行打印。用户不需要在其桌面上另外安装驱动程序。以下远程桌面和应用程序支持虚拟打印:在单用户计算机上部署的桌面,包括 Windows 桌面和 Windows Server 计算机在 RDS 主机上部署的已发布桌面和已发布应用程序,其中 RDS 主机为虚拟机或物理机从远程桌面内的 Horizon Client 启动的已发布应用程序(嵌套会话)。虚拟打印功能只有在通过 Horizon Agent 进行安装的情况下才受支持。在使用 VMware Tools 进行安装时,不支持该功能。如果选择此选项,您将无法选择 VMware Integrated Printing。
vRealize Operations Desktop Agent提供允许 vRealize Operations Manager 监控远程桌面的信息。
扫描仪重定向重定向连接至客户端系统的扫描和图像处理设备,以便在远程桌面或应用程序上使用。默认情况下,不会选择此选项。必须选择此选项才会进行安装。
串行端口重定向

重定向连接到客户端系统的串行 COM 端口,以便在远程桌面上使用这些端口。默认情况下,不会选择此选项。必须选择此选项才会进行安装。

Flash 重定向

将 Internet Explorer 9、10 或 11 浏览器中的 Flash 多媒体内容重定向到客户端,以优化性能。

HTML5 多媒体重定向在 Chrome 或 Edge 浏览器中将 HTML5 多媒体内容重定向到客户端,以优化性能。
地理位置重定向启用地理位置重定向功能。默认情况下,不会选择此选项。必须选择此选项才会进行安装。
VMware 客户端 IP 透明度启用到 Internet Explorer 的远程连接以使用客户端的 IP 地址,而不是远程桌面计算机的 IP 地址。默认情况下不选择该安装选项。必须选择此选项才会进行安装。
Horizon 性能跟踪器监控显示协议的性能和系统资源的使用情况。默认情况下,不会选择此选项。您必须选择此选项才能对其进行安装。如果安装 Horizon 性能跟踪器,则需要 .NET Framework 4.0 或更高版本。
VMware Integrated Printing允许用户通过其客户端计算机上可用的任意打印机进行打印。支持基于位置的打印。以下远程桌面和应用程序支持 VMware Integrated Printing:1)在单用户计算机上部署的桌面,包括 Windows 桌面和 Windows Server 计算机2)在 RDS 主机上部署的已发布桌面和已发布应用程序,其中 RDS 主机为虚拟机或物理机默认情况下,不会选择此选项。必须选择此选项才会进行安装。如果选择此选项,您将无法选择虚拟打印。

6.png

配置与View Connection Server服务器的连接信息,IP为View Connection Server服务器的IP,用户名一定是要以域\用户名的形式。

等待安装完成后准备配置View Connection Server服务器

第三步-配置View Connection Server服务器

在View Connection Server服务器中启动浏览器打开https://localhost/admin,注意View Connection Server默认绑定的是服务器主机名和localhost,直接使用ip访问是打不开控制界面的。

3.1在产品许可中配置产品密钥,我用的是官网申请到的60天试用密钥

7.png

3.2点击View配置-服务器,添加vCenter Server信息


接受证书

接下来配置View Composer,因为我只是为了用到桌面云的USB重定向功能,并不是典型的云桌面,不涉及到虚拟机模板以及批量克隆之类的操作,所以我没有安装Composer,我选了不使用。

10.png

存储默认即可

11.png

3.3添加桌面池

12.png

有三种桌面池类型,咱依旧不走寻常路,肯定选手动撒!

13.png

其实三者的区别嘛……自动用于配置典型的桌面云,由一个模板克隆成N个虚拟机的那种,他会自动根据账号和策略从模板给登入的用户创建相应的虚拟机,手动用于配置永久的固定的某个虚拟机永远属于谁的这类的,还有物理机等这些不常见的骚气操作。RDS故名思意,就是用了RDS协议的桌面嘛,暂时还没配好……不管他先。

14.png

分配为专有。

15.png

从vCenter集群中选取计算资源

之后设置桌面池的一些常规属性之后就可以选择虚拟机到桌面池了,找到刚才安装了View Agent的虚拟机,添加到桌面池。

16.png

最后授权桌面池给用户

17.png

18.png

第四步-Client连接桌面云

在终端设备上安装VMware Horizon Client,安装完成后重启计算机后,启动Client。

点击新建服务器或添加服务器均可

19.png

输入View Connection Server服务器的IP地址

20.png

登陆后就能看到刚才创建的桌面池以及主机了,连接进去可以看到最上面的工具栏中有了连接USB设备选项,大功告成!

21.png

后期更新

如果是Windows系统又不太想大费周章的参考后期博文《VMware Horizon 虚拟化云桌面探索(二) - 简单一点

如果是Linux系统,想使用USB重定向的,参考后期博文《VMware Horizon Linux 云桌面 USB重定向配置

3 篇评论

发表我的评论