The Basics of Windows Virtual Desktop Infrastructure (VDI)
Virtual Desktop Infrastructure (VDI) is the natural evolution of terminal servers and cloud desktop environments. The overall commoditization of infrastructure has led to an explosion in the number of platforms and options for virtualization and cloud environments. VDI is the next iteration which turns a shared platform into a personal space embedded in a shared infrastructure.
Traditional terminal servers cannot scale without extra resources being added. Virtualized or cloud terminal servers might have some scaling, but a single user can impact the rest easily. With adaptive computing and all of the resources available to a VDI setup, a user can be provisioned where their work doesn’t impact other users or the overall cost of the solution (when provisioned and setup appropriately).
With all of these pros, you’d think that a VDI is the only way to go. But, like anything in technology, there are still reasons to use alternative methods depending on your client and their workflow. Some people view VDIs as a solution looking for a problem while others swear by them. To really assess whether a VDI is right or not for a client, we need to dig deeper into the limitations of VPNs, how they compare to terminal services, what they do well, what their limitations are, and what platforms work best.
Limitations of VPNs
Virtual Privatized Networks (VPNs) have their uses, but they also have limitations. A VPN can be a good solution when you have a good internet connection and don’t need to move things in and out of the network constantly. Past that, they break down for usefulness quickly.
A VPN also requires the user to furnish equipment which can handle their tasks, as well as getting licenses for software they need to do their job. While some programs will allow you to install on some number of devices for a given user, others don’t. There are plenty of other limitations and benefits of VPNs, but they’re way outside the scope of this document.
Terminal Servers Evolve Into Virtual Desktops
VDI is the evolution of the traditional idea of a cloud terminal server. Terminal servers originally set out to solve several problems: how can you enable users to access better computing resources, and how do you average those costs out? How do you get your users the best experience without it breaking the bank?
With a terminal server, licenses end up being cheaper for most applications. You can afford to use lower grade hardware to connect to the terminal server than you would need if you ran everything locally. Your user costs are averaged out by effectively buying computing resources “in bulk” and then divvying them up. Spikes in a single user’s session (theoretically) don’t impact other users either.
The first major jump for terminal servers was virtualization. Once they were virtualized, it got easier to provision resources on demand as necessary. Cloud hosting platforms took this model and some even add adaptive, on demand resource allocation and similar which can be charged for based on usage.
As virtualization got more and more prevalent, each cloud provider sought the holy grail of frictionless cloud computing. It got to be computationally cheap enough to just virtualize the whole operating system for every and any user based on a golden image. This grew into the modern concept of VDI.
VDI Versus Terminal Servers
History lesson aside, VDI is more efficient for users. It’s more configurable and more customizable, but heavier. Though computing has gotten cheaper, more traditional solutions still end up cheaper for many use cases. More traditional solutions win when there is a more standardized workflow and more shared resources or assets in use. They suffer in terms of security and for varied workflows.
Security suffers because you have multiple users accessing the same server. The old security adage goes that physical access is total access. While a hacker does not have access in terms of actual physical access to the hardware, one leaked set of credentials is as good as someone compromising the whole machine and sitting in front of it. The right tools and the right exploits mean root level access, or at the very least, ransomware across all the files the user has access to.
Terminal servers also suffer from a massive performance hit when you mix workflows, or have too computationally intense of a workflow. What happens when a single user pegs out 4 cores on the terminal server or 10 gigs of RAM? Most likely, your other users suffer. What happens when you have a bunch of different teams using the same platform? You need many different pieces of software which each have unpredictable workloads on the system. All of the advantages of a shared environment quickly become its inefficiencies.
The Benefits of VDI
VDI skirts around these because it is a whole virtualized desktop in the cloud. No one shares the individual desktop in this case. The user gets a customized workflow suited to their needs. When this is hosted on the right platform, all of the company’s data can be easily accessible by any virtual desktop as necessary.
Most VDI platforms offer either on demand resources, or can be over-provisioned. Traditional virtualization over-provisioning is a powerful technique, but there’s still a maximum cap. If your hypervisor has 12GB of RAM available to share between 4 VMs, each VM averages 3GB available to it, but you can easily have a VM use 9GB while the others are able to function on 1GB each with the right scenario. If you need 2 VMs to hit 6GB each though, you’re out of luck.
A VDI platform is going to have (near) infinite RAM for all intents and purposes. You don’t have a hard cap which requires modifying a server, you just need to pay more. Even then, you only pay more for a bit with most setups.
Virtual desktops also allow users to use them anywhere. Your user doesn’t need to worry about a VPN, an RDP setup, or any of the things which make terminal servers a bit more complex.
Another benefit is that a virtual desktop can be configured to entirely wipe the previous instance on each run. This isn’t a one-size fits all approach to a desktop environment, or even ideal for most, but it’s a value add for lab environments or certain workflows. If everything should be done off of a shared drive, who cares what happens to everything on the local OS between runs?
Limitations for VDI
One of the biggest slights against VDI is the overall cost. You end up paying more to do the same thing you could with a desktop with more expensive continued costs. You gain a lot of benefits and a lot of flexibility for this cost however.
Certain compliance situations necessitate the usage of on-premise data or access. VDI just plain doesn’t fit these models. You can roll your own solution or similar, but that’s a bit overkill except for large enterprises.
Like with any cloud technology, you’re also limited by your connection speed and latency. Speed is less of an issue with any modern connection, but latency can still hugely impact working in a cloud environment. When I hit a key, I expect to see the letter appear and the cursor move. Some solutions have certain workarounds for this, but they all have their own trade-offs.
Platforms for VDI
The 20 has partnered with multiple platforms in order to provide our customers with the best experience working with VDI solutions. There are a huge number of VDI platforms on the market. Microsoft has Azure, which Nerdio makes easier. Crayon also has their own offering with CloudJumper. There are a multitude of platforms each with their own features and their own limitations. No one platform is going to be right for every single business, but some platforms will be more universal than others.
What are your clients trying to do and how are they looking to do it? This is the most fundamental question which determines what you need out of a platform. Most popular platforms will be able to do what you want in some way, but the cost will vary wildly as will the complexity. One platform might be pennies on the dollar compared to another, but much more limited. Another might make everything easy but it costs twice as much as a platform which is harder to initially setup.
VDI is a powerful tool, but like any other platform or technology, it’s just another tool. It might be the right tool a lot of times, but you need to know what your clients need and why. Don’t just use VDI to fulfill buzzword bingo, use it because it’s the best tool to solve your problem.