If you're among the "rack 'em and stack 'em" group that prefers physical servers over VDI, you're not alone, but you are missing out on some added features of virtualization -- even with those XenApp or terminal servers you're hesitant to virtualize.
People are still wary of virtualizing Citrix XenApp or terminal server desktops. Even as virtual desktop infrastructure (VDI) has matured, organizations are much more likely to use XenApp (or any terminal server-like solution) at scale than they are VDI. To this day, many organizations are still deploying XenApp on physical boxes.
Virtualizing terminal servers can bring some important features to the user experience. Here are the major reasons why you should virtualize your XenApp servers:
Waste less hardware in 32-bit environments
With 32-bit terminal servers, which a lot of people still use for various legacy applications, you often have unused capacity. Even though the amount of resources in the box has grown to be capable of supporting hundreds of users, kernel memory and other limitations in Windows prevent this kind of scale.
You may remember (or still be dealing with) the 4 GB memory limitation of 32-bit Windows operating systems. The short explanation of the limitation is that a 32-bit OS uses 32 bits to refer to each location in memory. That means that Windows can only address 4.2 billion addresses in memory (or two to the thirty-second power), which amounts to 4 GB of memory.
So, if you're still using physical boxes with 32-bit OSes, you're buying new, ridiculously powerful hardware that can only utilize 4 GB of memory. Now, you can probably see why virtualizing 32-bit terminal servers can be quite helpful. Instead of buying five $3,000 boxes to support 1,000 users, you could buy two $4,000 boxes, virtualize five machines across them and spend only $8,000 on hardware, as opposed to $15,000.
Obviously, this memory problem isn't as big of a deal with 64-bit OSes, but there are some advantages of virtualizing terminal servers that work across the board. Here are a few:
Increased density with more flexibility
We've discussed how you can fit more machines on a host to avoid resource bottlenecks, but it also makes sense to put multiple machines on a host to avoid devastating failures. A 64-bit terminal server loaded with resources could support 1,000 users, but if that OS were to have issues, all 1,000 people would be affected. If, instead, you broke that loaded server into a few smaller servers, a severe OS problem would only affect a small number of users.
You can finally move sessions around (well, kind of)
Before virtualization became mainstream, we dreamed about being able to migrate XenApp sessions from server to server on the fly without having to "drain" a server before maintenance. (Draining a server means you shut off logons, then wait until all the users have logged off and back on elsewhere before taking the server offline.)
Virtualization, however, means you can live migrate an entire virtualized terminal server off the hardware so you can perform hardware maintenance. Of course, you still have to drain the server if you need to work on the OS, but it's at least halfway there.
Load balancing, DR and more
When you virtualize terminal servers, it'll help in other ways that are more fundamental to virtualization as a whole. Things like automatic load balancing are possible with virtualized servers. Think about that: Not only are the users directed to the least busy server, but the servers are directed to the least busy hardware! The user experience will always be the best possible experience for a given situation.
Also, disaster recovery, high availability and automated failover are all features that can stabilize your terminal server deployment, which means you're much more nimble in the face of a disaster.
Now is the time for you to virtualize terminal servers. It's supported and it's happening in many organizations today. There are excellent documents that outline different settings and best practices, too. What are you waiting for? Get virtualizing!
ABOUT THE AUTHOR:
Gabe Knuth is an independent industry analyst and blogger, known throughout the world as "the other guy" at BrianMadden.com. He has been in the application delivery space for over 12 years and has seen the industry evolve from the one-trick pony of terminal services to the application and desktop virtualization of today. Gabe's focus tends to lean more toward practical, real-world technology in the industry, essentially boiling off the hype and reducing solutions to their usefulness in today's corporate environments.