RemoteApp for Hyper-V
Today, we want to talk about a little known feature in Windows Server 2008 R2 that could be described as RemoteApp for Hyper-V. Like Microsoft RemoteApp, it allows users to access a specific hosted application remotely, as opposed to the entire desktop. With RemoteApp, the application runs in the context of a server session; however, RemoteApp for Hyper-V enables remote access to an application running in a Hyper-V VM.
今天我们谈一下windows server 2008 R2一个鲜为人知的特性-- RemoteApp for Hyper-V。微软的RemoteApp允许用户以远程的方式去t特定的宿主应用程序,而不是整个桌面。应用程序通过RemoteApp运行在一个Server session的上下文中;然而,RemoteApp for Hyper-V只允许远程访问一个在Hyper-V 虚拟机中的应用程序。
With the advent of Windows 7, some enterprise customers were facing application compatibility issues with line-of-business applications that were specifically written for Windows XP and would not work on Windows 7.
随着windows7的到来,一些企业客户将面临着一些应用程序的兼容性问题,因为这些应用程序是在windows XP上编写,不能在windows7上正常工作。
One obvious way to resolve this issue is to run those incompatible applications in Windows XP Mode, a new feature that is available in certain Windows 7 SKUs and which simplifies migration to the new OS by allowing legacy XP applications to seamlessly run in their own context within a Windows 7 environment. Windows XP mode has specific hardware, OS and memory requirements. While this solution works well on newer machines with hardware virtualization support, the hardware requirements for XP mode might be prohibitive for some older PCs.
解决这个问题的一个显著的方法就是运行这些不兼容的程序在windows XP模式下。windows 7 SKU中有一个新特性支持将遗留的XP应用程序迁移到新的操作系统上,并在可以无缝的运行在window 7环境中。运行Windows Xp模式需要有对应的硬件,操作系统和内存的需求。这个方案可以很好的工作在具有硬件虚拟化支持的机器上,但是XP模式的硬件需求对于旧的PC来说可能比较昂贵。
RemoteApp for Hyper-V allows users to remotely access Windows XP applications from their Windows 7 desktop with no additional hardware requirements.
RemoteApp for Hyper-V 允许用户从window7桌面远程的访问windows xp应用程序,并且不需要额外的硬件需求。
SKU support: RemoteApp for Hyper-V is supported on the following SKUs running as the guest OS:
以下的操作系统支持RemoteApp for Hyper-V
Windows XP SP3: Professional
Windows Vista SP1 and above: Enterprise and Ultimate
Windows 7: Enterprise and Ultimate
Here are some examples of applications that will benefit from this feature:
以下的应用程序将得益于这个特性:
Applications that are compatible only with Windows XP SP3
Applications that can run on Windows Server 2003, but not Windows Server 2008 or Windows Server 2008 R2
Applications that are supposed to be run only on a data center server for data security or compliance reasons
To use this feature, a user connects remotely from a client computer to the VM-hosted application. To host the applications, an administrator sets up a virtual machine with a guest OS on a Hyper-V server hosting the virtual machine.
使用这个特性,用户需要从客户机远程连接到虚拟机的应用程序。想要宿主应用程序,管理员需要安装客户操作系统在Hyper-V服务器上。
The client computer must run Windows 7, but the guest OS on the virtual machine can run Windows XP SP3, Windows Vista (with SP1 and above) or Windows 7. For a guest OS running Windows XP SP3, an update is required; for a guest OS running Windows Vista SP1 or above, another update is needed.
客户端的计算机必须运行在windows 7上,但是在虚拟机上的客户操作系统可以是Windows XP SP3, Windows Vista (with SP1 and above) 或 Windows 7。另外,更新操作系统的补丁是必要的。
So, how can an administrator deploy this?
There are two ways in which RemoteApp for Hyper-V can be deployed. The first way is the stand-alone scenario, in which all the administrator needs to do is set up a Hyper-V server with virtual machines running a client OS (for example, Windows XP SP3). The administrator would then set up the application and create RDP files that launch this application. A user can connect to the application via a simple Remote Desktop connection using the RDP file.
那么,管理员如何部署呢?
这里有两个方法去部署RemoteApp for Hyper-V。第一个方法是在独立的场景应用,管理员必须安装一个Hyper-V服务器并配置一个客户操作系统在虚拟机上。管理员还需要安装应用程序并为其创建RDP文件。用户可以通过RDP文件和简单远程桌面连接到宿主应用程序。
Here’s how this setup would look:
While this is a simple setup that an administrator can use to pilot the RemoteApp for Hyper-V, it offers no extra efficiency or ability to load balance. One serious drawback of this method is that since only one user can connect to an application at a time, one user connecting to multiple virtual machines effectively blocks out other users.
通过这样一个简单的安装,管理员就可以试用RemoteApp for Hyper-V,但是它并没有提供额外的效率或能力去作负载平衡。这种方法有一个严重的缺点就是每次只能有一个用户连接到一个应用程序上,如果一个用户连接多台虚拟机将会阻碍其他用户。
To get around this problem, the recommended way to install RemoteApp for Hyper-V is over a complete VDI farm or personal virtual desktop setup, including setting up the RD Connection Broker role. An administrator would still need to perform the same manual steps of setting up the application and creating an RDP file, but there are significant advantages to going through the RD Connection Broker. An obvious one is load balancing. In addition, there is increased efficiency, simply because when a user is connected to a virtual machine, all applications launched by that user are redirected to the same virtual machine. Only one user can connect to applications running on a particular virtual machine at a time.
为了绕过这个问题,建议在一个完整的VDI farm或者个人虚拟桌面上安装RemoteApp for Hyper-V,同时还需要建立远程桌面连接的代理角色。管理员还需要使用相同的步骤去设置应用程序并创建一个RDP文件,这样做的好处可以通过远程桌面连接代理,并且可以显著提高负载平衡。另外,这样也能提高效率,因为当一个用户连接到虚拟机,虚拟机上所有运行着应用程序将都会被重定向到这个用户上。所以,一次只能有一个用户连接到虚拟机上的应用程序。
One single user cannot block out an entire farm by holding onto different virtual machines on it at the same time. Until a user’s virtual machine is terminated, redirection is always to the same VM. RD Connection Broker ensures that a user connected to a VM stays connected until logged out.
单用户同时登陆到不同的虚拟机并不会阻碍整个farm的用户。但是只有用户的虚拟机关闭后,这台虚拟机上重定向过程才会结束。远程桌面连接代理确保用户一直保持连接,直到用户登出。
Here’s how the second setup scenario described above would look (running from a Windows XP SP3 farm, for instance):
第二个安装场景如下:
Hosting applications in a farm of virtual machines running Windows XP SP3 is a simple way to give multiple people on the domain access to the applications. There is no security filtering for applications on a virtual machine farm. All domain users who have access to the farm will have access to the applications.
一种简单的方法为域中的多个用户提供应用程序访问,就是将宿主应用程序运行在farm中的windows XP SP3的虚拟机上。不过farm虚拟机上的应用程序没有使用安全过滤,所以所有域用户只要能访问域即可以访问这个应用程序。
If an administrator wants to give only a specific user access to an application, the application should be hosted on a personal desktop. In all cases--farms or personal desktops--an administrator only needs to create an RDP file and hand it over to a user, either via a network share or email.
如果管理员想为一个特定用户提供访问权限,那么这个应用程序必须宿主到用户的桌面上。 无论是在farm上或是用户桌面上应用这一技术,管理员只要创建一个RDP文件并发送给用户即可。
RemoteApp for Hyper-V is a basic but powerful platform capability which was designed with advanced administrators in mind who are willing to do the manual configuration steps to enable an environment that includes remote access to VM-hosted applications. It serves also as an extensibility point for our RDS partner ecosystem who may want to take advantage of this infrastructure capability and provide additional value-add to RDS customers by streamlining the configuration and expanding the usability and manageability of it. For example, with additional code, it is possible to integrate the RDP files with Remote Desktop Web Access.
RemoteApp for Hyper-V是一种基本但是很有效的平台处理能力,这种设计为那些愿意手动配置环境来启用远程访问宿主应用程序功能的高级管理员提供了支持。它也为那些愿意使用这种基础设置优势并提供额外的扩展的客户提供支持。例如,使用一些额外的代码将RDP整合到远程桌面WEB访问中。