Thursday, July 9, 2009

Terminal Server on Hyper-V

Microsoft is finally (publically) talking about Terminal Server on Hyper-V.

Please note that it isn’t Terminal Server anymore, but “Remote Desktop Services”. This is closer to the way that Citrix talks about desktops and delivery of desktops and applications.

However, in this case it is rather confusing as Remote Desktop Service (without the s) is what has been referred to as the server side of RDP (the protocol) or the remote desktop client.  Just remember, MSFT uses RDP all over the place now.  If it is remote, RDP is involved.

Enough of that, here is the RDS Team blog post I am referring to:

http://blogs.msdn.com/rds/archive/2009/06/24/running-ws08-terminal-server-as-a-virtualized-guest-under-windows-server-2008-r2-hyper-v.aspx

And a snippet:

Running WS08 Terminal Server as a virtualized guest under Windows Server 2008 R2 Hyper-V

One question that the RDS team is asked is whether running Terminal Server virtualized is supported and recommended.  To answer this question we’ve recently conducted some performance testing of this configuration using WS08 Terminal Server running as a guest on Windows Server 2008 R2 Hyper-V.   To answer the first part: this is a supported scenario.

3 comments:

Diego said...

We have been running a Hyper-V environment for the past year, including 'Remote Desktop Service'. There were many issues in the beginning with printer redirection, compatibility and so on. But things have improved dramatically.

We have all our main servers virtualized; load balanced 'Remote Desktop Service', Exchange, SQL, BES, File server, etc.
Hyper-V's cost and ease of setup was an attraction from day 1. We took the change and it has worked great.

Keep up the good work on the posts.
D.M.M

Anonymous said...

Microsoft published one white paper based on a very simple scenario: one wts virtualized on a hyper-v environment with only one server virtualized (the wts). Was not convincing to me. The base line of the white paper was that you have to test your own particular utilization and workload to decide if it is feasible.

BrianEh said...

You always have to test your workload.
The key to Terminal Server workloads is twofold. 1) does your application run well on Terminal Server. 2) what happens when you put this terminal server in a VM.

I have been running VMs since 2003, and at one time we had one application that ran fine under terminal server, but as soon as we put that same installation in a VM, we could support only 2 user sessions, the third session caused the usability to just crumble.

We ended not being able to run the terminal servers in VMs.

The other thing about terminal servers is that you are generally running user applications. These applications (as general experience) tend to do a large amount of application caching to the OS disk. So you end up with a relatively high amount of IO happening with the OS disk of the VM. Not something that most folks realize, as the standard performance counters tend to ignore it.

So, yes, it is still a rather arcane art to use terminal server, let alone run it in a VM.