In this first chapter, we are going to take a look at what virtual desktop infrastructure (VDI) actually is, briefly explain the different technologies for delivering desktops and applications available today, and how they work. We will then focus specifically on the VMware solution, which is Horizon View 6.0, discuss its history and how it compares to other technologies such as server-based computing, before moving on to discuss some of the benefits of deploying VDI.
As we touched on at the start of this chapter, there are different definitions for the solutions that fall under the heading of VDI, depending on the vendor you are working with. For example, in some cases, the term VDI is used when, in fact, the solution is just delivering applications.
The term VDI was actually adopted by VMware and has become the accepted definition for this technology. In the context of a VMware Horizon View VDI solution, this refers to a model whereby the desktop operating system is running as a virtual machine hosted on a hypervisor, which is VMware vSphere (ESXi and vCenter) in this case, and running on the server infrastructure located centrally somewhere in a data center.
Users then connect remotely to their virtual desktop machine over the LAN/WAN/Internet from their chosen endpoint device and from any location. You might also hear this model being referred to as the hosted virtual desktop (HVD) model. This is shown in the following diagram:
From their chosen endpoint device (laptop, Mac, tablet, smart phone, and so on), the user launches a software connection client, which connects them to the infrastructure and authenticates their login credentials, which then delivers their desktop to the network using an optimized delivery protocol. They can also use a hardware client for this, and we will cover this later in the Horizon View Clients section in Chapter 2, Horizon View 6.0 Architectural and Feature Overview. The connection can be performed using browser-based access, which we will cover in Chapter 8, Horizon View Clients.
The key idea and a point to remember in a VDI solution is that, the data never leaves the data center. It's just the pixels from the virtual desktop's display that get sent over the network, and the keyboard strokes and mouse movements from the endpoint device that are redirected back to the virtual desktop machine. It's like having a very long remote control for your desktop or a very long set of cables!
If we look at the virtual desktop machine and its basic architecture, it is subtly different when compared to a physical desktop PC and how a desktop is built and delivered. In a physical model, a user "owns" the desktop, as it's sitting on their desk. They use the same machine every day. In a VDI environment, desktops are not necessarily owned by the user and are delivered in a manner that reduces the complexity and infrastructure requirements, instead.
In a typical VDI deployment, the desktops will be part of a pool of virtual machines that are ready for a user to consume. Each desktop starts life with exactly the same image (like having a new machine) with no user personalization or customization, as the user does not own that desktop. As they log in, they are allocated a desktop from a pool that assumes their profile and becomes their desktop for that particular session. When they log off, the desktop returns to the pool ready for the next user. This means that a virtual desktop is built differently from its physical counterpart.
In terms of how the desktop is built, each virtual desktop machine is effectively assembled using its component parts, operating system, user profile, and then, applications. We often hear this being referred to as the composite desktop model, and this is shown in the following diagram:
You might also find that the hardware specification of the virtual desktop machine can differ from a physical PC. As the virtual desktop machine is running on a hypervisor, you can monitor the resources it consumes more closely, allowing you to potentially lower the hardware specification. For example, some of the memory-sharing technologies found in the hypervisor can allow you to reduce the amount of memory you need for configuration.
These are just some of the high-level differences, and we will cover some of the deeper differences when we build our virtual desktop machine in Chapter 6, Building and Optimizing Virtual Desktop Machine OS Images, where we will look at how the operating system configuration differs from a physical PC.
At the beginning of this chapter, we mentioned that there are other technologies that are available for delivering virtual desktops and applications to deliver the end user experience. We will discuss this in the next section, starting with server-based computing.
SBC has been around for quite a long time, and you can actually trace it back as far as the 1950s to mainframe computing. Mainframes were designed to deliver centralized compute power to run applications, with users connecting to the applications using a "green screen" terminal.
Today's SBC model doesn't really change this, but it now offers the ability to connect to either applications or an operating system. We will cover each of these and how they work in the next sections, starting with traditional published application delivery.
So, the first option with SBC is to just deliver an individual application to a user. This is often referred to as publishing an application. The architecture of how this works is shown in the following diagram:
With SBC, rather than connecting to a full-desktop operating system running as a virtual desktop machine, you are now connecting to an application. The application is running on a server; however, it is running in a separate, protected session for each individual user that is connected, which means that a single server can host multiple sessions of the same application for multiple users. The server hosting the application sessions runs a multiuser operating system, and a user would connect to a session using a terminal or thin client. This is why SBC is often referred to as thin client computing. SBC has evolved from the mainframe days, and now you can run a desktop operating system as a hosted session, as we will describe in the next section.
Sometimes, there is a requirement to have a full-desktop experience rather than just having individual applications delivered to the end user. Similar to application publishing, with SBC, you can publish a desktop operating system as a session, as shown in the following diagram:
In this model, you are running a desktop operating system rather than an application. The OS runs as a separated, protected session. This is where the differences lie between desktops delivered by SBC and those delivered by VDI.
With VDI, you have a fully functional desktop operating system, on which you can customize, personalize, and install your own applications; whereas with SBC, you are either running just an application session or sharing a desktop environment by having your own session rather than a full desktop.
You also need to bear in mind that in an SBC environment, the desktop session isn't actually running as a true desktop operating system; it is, in fact, running a session of the host servers' operating system, which is made to look like a desktop operating system.
So, the question posed in the title of this section is which technology should I choose between VDI, published applications, or perhaps desktop sessions?
There are advantages and disadvantages to all of the above technologies, and ultimately, it will come down to your specific use cases. We will discuss some of the use cases in Chapter 3, Designing and Building a Horizon View 6.0 Infrastructure.
In most scenarios, it is likely that you will employ a hybrid approach and have a mixed environment of the different technologies. For example, developers might need a full desktop on which they can install applications, so VDI would be suitable for them, whereas a call center operator who only uses one or two applications is more suited to a published application solution.
Horizon View 6.0 can deliver all of these technologies, allowing you to deploy a single platform to manage and deliver the end user experience, no matter what the use case is. In this section, we are just going to cover the VDI elements of Horizon View 6.0, and in the next section, we will highlight some of the benefits of deploying VDI.
With VMware Horizon View 6.0 delivering virtual desktops, you transform your desktop environment into a centrally managed service, enhancing the end user experience and productivity at the same time. At a higher level, Horizon View 6.0 delivers the following:
Centralized management: Centralizing your desktops as virtual machines not only gives you a central and single point of management, but it also allows for easier operating system or application updates as well as faster deployment of desktop resources.
Flexibility and scalability: This allows you to scale resources up and down quickly as per your business demands, taking into consideration peaks and troughs for seasonal or contract/project-based workers.
Mobility and Bring-your-own-device (BYOD): This also fits into the flexibility category, but this time allows end users to use devices that suit their needs plus they have the ability to work from anywhere. This also means that organizations don't have the expense of providing employees with hardware, and having to support that hardware.
Operational cost savings (OPEX): One of the things we hear all the time is that deploying VDI will reduce costs. While that is true, let's be clear that we are talking about operational costs that would potentially be reduced, but sometimes, the capital costs (CAPEX) at the beginning of a VDI project might be higher as you roll out the infrastructure. However, the overall costs over a period of time will reduce through savings in the management of the solution and the fact that you would not be caught in the typical three-year PC refresh cycle trap.
Now that we have talked about what VDI in VMware Horizon View terms is and the differences with SBC, in the next section, we are going to focus on the VMware VDI solution, Horizon View, and take a brief history lesson that covers the background story of where VMware and its VDI story began.
VDI for VMware started back in 2002, when customers of the ESX solution started to virtualize their desktop machines as they had been doing with their server operating systems. There wasn't a specific product or solution at the time and certainly no connection broker or any of the functionality that we see today. All a user had to do was connect to a remote virtual desktop using RDP. That was about as scientific as it got!
It wasn't until 2005 that VMware socialized the idea of having a connection broker for better management of the desktop allocation by demonstrating a prototype at VMworld that year. A company called Propero also showed their version of a connection broker at the same event, and as a result, VDI became more high profile and gained more traction in the market.
Move the clock forward by 2 years to 2007 and you will see that the prototype connection broker was introduced to customers before being given to the product organization to productize it and turn it into a released shipping product called Virtual Desktop Manager (VDM) 1.0. This year also saw VMware acquire Propero for $25 million in order to accelerate the connection broker development, leading to the VMworld announcement of VDM 2.0, which was released in January, 2008.
After the release of VDM 2.0 in early 2008, a second release came at the end of the year, along with a new name. VMware View had arrived! This year also saw Citrix enter the VDI market with XenDesktop.
In 2010, View 4.5 was released with new features, such as the local mode for delivering offline desktops, PCoIP enhancements, Windows 7 support, and the ability to tier storage. This was also the year that VMware talked publically about the biggest VDI reference case to date with Bank of Tokyo Mitsubishi.
In 2011, the following year, View 4.6 was released with two new notable features. The first was the iPad client, which allowed a user to connect to their virtual desktop session on an iPad using the PCoIP protocol. The second new feature was the PCoIP Secure Gateway function for the security server, which allowed users to connect to their virtual desktop without needing a VPN connection.
Later on in the same year, View 5.0 was released with some more new features aimed around the user experience, the key one being the introduction of Persona Management, which allowed a user's profile to be independent from the virtual desktop. View 5.0 also introduced 3D graphics support using the latest vSphere 5.0 platform as well as some major overhauls in the PCoIP protocol.
Although it had only a point release in May 2012, View 5.1 had a number of significant enhancements, especially around storage, with the introduction of the View Storage Accelerator, View Composer Array Integration, and the ability to scale the hosting infrastructure up to a 32-node cluster when using the NFS storage. This version also added RADIUS two-factor authentication, improved the USB device support, standalone View Composer, the ability to support profile migration from XP to Windows 7, and physical desktops with Persona Management.
In March 2013, VMware View 5.2 was released, and to bring it in line with VMware's Horizon branding (launched at the same time), it was renamed Horizon View 5.2. In this release, there were a number of new features based on the user experience, such as support for unified communications with Microsoft Lync 2013, hardware-accelerated graphics with Virtual Shared Graphics Acceleration (vSGA), and the Windows 8 support. One of the biggest updates came in the form of feature packs, which allowed a user to access their desktop in an HTML 5 browser using the VMware Blast protocol. This feature pack also included the ability to use USB webcams with Real-Time Audio-Video (RTAV).
A second release later in 2013 with Horizon View 5.3 saw the introduction of virtual dedicated graphics acceleration (vDGA), which allowed a virtual desktop to have dedicated access to a GPU in the host. This was also the first release that supported Windows Server 2008 R2 as the virtual desktop machine, which means that you can "skin" the operating system to look like a desktop. Finally, the Horizon Mirage support was added to manage full-clone desktops.
That brings us nicely up to date—VMware Horizon 6—and a new approach to delivering a fully integrated platform with some new Horizon editions.
The timeline is shown pictorially in the following diagram:
In the next section, we will cover VMware Horizon 6 and the features in each of the different editions in a bit more detail.
In VMware Horizon 6, we have the latest solution in VMware's end user computing (EUC) vision and strategy for what they describe as one login, one experience, and any device. This basically means that for a user, they just need their network password to log in from any device they choose, and once logged in, the look and feel will be consistent across all endpoint devices they use.
We talked earlier about the differences between VDI and SBC and an example use case for application publishing versus VDI versus desktop sessions, and came to the conclusion that a hybrid solution would be the logical way forward. Typically, this would mean that you will need several different product solutions to achieve this; however, with Horizon 6, you can deliver all of this and more, with the ability to deliver VDI, published apps, and session-based desktops—all from a single platform.
Combine this with the other functionalities—such as application virtualization, centralized image management, and automation functionality—and Horizon 6 becomes a compelling solution for delivering all your end user computing needs.
This book is going to focus on the Horizon View 6.0 product and, specifically, how to design, configure, and install the various components for delivering virtual desktops as a centralized service. We will take you on a journey from the initial planning stages right through to the installation, configuration, and optimization.
In the next section, we will cover the different product editions for Horizon 6.
As we touched on in the previous section, there are a number of different components that make up the Horizon 6 portfolio, and these features are divided into three different Horizon editions—Standard, Advanced, and Enterprise editions—each building on the functionality of the previous edition.
In the next section, we will take a walk-through of each of the available editions.
Horizon View Standard Edition delivers the core VDI solution and all of its associated features, including the licensing for vSphere and vCenter for desktop. Also included is ThinApp, VMware's application virtualization and packaging solution, which allows you to abstract applications from the underlying operating system and deliver them independent of the OS. You can read more about ThinApp in VMware ThinApp 4.7 Essentials, Peter Björk, Packt Publishing.
This is the first edition that includes the application publishing feature that is integrated into Horizon View 6. It allows an application running on a Microsoft RDSH server to be published via the VMware View client using the PCoIP protocol. You can also publish desktop sessions in the same way. For a user, this means that they can access all three delivery methods from one place.
Image management is delivered using VMware Mirage with the ability to manage persistent View desktops and also deliver offline desktops to a Mac or Windows laptop. For a detailed overview of VMware Mirage, you can read VMware Horizon Mirage Essentials, Peter von Oven, Packt Publishing.
In keeping with the theme of consistent access from one place using any device, Advanced Edition includes the Horizon Workspace Portal solution. Horizon Workspace gives an end user their own virtual workspace, which is accessible via a single URL from any device with a compatible browser. Being context-aware, only the applications appropriate for that device and location are shown on the workspace, based on the user's entitlements. Users can also select applications from a central catalog of entitled applications.
Horizon Workspace is sometimes referred to as a universal services broker or the switchboard of the solution. This is because it's the central place you go to in order to access the tools you need, whether that's just an application or a virtual desktop. As it's a universal broker, it's not just about delivering the VMware technology. It allows for the brokering of ThinApp packages, SaaS-based cloud applications, XenApp-published applications, and Microsoft Office 365.
The final edition is Horizon Enterprise Edition, which builds on the previous two versions and adds features that deliver the operational management and automation functionality. This includes products such as vCenter Operations for View, which delivers capacity planning, health monitoring, and proactive troubleshooting features.
The final component is vCenter Orchestrator with the desktop plugin, which allows you to build desktop workflows for automated provisioning.
The following diagram details the features available in each edition:
In this chapter, we discussed what VDI actually is and the different options for delivering the end user experience, compared VDI with desktop and application publishing, and how each solution works. We then wound the clock back to 2002 and looked at the history of where VDI began for VMware.
The final sections covered the latest VMware Horizon 6.0 release and the three different editions—Horizon View Standard, Horizon Advanced, and Horizon Enterprise—and what's included in each edition.
In the next chapter, we are going to start drilling down into the technology a little deeper and look at how some of the technology features included with Horizon View fit together in the overall view and how they work.