Complete Guide to Virtual Desktop Infrastructure (VDI), Desktop as a Service (DaaS) and Remote Apps

What is Virtual Desktop Infrastructure VDI and DaaS?

Virtual Desktop Infrastructure or VDI is a type of technology that provides  users with virtual computer desktops rather than the physical, traditional desktops. 

The VDI concept may be a bit hard to grasp. Let's break it down.

Conventionally speaking, a desktop is a computer you go to a store and purchase. You place it on your desktop at home or office and you can then browse the Internet, stream movies or edit documents, etc.

This physical computer you buy has multiple components needed for it to work.

  1. The computer (operating system and software on it)
  2. The monitor
  3. The Keyboard / Mouse

All those components are sitting on your desk (or lap if it's a laptop). They are all in the same place/room.

A virtual desktop is different from a physical desktop in that the computer and applications installed on it are not physically in the same room as you, the keyboard or the monitor. In fact the computer with the applications may be hundreds of miles away in a data center somewhere. The VDI / DaaS technology is what makes you able to access that remote computer as if is next to you. It will allow you to see the desktop and the applications installed on it on your local monitor and interact with it using the your local keyboard and mouse as if is physically next to you. This As-If is what makes it virtual.

Wait what's the difference between VDI and DaaS or are they the same?

Often times VDI and DaaS are used interchangeably, however there is a difference. VDI is the actual underlying technology that makes the virtual desktop possible. DaaS is a  cloud term for a paid service that provides VDI. Usually a hosting company provides DaaS. If you implement VDI in-house, then you wouldn't be using DaaS (since you're not paying a provider to provide it to you).

Benefits of VDI and DaaS?

So You may say that makes sense, but why should anybody use this VDI model? What's the point of moving the actual computer to a remote location?

The benefits are actually huge for the following reasons.

  1. Your data is never lost.

    That's right. VDI is designed to improve manageability and control. A good VDI solution includes continuous backups of the desktop environments of the users. This means if you deleted a file on accident (even from the recycle bin) the file can be restored. Or if you lose your laptop, your can still access your applications and data because its all in the data center.

  2. You can access your desktop from anywhere.

    VDI allows you to access the applications and data stored on your desktop from anywhere. You can for example, be working from the office on a document on Microsoft Word, go for dinner and come back home and continue working it as if you never left your office. You will still see the Word document up where you left it at the office although you are at home.

  3. If you are a company with many employees, you don't have to manage the employees' physical desktops or upgrade them any more that means you save money.

    Companies and IT know that management of desktops is hard. You have to purchase the expensive desktops, install them, upgrade them  every few years, add resources, troubleshoot failed drives, etc.. With the centralized nature of the virtual desktop in VDI, all you have to manage physically now is the thin clients. Which are designed to be low maintenance.

  4. You can roll back your desktop if it gets compromised with malware or viruses.

    One of the biggest pains of traditional desktops is dealing with malware and viruses. With VDI, this is much less of an issue because a desktop as whole can be restored to the date before the desktop was infected.

  5. Easier management of many desktops

    Due to the hosted centralized nature of the desktops, IT can access, manage, update the desktops much easier than before when getting physical access was needed.

  6. Standardize applications and desktop settings for many desktops on your network.

    How often has IT seen the case where an application runs on a desktop but fails on another? VDI allows very good standardization of desktop configuration in such a way that all users access desktops that are very identical.

  7. Easy resource management and scaling.

    Say a user needs more RAM or disk space, IT in the past had to order that part, go the users computer and install it. If it's a laptop, you need to purchase a new laptop. With VDI, servers are loaded with extra resources and upgrade a desktop is a matter of minutes.

  8. Cheaper provisioning of new desktops for new employees.

    When new employees or contractors com on board, there is no need to order hardware, etc. A new desktop can be previsioned in minutes.

  9. Self Resetting Desktops (optional)

    In certain cases users that use need only temporary access to a desktop. This is very popular in education. Let's say that users walk in to a class to use a software during the class. Ideally the computer in the lab will reset back to it's good configuration in case the previous users loaded personal data, installed custom software or was even malicious. This guarantees next users a clean slate to work on.

Disadvantages to VDI

Just like any solution, there are benefits and drawbacks. Some things to consider about VDI.

If you decide to go with a DaaS (Desktop as a Service Provider) solution. Meaning you just buy a hosted VDI service then of course there will be an ongoing cost to have the desktops hosted.

Barriers to Adopting VDI

VDI may not work well for your company or you as an individual if:

Types of VDI Implementations

There three types of VDI solutions that are common.

Session Based Desktops

Session based desktops is a type of desktop access where multiple desktops are created for each user on the same master machine. Desktops are isolated from each other by sessions. Those session desktops are essentially using the same master desktop except each user is separated by screen divider if you will.

Those types of desktops are not very personlizable and users often can't do much other than use the applications available to them.

RemoteApps

Remote Apps are a way for users to access desktop applications without having to log into a full remote desktop. Users can launch applications and they will appear on their computers as if it was locally installed and will show in their local desktops task bar.

Pooled Desktops

This type of desktop deployment is interesting and quiet smart. This is a type of solution where compared to session based, each user actually gets a dedicated virtual desktop with designated RAM and CPU just for them and isolation is done at the VM rather than just memory.

This type of deployment is driven my a virtual desktop image (sometimes referred to as the golden image. Think of this image as the baseline for all users loggin in. It has the most basic and fundamtenal configuration, software you want all users to have.

When a user logs in, they get a virtual desktop based on that image. At that point they have a full machine just for them.

When they log off, all changes done to the machine are gone. That's right. If they installed software, the software is gone. But what is the point of this you may ask?

It has some good use cases:

  1. Students logging into a computer lab are usually only accessing the desktop for the purpose of training. When they leave the lab, new users don't want to see the files, etc of the previous user. Even when the user himself logs back in, he/she needs to start have an untampered environment with bad configurations.
  2. Employees logging in to do some work will always have consistent desktop environment to work on.

Note that personal files that users work on can be stored for next time use. This user specific data is stored under the user's profile. However, everything about the configuration, software on the machine is gone.

As you may know from personal experience, desktops are fickle and can be destabilized with malware, custom software, configuration changes, etc. This makes the desktop break eventually and this type of self resetting desktop is perfect to create consistency and stability.

Dedicated / Personal Desktops

Personal Desktops is the classic desktop we know. It is still virtual, however here each user is given their own virtual desktop that is persistent and never resets itself. If a user installs software, downloads files, logs off and logs back on, everything remains there.

Those desktops are perfect for developers, users that need good control over

What are Thin Clients and Zero Clients and their Role in Virutal Desktops?

To connect to a virtual desktop that is hosted on VDI infrastructure you need a client. This can be your computer or it can be a thin client. The thin client is also computer, except it is thin in capabilities. So it may have less CPU and RAM and even software installed on it that a traditional computer client. So really all it is is a just a computer with the bare minimum and lowest cost with the sole purpose of connecting you to a hosted virutal desktop.

A Zero Client is also a computer except even thinner than a thin client. So a Zero Client gives you even more barebone system that almost has no capability at all but to connect to a remote desktop.

A thin client does allow you for example to launch a browser or possibly install some software, a zero client does not.

Who Are the Big Players in VDI?

VDI has become verify popular. Many large technology companies are competing and offering competitive VDI solutions. The biggest VDI solutions are provided by:

  1. Citrix XenDesktop and XenApp.
  2. VMWare Horizon
  3. Microsoft VDI

Those are solutions that you can take and implement onsite by buying the servers and installing those vendor's software on it. Each of those vendors may have their own Desktop-as-a-Service Option as well.

How can my company get VDI?

To get a VDI hosted desktop solution, there are a few ways to get started:

  1. You can setup an in-house VDI at the data center, install the servers, hardware needed, etc. If you don't have any expertise with this option you can hire a firm that specialized in setting Virtual Desktop Infrastructure deployments. Those are often IT consulting companies or Systems Integrators.
  2. Use a VDI Hosting Provider that has a turnkey solution. Often known as Desktop as-a-service (DaaS). This option is pain free, fast to setup and you can be up and running very quickly and nothing to manage.

Should my company implement VDI on their own or subscribe to a Desktop as a Service (DaaS)?

Here the answer depends.

Reasons to implement your own VDI would be:

  1. Maybe you are a very large corporation and find that it may be cheaper or more cost effective.
  2. Your already have internal IT resources available 24/7 so you don't need to outsource the support for the infrastructure.
  3. Compliance Reasons. Maybe a compliance control requires you to keep the data onsite
  4. You prefer a CapEx pricing model.

Reasons to outsource VDI and go with hosted DaaS Solution:

  1. You are a small to medium sized company (5-500 Employees) and don't want to hire or train IT personnel to handle the infrastructure
  2. You are a smaller to team so it will probably save you money to outsource this to a professional DaaS provider.
  3. You just want predictable pricing model. Usually DaaS provider charge per desktop and you can scale up and down easily
  4. You just don't want the headache.
  5. You prefer a OpEx pricing model.

Use Cases and Example for VDI

Although VDI has struggled to take over the traditional desktop completely, VDI is an excellent solution for many organizations. Here are some example of what types of users use VDI in order of the most popular.

Virtual Desktops with GPUs

GPUs stand for Graphic Processing Unit. So What is their role in VDI? One of the challenges in VDI is that the workloads that require better graphical processing may suffer. If you don't need heavy graphical work for example you are just access Microsoft Word or browsing the web, GPUs may not be needed. However if you are often watching YouTube videos, editing graphics using Photoshop or using any CAD applications like Autodesk AutoCAD, Dassault Systèmes SolidWorks, etc, then you will know exactly why a Virtual Desktop without a GPU can be a terrible experience. You will experience bad refreshes, very high latency in rending and refresh rates.

So if you have those workloads, make sure you shop for a solution that has GPUs. Nvidia is one of the most common GPU companies.

How does a GPU help? Well, a GPU is a specialized technology or chip that allows the handling for graphics and rending etc much more efficiently than your CPU or computer processor. Your experience here will be much smoother, graphics will render faster and refreshes will not be noticeable.

What Operating Systems are available for the Virtual Desktops?

Probably the most common OS used as a virtual desktop is Microsoft Windows. Macintosh or Mac computers are never really an option because of the way Apple licenses their OS so its never an option. Apple often ties their OS to ther own hardware so they are no fans of virtualizing the desktop and letting users bypass the purchase of their hardware.

Linux is available as a vritual desktop this could any flavor for linux such as Ubuntu Desktop as well.

Finally

Desktop virtualization using VDI is an alternative technology in delivering desktops for users to work on. With the increased speeds of the Internet and growth in user devices, desktops are becoming a popular options for many companies. Data, management and security are the top benefits of switching to a VDI solution.