Chapter 5

Desktop Virtualization

IN THIS CHAPTER

Bullet Considering the possibility of virtualizing desktops instead of servers

Bullet Looking at two approaches to virtualizing desktops

Bullet Working with VMware’s Horizon View

Bullet Using Citrix XenApp

Virtualization is most often applied to server computers. However, more and more organizations are also applying virtualization to desktops, replacing traditional Windows desktop computers with virtual desktops that are accessed from a nontraditional type of device.

In this chapter, I present a basic overview of desktop virtualization and its benefits and introduce you to some of the technologies that can be used to implement virtual desktop infrastructure (VDI).

Introducing Desktop Virtualization

The term desktop virtualization refers to any software that separates an end-user’s Windows desktop environment from the hardware that the environment runs on. Desktop virtualization is meant to address some of the fundamental weaknesses of the traditional practice of giving each user his or her own Windows workstation.

Here are just a few of the problems that desktop virtualization addresses:

  • Windows workstations must be configured individually for each user. If your organization has 100 workstations and you decide to update your accounting software, you have to figure out how to deploy the update to 100 computers.
  • Windows software frequently needs to be updated. Updates are normally delivered via Windows Update. However, deploying Windows updates separately to all your desktop computers is fraught with peril. A particular Windows update might work well on 99 percent of all computers, which means that if your organization has 100 computers, that update is likely to not work on at least one of them. That means a trip to that computer to diagnose the problem caused by the update and get the user back up and running.
  • If a user’s computer fails, that computer must be replaced. To replace the computer, you’ll need to rebuild the user’s profile, reinstall the user’s applications, and perform other configuration work to restore the user’s desktop environment.
  • Windows computers have a dreaded thing called the C: drive. Any data stored on the C: drive belongs to that computer alone and is not easily backed up to the network. Thus, if the user's C: drive dies, its data is likely to die with it.
  • If a user moves to another desk or office, the user must take her computer with her.
  • If a user wants to work from home, the user can’t easily access her desktop environment from her home computer. There are solutions for this problem, such as remote access software like GoToMyPC (www.gotomypc.com), but those solutions introduce problems of their own.
  • If a user has a laptop computer in addition to a desktop computer, the user must make a special effort to ensure that the data on the desktop computer is synchronized with the data on the laptop.
  • The user may have devices with different platforms than his or her desktop computer. For example, a user might have a Windows computer at work, a MacBook Pro at home, and an Apple iPad for the road. These platforms aren’t compatible with one another, so the user can’t run the same software on all three.

Desktop virtualization addresses all these problems (and more) by moving the user’s desktop environment from a desktop computer to a central host computer. Then the user can access the desktop environment from any device that is compatible with the VDI technology chosen to virtualize the desktop. The advantages of this arrangement are many:

  • If the user’s computer dies, the user’s desktop does not die with it. You can replace the failed computer with any other computer and simply reconnect to the virtual desktop.
  • Operating systems and application software can be centrally managed. There is no need to visit a user’s desk to install or update software.
  • The user’s desktop can be accessed from different types of devices. So, a user can access his or her desktop from a Windows computer, a MacBook, an iPad, an Android table, or even from an iPhone or Android phone.
  • You can use thin clients at users’ desks rather than full-blown Windows computers. A thin client is a small computer that has just enough processing power (CPU, RAM, and disk) to run the client piece of the desktop virtualization platform. Typically, the thin client runs an embedded version of Linux that is specially configured to run the client software that accesses the virtual desktop. In most cases, the end user is not even aware that this is happening — to the user, the experience is identical to having a standard Windows computer at his or her desk.
  • In some desktop virtualization environments, multiple users share a common Windows environment, which means that an application needs to be installed only once for it to be available for multiple users, and operating system patches need to be applied just once rather than to multiple computers.
  • All data is kept on the host computers, which means the data can be centrally managed and backed up.

Considering Two Approaches to Desktop Virtualization

There are at least two distinct approaches to implementing desktop virtualization. The first approach is to simply create a separate virtual machine for each user and provide a way for the users to efficiently connect to their virtual machines. This approach is usually referred to as virtual desktop infrastructure (VDI). VDI solutions are usually built using traditional virtualization products such as Microsoft’s Hyper-V or VMware’s ESXi hypervisor.

The second approach is to use a single server that is designed to support multiple users and provide a way for each user to connect to his or her session on the server. This approach is often called terminal services, because it’s based on the terminal services role that is a standard part of all versions of Windows Server.

Technical Stuff Technically, with Windows Server 2008, Microsoft changed the name of Terminal Services to Remote Desktop Services to emphasize the role of Terminal Services for virtualizing desktops. The IT industry is pretty reluctant to change its phraseology, however, so most IT professionals still call it terminal services even though that term has been obsolete for almost a decade.

The remaining sections of this chapter describe two popular desktop virtualization products that use these two approaches. The first is VMware’s Horizon View, which builds on VMware’s virtualization platform. The second is Citrix XenApp, which builds on Windows Terminal Services.

Looking at VMware’s Horizon View

With VMware’s virtualization infrastructure, you could easily implement desktop virtualization by simply creating virtual machines for each of your users’ desktops and having your users connect to their virtual machines using Remote Desktop Connection (RDC). However, you’ll quickly start to realize some of the limitations of this approach.

First, you’ll probably discover that the RDC client is not very efficient when it comes to intensive graphics applications. Watching YouTube videos over RDC can be frustrating, as can working with graphically oriented programs such as Adobe Photoshop.

You’ll also discover that managing users’ access to virtual desktop machines is difficult with vSphere. vSphere is designed to create and manage virtual servers that are typically accessed only by IT personnel. Access to those servers is controlled through Active Directory credentials; in other words, if you don’t know the password, you can’t log in. But vSphere isn’t really designed to create hundreds of desktop VMs and make them available to hundreds of users.

To address these and other issues, VMware offers a product called VMware Horizon View that builds on the core functions of vSphere and adds features specifically designed for desktop virtualization. Here’s a short list of some of the more important features of Horizon:

  • vSphere Desktop: A version of vSphere specifically designed for running up to tens of thousands of desktop virtual machines
  • vCenter Desktop: A version of vCenter designed specifically for managing virtual resources such as hosts, RAM, processors, and disk storage in a virtual desktop environment
  • Horizon View: A management tool designed to provision and deploy virtual desktops
  • Horizon View Client: Client software for accessing virtual desktops on a variety of platforms, including Windows, Mac, iOS, and Amazon devices
  • Horizon View Composer: A tool for cloning desktop VMs and for managing software and operating system updates on pools of similar desktop VMs

Looking at Citrix XenApp

Citrix XenApp is a desktop virtualization environment that uses Windows Terminal Services to enable multiple users to access remote desktops from a variety of client devices, including Windows, Mac, iOS, and Amazon devices. Unlike VMware’s Horizon View, XenApp does not create a separate virtual machine for each user. Instead, when users connect to XenApp, they log in to separate terminal services sessions on a common Windows Server. The users then have access to all the resources and applications that are available to the Windows Server.

Users connect with XenApp by using a client application called the Citrix Receiver, which can be run on Windows, Mac, iOS, or Android devices. Figure 5-1 shows Citrix Receiver running on a Windows 10 system.

Snapshot of Citrix Receiver.

FIGURE 5-1: Citrix Receiver.

When you configure a XenApp server, you create and publish desktops and applications that users can remotely connect to. Then, when the user connects to the XenApp server, the user is shown the applications that he or she is authorized to use. For example, Figure 5-1 shows a typical Citrix Receiver screen connected to a XenApp server. In this case, the user is authorized to open a desktop and two applications.

If the user connects to a desktop, the user sees an entire Windows desktop environment, complete with a Start menu that grants access to applications, as well as Explorer to browse disk resources. Figure 5-2 shows the Citrix Receiver connected to a desktop.

Snapshot of Connecting to a desktop.

FIGURE 5-2: Connecting to a desktop.

On the other hand, a user can connect to an individual application rather than to a desktop. This feature is called application virtualization. When you connect to an application, that application runs on the server but only that one application’s window is shown on the user’s device. In other words, the user sees the individual application rather than a complete desktop. The user can then use the application as if the application were natively running on his or her device, even if the user’s device is a non-Windows device.

Figure 5-3 shows an example of Microsoft Excel running on an iPhone 6 Plus via Citrix Receiver. As you can see, Citrix Receiver makes the desktop Microsoft Excel application available on my iPhone exactly as it’s available on my Windows desktop. In fact, I could choose File⇒  Open to summon an Open dialog box which would allow me to browse the network to open any file that would be available to me from my Windows desktop. This feature effectively extends my desktop applications to my iPhone.

Snapshot of Viewing Excel on an iPhone.

FIGURE 5-3: Viewing Excel on an iPhone.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.45.153