View 46 Architecture Planning
View 46 Architecture Planning
View 46 Architecture Planning
This document supports the version of each product listed and supports all subsequent versions until the document is replaced by a new edition. To check for more recent editions of this document, see http://www.vmware.com/support/pubs.
EN-000524-01
You can find the most up-to-date technical documentation on the VMware Web site at: http://www.vmware.com/support/ The VMware Web site also provides the latest product updates. If you have comments about this documentation, submit your feedback to: [email protected]
Copyright 20092011 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.
VMware, Inc.
Contents
Advantages of Using VMware View 7 VMware View Features 9 How the VMware View Components Fit Together 9 Integrating and Customizing VMware View 13
Feature Support Matrix 15 Choosing a Display Protocol 17 Benefits of Using View Desktops in Local Mode 18 Accessing USB Devices Connected to a Local Computer 20 Printing from a View Desktop 20 Streaming Multimedia to a View Desktop 21 Using Single Sign-On for Logging In to a View Desktop 21 Using Multiple Monitors with a View Desktop 21
Advantages of Desktop Pools 23 Reducing and Managing Storage Requirements 24 Application Provisioning 25 Using Active Directory GPOs to Manage Users and Desktops 27
Virtual Machine Requirements 29 VMware View ESX/ESXi Node 34 Desktop Pools for Specific Types of Workers 35 Desktop Virtual Machine Configuration 38 vCenter and View Composer Virtual Machine Configuration and Desktop Pool Maximums 40 View Connection Server Maximums and Virtual Machine Configuration 40 View Transfer Server Virtual Machine Configuration and Storage 41 vSphere Clusters 42 VMware View Building Blocks 43 VMware View Pod 46
Understanding Client Connections 49 Choosing a User Authentication Method 52 Restricting View Desktop Access 55 Using Group Policy Settings to Secure View Desktops
56
VMware, Inc.
Implementing Best Practices to Secure Client Systems 56 Assigning Administrator Roles 56 Preparing to Use a Security Server 57 Understanding VMware View Communications Protocols 61
VMware, Inc.
VMware View Architecture Planning provides an introduction to VMware View, including a description of its major features and deployment options and an overview of how VMware View components are typically set up in a production environment. This guide answers the following questions:
n n
Does VMware View solve the problems you need it to solve? Would it be feasible and cost-effective to implement a VMware View solution in your enterprise?
To help you protect your VMware View installation, the guide also provides a discussion of security features.
Intended Audience
This information is intended for IT decision makers, architects, administrators, and others who need to familiarize themselves with the components and capabilities of VMware View. With this information, architects and planners can determine whether VMware View satisfies the requirements of their enterprise for efficiently and securely delivering Windows desktops and applications to their end users. The example architecture helps planners understand the hardware requirements and setup effort required for a large-scale VMware View deployment.
VMware, Inc.
VMware, Inc.
With VMware View, IT departments can run virtual desktops in the datacenter and deliver desktops to employees as a managed service. End users gain a familiar, personalized environment that they can access from any number of devices anywhere throughout the enterprise or from home. Administrators gain centralized control, efficiency, and security by having desktop data in the datacenter. This chapter includes the following topics:
n n n n
Advantages of Using VMware View, on page 7 VMware View Features, on page 9 How the VMware View Components Fit Together, on page 9 Integrating and Customizing VMware View, on page 13
Access to data can easily be restricted. Sensitive data can be prevented from being copied onto a remote employee's home computer. Data backups can be scheduled without considering when end users' systems might be turned off. Virtual desktops that are hosted in a datacenter experience little or no downtime. Virtual machines can reside on high-availability clusters of VMware servers.
n n
Virtual desktops can also connect to back-end physical systems and Windows Terminal Services servers.
Convenience
The unified management console is built for scalability on Adobe Flex, so that even the largest View deployments can be efficiently managed from a single View Manager interface. Wizards and dashboards enhance the workflow and facilitate drilling down to see details or change settings. Figure 1-1 provides an example of the browser-based user interface for View Administrator.
VMware, Inc.
Figure 1-1. Administrative Console for View Manager Showing the Dashboard View
Another feature that increases convenience is the VMware remote display protocol PCoIP. PCoIP (PC-overIP) display protocol delivers an end-user experience equal to the current experience of using a physical PC:
n n
On LANs, the display is faster and smoother than traditional remote displays. On WANs, the display protocol can compensate for an increase in latency or a reduction in bandwidth, ensuring that end users can remain productive regardless of network conditions.
Manageability
Provisioning desktops for end users is a quick process. No one is required to install applications one by one on each end user's physical PC. End users connect to a virtual desktop complete with applications. End users can access their same virtual desktop from various devices at various locations. Using VMware vSphere to host virtual desktops provides the following benefits:
n
Administration tasks and management chores are reduced. Administrators can patch and upgrade applications and operating systems without touching a user's physical PC. Storage management is simplified. Using VMware vSphere, you can virtualize volumes and file systems to avoid managing separate storage devices.
Hardware Independence
Virtual machines are hardware-independent. Because a View desktop runs on a server in the datacenter and is only accessed from a client device, a View desktop can use operating systems that might not be compatible with the hardware of the client device. For example, although Windows Vista can run only on Vista-enabled PCs, you can install Windows Vista in a virtual machine and use that virtual machine on a PC that is not Vista-enabled. Virtual desktops run on PCs, Macs, thin clients, and PCs that have been repurposed as thin clients.
VMware, Inc.
Print from a virtual desktop to any local or networked printer that is defined on the client device, or use the location-based printing feature to map to printers that are physically near the client system. The virtual printer feature solves compatibility issues and does not require you to install additional print drivers in a virtual machine. Use multiple monitors. With PCoIP multiple-monitor support, you can adjust the display resolution and rotation separately for each monitor. Access USB devices and other peripherals that are connected to the local device that displays your virtual desktop.
Use RSA SecurID two-factor authentication or smart cards to log in. Use SSL tunneling to ensure that all connections are completely encrypted. Use VMware High Availability to host desktops and to ensure automatic failover.
Use Microsoft Active Directory to manage access to virtual desktops and to manage policies. Use the Web-based administrative console to manage virtual desktops from any location. Use a template, or master image, to quickly create and provision pools of desktops. Send updates and patches to virtual desktops without affecting user settings, data, or preferences.
Scalability features depend on the VMware virtualization platform to manage both desktops and servers:
n
Integrate with VMware vSphere to achieve cost-effective densities, high levels of availability, and advanced resource allocation control for your virtual desktops. Configure View Connection Server to broker connections between end users and the virtual desktops that they are authorized to access. Use View Composer to quickly create desktop images that share virtual disks with a master image. Using linked clones in this way conserves disk space and simplifies the management of patches and updates to the operating system.
VMware, Inc.
network
non-vCenter VMs
physical PCs
blade PCs View Agent Terminal Servers virtual desktops VM desktop OS app app app VM VM VM ESX host View Agent virtual machine VM VM ESX hosts running Virtual Desktop virtual machines
Client Devices
A major advantage of using VMware View is that desktops follow the end user regardless of device or location. Users can access their personalized virtual desktop from a company laptop, their home PC, a thin client device, or a Mac or iPad. From the iPad and from Mac and Windows laptops and PCs, end users open View Client to display their View desktop. Thin client devices use View thin client software and can be configured so that the only application that users can launch directly on the device is View Thin Client. Repurposing a legacy PC into a thin client desktop can extend the life of the hardware by three to five years. For example, by using VMware View on a thin desktop, you can use a newer operating system such as Windows Vista on older desktop hardware.
10
VMware, Inc.
n n n n n
Assigning applications packaged with VMware ThinApp to specific desktops and pools Managing local and remote desktop sessions Establishing secure connections between users and desktops Enabling single sign-on Setting and applying policies
Inside the corporate firewall, you install and configure a group of two or more View Connection Server instances. Their configuration data is stored in an embedded LDAP directory and is replicated among members of the group. Outside the corporate firewall, in the DMZ, you can install and configure View Connection Server as a security server. Security servers in the DMZ communicate with View Connection Servers inside the corporate firewall. Security servers ensure that the only remote desktop traffic that can enter the corporate data center is traffic on behalf of a strongly authenticated user. Users can access only the desktop resources that they are authorized to access. Security servers offer a subset of functionality and are not required to be in an Active Directory domain. You install View Connection Server in a Windows Server 2008 server, preferably on a VMware virtual machine.
View Client
The client software for accessing View desktops runs either on an iPad or Windows or Mac PC as a native application or on a thin client if you have View Client for Linux. After logging in, users select from a list of virtual desktops that they are authorized to use. Authorization can require Active Directory credentials, a UPN, a smart card PIN, or an RSA SecurID token. An administrator can configure View Client to allow end users to select a display protocol. Protocols include PCoIP, Microsoft RDP, and HP RGS for View desktops that are hosted on HP Blades. The speed and display quality of PCoIP rival that of a physical PC. View Client with Local Mode (formerly called Offline Desktop) is a version of View Client that has been extended to allow end users to download virtual machines and use them on their local systems regardless of whether they have a network connection. Features differ according to which View Client you use. This guide focuses on View Client for Windows and View Client for Mac. The following types of clients are not described in detail in this guide:
n n n n
Details about View Client for iPad. See Using VMware View Client for iPad. View Client for Linux, available only through certified partners. Various third-party clients, available only through certified partners. View Open Client, which supports the VMware partner certification program. View Open Client is not an official View client and is not supported as such.
View Portal
From a Windows PC or laptop, end users can open a Web browser and use View Portal to download, install, update, and start the Windows-based View Client. As of View 4.5, View Portal installs the full View Client for Windows, with or without Local Mode. To use View Portal, end users open an Internet Explorer browser and enter the URL of a View Connection Server instance. View Portal provides a link for downloading the installer for the full View Client for Windows.
VMware, Inc.
11
View Agent
You install the View Agent service on all virtual machines, physical systems, and Terminal Service servers that you use as sources for View desktops. This agent communicates with View Client to provide features such as connection monitoring, virtual printing, and access to locally connected USB devices. If the desktop source is a virtual machine, you first install the View Agent service on that virtual machine and then use the virtual machine as a template or as a parent of linked clones. When you create a pool from this virtual machine, the agent is automatically installed on every virtual desktop. You can install the agent with an option for single sign-on. With single sign-on, users are prompted to log in only when they connect to View Connection Server and are not prompted a second time to connect to a virtual desktop.
View Administrator
This Web-based application allows administrators to configure View Connection Server, deploy and manage View desktops, control user authentication, and troubleshoot end user issues. When you install a View Connection Server instance, the View Administrator application is also installed. This application allows administrators to manage View Connection Server instances from anywhere without having to install an application on their local computer.
View Composer
You install this software service on a vCenter Server instance that manages virtual machines. View Composer can then create a pool of linked clones from a specified parent virtual machine. This strategy reduces storage costs by up to 90 percent. Each linked clone acts like an independent desktop, with a unique host name and IP address, yet the linked clone requires significantly less storage because it shares a base image with the parent. Because linked-clone desktop pools share a base image, you can quickly deploy updates and patches by updating only the parent virtual machine. End users' settings, data, and applications are not affected. As of View 4.5, you can also use linked-clone technology for View desktops that you download and check out to use on local systems.
vCenter Server
This service acts as a central administrator for VMware ESX/ESXi servers that are connected on a network. vCenter Server, formerly called VMware VirtualCenter, provides the central point for configuring, provisioning, and managing virtual machines in the datacenter. In addition to using these virtual machines as sources for View desktop pools, you can use virtual machines to host the server components of VMware View, including Connection Server instances, Active Directory servers, and vCenter Server instances. You can install View Composer on the same server as vCenter Server to create linked-clone desktop pools. vCenter Server then manages the assignment of the virtual machines to physical servers and storage and manages the assignment of CPU and memory resources to virtual machines. You install vCenter Server in a Windows Server 2003 or 2008 server, preferably on a VMware virtual machine.
12
VMware, Inc.
When a user checks in or checks out a desktop, View Manager authorizes and manages the operation. View Transfer Server transfers the files between the datacenter and the local desktop. View Transfer Server synchronizes local desktops with the corresponding desktops in the datacenter by replicating user-generated changes to the datacenter. Replications occur at intervals that you specify in local-mode policies. You can also initiate replications in View Administrator. You can set a policy that allows users to initiate replications from their local desktops.
View Transfer Server distributes common system data from the datacenter to local clients. View Transfer Server downloads View Composer base images from the Transfer Server repository to local desktops.
End-user actions such as logging in and starting a desktop session. Administrator actions such as adding entitlements and creating desktop pools. Alerts that report system failures and errors. Statistical sampling such as recording the maximum number of users over a 24-hour period.
You can use business intelligence reporting engines such as Crystal Reports, IBM Cognos, MicroStrategy 9, and Oracle Enterprise Performance Management System to access and analyze the event database. For more information, see the VMware View Integration document.
Create and update desktop pools. Add datacenter resources to a full virtual machine or linked-clone pool. Perform rebalance, refresh, or recompose operations on linked-clone desktops. Sample the usage of specific desktops or desktop pools over time.
VMware, Inc.
13
n n
You can use the cmdlets in conjunction with the vSphere PowerCLI cmdlets, which provide an administrative interface to the VMware vSphere product. For more information, see the VMware View Integration document.
Transfer configuration data between View Connection Server instances. Define a large number of View objects, such as desktop pools, and add these to your View Connection Server instances without using View Administrator or View PowerCLI. Back up your View configuration so that you can restore the state of a View Connection Server instance.
14
VMware, Inc.
VMware View provides the familiar, personalized desktop environment that end users expect. End users can access USB and other devices connected to their local computer, send documents to any printer that their local computer can detect, authenticate with smart cards, and use multiple display monitors. VMware View includes many features that you might want to make available to your end users. Before you decide which features to use, you must understand the limitations and restrictions of each feature. This chapter includes the following topics:
n n n n n n n n
Feature Support Matrix, on page 15 Choosing a Display Protocol, on page 17 Benefits of Using View Desktops in Local Mode, on page 18 Accessing USB Devices Connected to a Local Computer, on page 20 Printing from a View Desktop, on page 20 Streaming Multimedia to a View Desktop, on page 21 Using Single Sign-On for Logging In to a View Desktop, on page 21 Using Multiple Monitors with a View Desktop, on page 21
VMware, Inc.
15
Table 2-1. Features Supported on Operating Systems for View Desktops (Where View Agent Is Installed)
Windows XP Home/Pro SP3, 32-bit X X X X X X X X X X X Windows 2003/2003 R2 Terminal Server SP2, 32-bit Windows 2008 SP2/2008 R2 Terminal Server 64bit
Feature USB access RDP display protocol PCoIP display protocol HP RGS display protocol Wyse MMR Virtual printing Smart cards RSA SecurID Single sign-on Multiple monitors Local Mode
16
VMware, Inc.
In addition, several VMware partners offer thin client devices for VMware View deployments. The features that are available for each thin client device are determined by the vendor and model and the configuration that an enterprise chooses to use. For information about the vendors and models for thin client devices, see the Thin Client Compatibility Guide, available on the VMware Web site. NOTE For information about which features are supported on the iPad, see Using VMware View Client for iPad.
You can use up to 4 monitors and adjust the resolution for each monitor separately, up to 2560 x 1600 resolution per display. You can copy and paste text between the local system and the View desktop, but you cannot copy and paste system objects such as folders and files between systems. PCoIP supports 32-bit color. PCoIP supports 128-bit encryption. PCoIP supports Advanced Encryption Standard (AES) encryption, which is turned on by default. For users outside the corporate firewall, you can use this protocol with your company's virtual private network or with View security servers.
n n n n
VMware, Inc.
17
Microsoft RDP
Remote Desktop Protocol is the same protocol many people already use to access their work computer from their home computer. RDP provides access to all the applications, files, and network resources on a remote computer. Microsoft RDP provides the following features:
n n
You can use multiple monitors in span mode. You can copy and paste text between the local system and the View desktop, but you cannot copy and paste system objects such as folders and files between systems. You can configure the amount of bandwidth used by Adobe Flash content to improve the overall Web browsing experience and make other applications more responsive. RDP supports 32-bit color. RDP supports 128-bit encryption. You can use this protocol for making secure, encrypted connections to a View security server in the corporate DMZ.
n n n
HP RGS Protocol
RGS is a display protocol from HP that allows users to access the desktop of a remote physical computer over a standard network. You can use HP RGS as the display protocol when connecting HP Blade PCs, HP Workstations, and HP Blade Workstations. Connections to virtual machines that run on VMware ESX/ESXi hosts are not supported. HP RGS provides the following features:
n n
You can use multiple monitors in span mode. You can configure the amount of bandwidth used by Adobe Flash content to improve the overall Web browsing experience and make other applications more responsive.
VMware does not bundle or license HP RGS with VMware View. Contact HP to license a copy of HP RGS version 5.2.5 to use with VMware View. For information about how to install and configure HP RGS components, see the HP RGS documentation available at http://www.hp.com.
18
VMware, Inc.
View desktops in local mode behave in the same way as their remote desktop equivalents, yet can take advantage of local resources. Latency is eliminated, and performance is enhanced. Users can disconnect from their local View desktop and log in again without connecting to the View Connection Server. After network access is restored, or when the user is ready, the checked-out virtual machine can be backed up, rolled back, or checked in. Local resource utilization After a local desktop is checked out, it can take advantage of the memory and CPU capabilities of the local system. For example, memory available beyond what is required for the host and guest operating systems is usually split between the host and the local View desktop, regardless of the memory settings that are specified for the virtual machine in vCenter Server. Similarly, the local View desktop can automatically use up to two CPUs available on the local system, and you can configure the local desktop to use up to four CPUs. Although a local desktop can take advantage of local resources, a Windows 7 or Windows Vista View desktop that is created on an ESX/ESXi 3.5 host cannot produce 3-D and Windows Aero effects. This limitation applies even when the desktop is checked out for local use on a Windows 7 or Windows Vista host. Windows Aero and 3-D effects are available only if the View desktop is created using vSphere 4.x. Conserving datacenter resources by requiring local mode Check-outs You can reduce datacenter costs associated with bandwidth, memory, and CPU resources by requiring that View desktops be downloaded and used only in local mode. This strategy is sometimes called a bring-your-own-PC program for employees and contractors. When the View desktop is checked out, a snapshot is taken in vCenter, to preserve the state of the virtual machine. The vCenter Server version of the desktop is locked so that no other users can access it. When a View desktop is locked, vCenter Server operations are disabled, including operations such as powering on the online desktop, taking snapshots, and editing the virtual machine settings. View administrators can, however, still monitor the local session and access the vCenter Server version to remove access or roll back the desktop. During backups, a snapshot is taken on the client system, to preserve the state of the checked-out virtual machine. The delta between this snapshot and the snapshot in vCenter is replicated to vCenter and merged with the snapshot there. The View desktop in vCenter Server is updated with all new data and configurations, but the local desktop remains checked out on the local system and the lock remains in place in vCenter Server. During rollbacks, the local View desktop is discarded and the lock is released in vCenter Server. Future client connections are directed to the View desktop in vCenter Server until the desktop is checked out again. When a View desktop is checked in, a snapshot is taken on the client system, to preserve the state of the virtual machine. The delta between this snapshot and the snapshot in vCenter is replicated to vCenter and merged with the snapshot there. The virtual machine in vCenter Server is unlocked. Future client connections are directed to the View desktop in vCenter Server until the desktop is checked out again.
Backups
Rollbacks
Check-ins
VMware, Inc.
19
The data on each local system is encrypted with AES. 128-bit encryption is the default, but you can configure 192-bit or 256-bit encryption. The desktop has a lifetime controlled through policy. If the client loses contact with View Connection Server, the maximum time without server contact is the period in which the user can continue to use the desktop before the user is refused access. Similarly, if user access is removed, the client system becomes inaccessible when the cache expires or after the client detects this change through View Connection Server. View Client with Local Mode has the following limitations and restrictions:
n n n n n n
You must have a View license that includes the Local Mode component. End users cannot access their local desktop while rollbacks and check-ins are taking place. This feature is available only for virtual machines that are managed by vCenter Server. Assigning application packages created with VMware ThinApp is not supported on local desktops. For security reasons, you cannot access the host CD-ROM from within the View desktop. Also for security reasons, you cannot copy and paste text or system objects such as files and folders between the local system and the View desktop.
When you access a USB device from a menu in View Client and use the device in a View desktop, you cannot access the device on the local computer. USB redirection is not supported on Windows 2000 systems or for View desktops sourced from Microsoft Terminal Servers.
20
VMware, Inc.
For best quality, use Windows Media Player 10 or later, and install it on both the local computer, or client access device, and the View desktop. The Wyse MMR port, which is 9427 by default, must be added as a firewall exception in the View desktop. MMR is not supported on Windows 7 clients or virtual desktops. Although MMR is not supported on Windows 7 virtual desktops, if the Windows 7 desktop has 1GB of RAM and 2 virtual CPUs, you can use PCoIP to play 480p- and 720p-formatted videos at native resolutions. For 1080p, you might need to make the window smaller than full screen size.
n n
The maximum number of monitors that you can use to display a View desktop is 10 if you use the RDP display protocol and 4 if you use PCoIP. If you use Microsoft RDP display protocol, you must have Microsoft Remote Desktop Connection (RDC) 6.0 or higher installed in the View desktop. If you use a View desktop in local mode, no remote display protocol is used. You can use multiple monitors in span mode.
VMware, Inc.
21
22
VMware, Inc.
You can create pools that include one or hundreds of virtual desktops. As a desktop source, you can use virtual machines, physical machines, and Windows Terminal Services servers. Create one virtual machine as a base image, and VMware View can generate a pool of virtual desktops from that image. You can easily install or stream applications to pools with VMware ThinApp. This chapter includes the following topics:
n n n n
Advantages of Desktop Pools, on page 23 Reducing and Managing Storage Requirements, on page 24 Application Provisioning, on page 25 Using Active Directory GPOs to Manage Users and Desktops, on page 27
A physical system such as a physical desktop PC or a Windows Terminal Services server A virtual machine that is hosted on an ESX/ESXi host and managed by vCenter Server A virtual machine that runs on VMware Server or some other virtualization platform that supports View Agent
If you use a vSphere virtual machine as a desktop source, you can automate the process of making as many identical virtual desktops as you need. You can set a minimum and maximum number of virtual desktops to be generated for the pool. Setting these parameters ensures that you always have enough View desktops available for immediate use but not so many that you overuse available resources. Using pools to manage desktops allows you to apply settings or deploy applications to all virtual desktops in a pool. The following examples show some of the settings available:
n
Specify which remote display protocol to use as the default for the View desktop and whether to let end users override the default. Configure the display quality and bandwidth throttling of Adobe Flash animations. If using a virtual machine, specify whether to power off the virtual machine when it is not in use and whether to delete it altogether.
n n
VMware, Inc.
23
If using vSphere 4.1, specify whether to use a Microsoft Sysprep customization specification or QuickPrep from VMware. Sysprep generates a unique SID and GUID for each virtual machine in the pool. Specify whether the View desktop can or must be downloaded and run on a local client system.
In addition, using desktop pools provides many conveniences. Dedicated-assignment pools Floating-assignment pools Each user is assigned a particular View desktop and returns to the same virtual desktop at each login. Users can personalize their desktops, install applications, and store data. The virtual desktop is optionally deleted and re-created after each use, offering a highly controlled environment. A floating-assignment desktop is like a computer lab or kiosk environment where each desktop is loaded with the necessary applications and all desktops have access to necessary data. Using floating-assignment pools also allows you to create a pool of desktops that can be used by shifts of users. For example, a pool of 100 desktops could be used by 300 users if they worked in shifts of 100 users at a time.
Managing Storage with vSphere on page 24 VMware vSphere lets you virtualize disk volumes and file systems so that you can manage and configure storage without having to consider where the data is physically stored.
Reducing Storage Requirements with View Composer on page 25 Because View Composer creates desktop images that share virtual disks with a base image, you can reduce the required storage capacity by 50 to 90 percent.
vStorage thin provisioning, which lets you start out with as little disk space as necessary and grow the disk to add space later Tiered storage, which allows you to distribute virtual disks in the View environment across highperformance storage and lower-cost storage tiers, to maximize performance and cost savings Local storage on the ESX/ESXi host for the virtual machine swap files in the guest operating system
24
VMware, Inc.
Application Provisioning
With VMware View, you have several options regarding application provisioning: You can use traditional application provisioning techniques, you can distribute application packages created with VMware ThinApp, or you can deploy applications as part of a View Composer base image.
n
Deploying Applications and System Updates with View Composer on page 26 Because linked-clone desktop pools share a base image, you can quickly deploy updates and patches by updating the parent virtual machine.
Managing VMware ThinApp Applications in View Administrator on page 26 VMware ThinApp lets you package an application into a single file that runs in a virtualized application sandbox. This strategy results in flexible, conflict-free application provisioning.
Using Existing Processes for Application Provisioning on page 27 With VMware View, you can continue to use the application provisioning techniques that your company currently uses. Two additional considerations include managing server CPU usage and storage I/O and determining whether users are permitted to install applications.
VMware, Inc.
25
Applying operating system and software patches and upgrades Applying service packs Adding applications Adding virtual devices Changing other virtual machine settings, such as available memory
You can create a View Composer persistent disk that contains user settings and other user-generated data. This persistent disk is not affected by a recompose operation. When a linked clone is deleted, you can preserve the user data. When an employee leaves the company, another employee can access the departing employee's user data. A user who has multiple desktops can consolidate the user data on a single desktop. If you want to disallow users from adding or removing software or changing settings, you can use the refresh feature to bring the desktop back to its default values. This feature also reduces the size of linked clones, which tend to grow over time.
Access for specific user groups to specific application repositories, where the application package is stored Storage configuration for the application repository Network traffic generated by streaming, which depends largely on the type of application
For streamed applications, users launch the applications by using a desktop shortcut. If you assign a ThinApp package so that it is installed on a virtual desktop, the architectural considerations are similar to those that you address when you use traditional MSI-based software provisioning. Storage configuration for the application repository is a consideration both for streamed applications and for ThinApp packages installed in virtual desktops. NOTE Assigning application packages created with VMware ThinApp is not supported for View desktops that are downloaded and used in local mode.
26
VMware, Inc.
All systems regardless of which user logs in All users regardless of the system they log in to View Connection Server configuration View Client configuration View Agent configuration
After a GPO is applied, properties are stored in the local Windows registry of the specified component. You can use GPOs to set all the policies that are available from the View Administrator user interface (UI). You can also use GPOs to set policies that are not available from the UI. For a complete list and description of the settings available through ADM templates, see the VMware View Administration document.
VMware, Inc.
27
28
VMware, Inc.
A typical VMware View architecture design uses a building block strategy to achieve scalability. Each building block definition can vary, based on hardware configuration, View and vSphere software versions used, and other environment-specific design factors. This chapter describes a validated example building block that consists of components that support up to 2,000 virtual desktops using vSphere 4.1. The overall deployment integrates 5 of these building blocks for a total of 10,000 virtual desktops in what is termed a "pod." This architecture provides a standard, scalable design that you can adapt to your enterprise environment and special requirements. This chapter includes key details about requirements for memory, CPU, storage capacity, network components, and hardware to give IT architects and planners a practical understanding of what is involved in deploying a VMware View solution. This chapter includes the following topics:
n n n n n
Virtual Machine Requirements, on page 29 VMware View ESX/ESXi Node, on page 34 Desktop Pools for Specific Types of Workers, on page 35 Desktop Virtual Machine Configuration, on page 38 vCenter and View Composer Virtual Machine Configuration and Desktop Pool Maximums, on page 40 View Connection Server Maximums and Virtual Machine Configuration, on page 40 View Transfer Server Virtual Machine Configuration and Storage, on page 41 vSphere Clusters, on page 42 VMware View Building Blocks, on page 43 VMware View Pod, on page 46
n n n n n
Planning Based on Types of Workers on page 30 For many configuration elements, including RAM, CPU, and storage sizing, requirements depend largely on the type of worker who uses the virtual desktop and on the applications that must be installed.
VMware, Inc.
29
Estimating Memory Requirements for Virtual Desktops on page 31 RAM costs more for servers than it does for PCs. Because the cost of RAM is a high percentage of overall server hardware costs and total storage capacity needed, determining the correct memory allocation is crucial to planning your desktop deployment.
Estimating CPU Requirements for Virtual Desktops on page 33 When estimating CPU, you must gather information about the average CPU utilization for various types of workers in your enterprise. In addition, calculate that another 10 to 25 percent of processing power is required for virtualization overhead and peak periods of usage.
Choosing the Appropriate System Disk Size on page 33 When allocating disk space, provide only enough space for the operating system, applications, and additional content that users might install or generate. Usually this amount is smaller than the size of the disk that is included on a physical PC.
Knowledge workers
Kiosk users
30
VMware, Inc.
Insufficient RAM allocations can cause excessive guest swapping, which can generate I/O that causes significant performance degradations and increases storage I/O load. VMware ESX/ESXi supports sophisticated memory resource management algorithms such as transparent memory sharing and memory ballooning, which can significantly reduce the physical RAM needed to support a given guest RAM allocation. For example, even though 2GB might be allocated to a virtual desktop, only a fraction of that number is consumed in physical RAM. Because virtual desktop performance is sensitive to response times, on the ESX/ESXi host, set nonzero values for RAM reservation settings. Reserving some RAM guarantees that idle but in-use desktops are never completely swapped out to disk. It can also reduce storage space consumed by ESX/ESXi swap files. However, higher reservation settings affect your ability to overcommit memory on an ESX/ESXi host and might affect VMotion maintenance operations.
VMware, Inc.
31
deleted when the virtual machines are powered off. Disposable page-file redirection saves storage, slowing the growth of linked clones and also can improve performance. Although you can adjust the size from within Windows, doing so might have a negative effect on application performance. Windows hibernate file for laptops ESX/ESXi swap file This file can equal 100 percent of guest RAM. You can safely delete this file because it is not needed in View deployments, even if you use View Client with Local Mode. This file, which has a .vswp extension, is created if you reserve less than 100 percent of a virtual machine's RAM. The size of the swap file is equal to the unreserved portion of guest RAM. For example, if 50 percent of guest RAM is reserved and guest RAM is 2GB, the ESX/ESXi swap file is 1GB. This file can be stored on the local datastore on the ESX/ESXi host or cluster. This file, which has a .vmss extension, is created if you set the desktop pool logoff policy so that the virtual desktop is suspended when the end user logs off. The size of this file is equal to the size of guest RAM.
Width, in Pixels 640 800 1280 1600 1920 1920 2048 2560
Height, in Pixels 480 600 720 1200 1080 1200 1536 1600
When you consider these requirements, note that virtual machine configuration of allocated RAM does not change. That is, you do not need to allocate 1GB of RAM for applications and another 31MB for dual 1080p monitors. Instead, consider the overhead RAM when calculating the total physical RAM required for each ESX/ESXi host. Add the guest operating system RAM to the overhead RAM and multiply by the number of virtual machines.
32
VMware, Inc.
Software developers or other power uses with high-performance needs might have much higher CPU requirements than knowledge workers and task workers. Dual virtual CPUs are recommended for compute-intensive tasks or for Windows 7 desktops that need to play 720p video using the PCoIP display protocol. Single virtual CPUs are generally recommended for other cases.
Because many virtual machines run on one server, CPU can spike if agents such as antivirus agents all check for updates at exactly the same time. Determine which agents and how many agents could cause performance issues and adopt a strategy for addressing these issues. For example, the following strategies might be helpful in your enterprise:
n
Use View Composer to update images rather than having software management agents download software updates to each individual virtual desktop. Schedule antivirus and software updates to run at nonpeak hours, when few users are likely to be logged in. Stagger or randomize when updates occur.
As an informal initial sizing approach, to start, assume that each virtual machine requires 1/8 to 1/10 of a CPU core as the minimum guaranteed compute power. That is, plan a pilot that uses 8 to 10 virtual machines per core. For example, if you assume 8 virtual machines per core and have a 2-socket 8-core ESX/ESXi host, you can host 128 virtual machines on the server during the pilot. Monitor the overall CPU usage on the host during this period and ensure that it rarely exceeds a safety margin such as 80 percent to give enough headroom for spikes.
Remove unnecessary files. For example, reduce the quotas on temporary Internet files. Choose a virtual disk size that is sufficient to allow for future growth, but is not unrealistically large. Use centralized file shares or a View Composer persistent disk for user-generated content and userinstalled applications.
VMware, Inc.
33
The amount of storage space required must take into account the following files for each virtual desktop:
n n n n
The ESX/ESXi suspend file is equivalent to the amount of RAM allocated to the virtual machine. The Windows page file is equivalent to 150 percent of RAM. Log files take up approximately 100MB for each virtual machine. The virtual disk, or .vmdk file, must accommodate the operating system, applications, and future applications and software updates. The virtual disk must also accommodate local user data and userinstalled applications if they are located on the virtual desktop rather than on file shares. If you use View Composer, the .vmdk files grow over time, but you can control the amount of growth by scheduling View Composer refresh operations, setting a storage over-commit policy for View desktop pools, and redirecting Windows page and temporary files to a separate, nonpersistent disk.
You can also add 15 percent to this estimate to be sure that users do not run out of disk space.
As a general framework, consider compute capacity in terms of 8 to 10 virtual desktops per CPU core. For information about calculating CPU requirements for each virtual machine, see Estimating CPU Requirements for Virtual Desktops, on page 33. Think of memory capacity in terms of virtual desktop RAM, host RAM, and overcommit ratio. Although you can have between 8 and 10 virtual desktops per CPU core, if virtual desktops have 1GB or more of RAM, you must also carefully consider physical RAM requirements. For information about calculating the amount of RAM required per virtual machine, see Estimating Memory Requirements for Virtual Desktops, on page 31. Note that physical RAM costs are not linear and that in some situations, it can be cost-effective to purchase more smaller servers that do not use expensive DIMM chips. In other cases, rack density, storage connectivity, manageability and other considerations can make minimizing the number of servers in a deployment a better choice.
Finally, consider cluster requirements and any failover requirements. For more information, see Determining Requirements for High Availability, on page 42.
For information about specifications of ESX/ESXi hosts in vSphere, see the VMware vSphere Configuration Maximums document.
34
VMware, Inc.
You create stateless desktop images by using View Composer and creating floating-assignment pools of linkedclone virtual machines. You create stateful desktop images by creating dedicated-assignment pools of full virtual machines. Some storage vendors have cost-effective storage solutions for stateful desktop images. These vendors often have their own best practices and provisioning utilities. Using one of these vendors might require that you create a manual dedicated-assignment pool.
n
Pools for Task Workers on page 36 You can standardize on stateless desktop images for task workers so that the image is always in a wellknown, easily supportable configuration and so that workers can log in to any available desktop.
Pools for Knowledge Workers and Power Users on page 36 Knowledge workers need to be able to create complex documents and have them persist on the desktop. Power users need to be able to install their own applications and have them persist. Depending on the nature and amount of personal data that must be retained, the desktop can be stateful or stateless.
Pools for Mobile Users on page 37 These users can check out a View desktop and run it locally on their laptop or desktop even without a network connection.
Pools for Kiosk Users on page 38 Kiosk users might include customers at airline check-in stations, students in classrooms or libraries, medical personnel at medical data entry workstations, or customers at self-service points. Accounts associated with client devices rather than users are entitled to use these desktop pools because users do not need to log in to use the client device or the View desktop. Users can still be required to provide authentication credentials for some applications.
VMware, Inc.
35
Create an automated pool so that desktops can be created when the pool is created or can be generated on demand based on pool usage. Use floating assignment so that users log in to any available desktop. This setting reduces the number of desktops required if everyone does not need to be logged in at the same time. Create View Composer linked-clone desktops so that desktops share the same base image and use less storage space in the datacenter than full virtual machines. Determine what action, if any, to take when users log off. Disks grow over time. You can conserve disk space by refreshing the desktop to its original state when users log off. You can also set a schedule for periodically refreshing desktops. For example, you can schedule desktops to refresh daily, weekly, or monthly.
Use dedicated assignment so that each knowledge worker or power user logs in to the same desktop every time. Use vStorage thin provisioning so that at first, each desktop uses only as much storage space as the disk needs for its initial operation. If knowledge workers do not need user-installed applications except for temporary use, you can create View Composer linked-clone desktops. These stateless desktop images share the same base image and use less storage space than full virtual machines. If you use View Composer linked-clone desktops, either implement a roaming or virtual profile based solution to store user data centrally or configure a persistent disk for the desktop. Keep in mind, however, that after you refresh or recompose a desktop, the centrally stored data and persistent disk are retained, but the disk that contains the operating system and applications is not retained. For power users and knowledge workers who need to install their own applications, which adds data to the operating system disk, create full virtual machine desktops. These users need stateful desktop images.
36
VMware, Inc.
General Recommendations
Local mode users might need to access their desktop applications and data from their laptop when no network connection is available. In addition, they might need this data to be regularly and automatically backed up to the datacenter in the event that the laptop is ever lost, damaged, or stolen. To provide these capabilities, you can use the following pool settings.
n
When creating a virtual machine to base the pool on, configure the minimum amount of RAM and virtual CPUs required by the guest operating system. Desktops that run in local mode adjust the amount of memory and processing power they use based on that available from the client computer. Create an automated pool so that desktops can be created when the pool is created or can be generated on demand based on pool usage. Use dedicated assignment because local mode users need to log in to the same desktop every time. Create View Composer linked-clone desktops so that desktops share the same base image and use less storage space in the datacenter than full virtual machines. If you want the provisioning process to generate a unique local computer SID and GUID for each linked clone in the pool, select a Sysprep customization specification when you create the pool. Sysprep creates new SIDs and GUIDs during the initial provisioning and after recompose operations. Because you are not likely to recompose local mode pools, the SIDs and GUIDs are not likely to change. Include in the pool only desktops that are intended to be used in local mode. Local mode virtual machines can be placed on datastores with lower IOPS requirements than storage intended to support large numbers of remote View desktops.
n n
Set a View policy so that end users must use their View desktops in local mode only. With this setting, the virtual machines in the datacenter remain locked and powered off. Set local mode policies so that end users cannot initiate desktop rollbacks, data backups, or check-ins to the datacenter. Do not schedule automatic backups.
VMware, Inc.
37
n n
Do not turn on SSL for provisioning or downloading local mode desktops. If the performance of View Connection Server is affected by the number of local desktops, set the heartbeat interval to be less frequent. The heartbeat lets View Connection Server know that the local desktop has a network connection. The default interval is five minutes.
Create an automated pool so that desktops can be created when the pool is created or can be generated on demand based on pool usage. Use floating assignment so that users can access any available desktop in the pool. Create View Composer linked-clone desktops so that desktops share the same base image and use less storage space in the datacenter than full virtual machines. Institute a refresh policy so that the desktop is refreshed frequently, such as at every user logoff. Use an Active Directory GPO (group policy object) to configure location-based printing, so that the desktop uses the nearest printer. For a complete list and description of the settings available through Group Policy administrative (ADM) templates, see the VMware View Administration document. Use a GPO if you want to override the default policy that enables connecting local USB devices to the desktop when the desktop is launched or when USB devices are plugged in to the client computer.
n n
n n
38
VMware, Inc.
The amount of system disk space required depends on the number of applications required in the base image. VMware has validated a setup that included 8GB of disk space. Applications included Microsoft Word, Excel, PowerPoint, Adobe Reader, Internet Explorer, McAfee Antivirus, and PKZIP. The amount of disk space required for user data depends on the role of the end user and organizational policies for data storage. If you use View Composer, this data is kept on a persistent disk. The guidelines listed in Table 4-3 are for a standard Windows Vista virtual desktop running in remote mode. Table 4-3. Desktop Virtual Machine Example for Windows Vista
Item Operating system RAM Virtual CPU System disk capacity User data capacity (as a persistent disk) Virtual SCSI adapter type Virtual network adapter Example 32-bit Windows Vista (with the latest service pack) 1GB 1 20GB (standard) 5GB (starting point) LSI Logic Parallel (the default) E1000 (the default)
The guidelines listed in Table 4-4 are for a standard Windows 7 virtual desktop running in remote mode. Table 4-4. Desktop Virtual Machine Example for Windows 7, on an ESX/ESXi 4.1 Host
Item Operating system RAM Virtual CPU System disk capacity User data capacity (as a persistent disk) Virtual SCSI adapter type Virtual network adapter Example 32-bit Windows 7 1GB 1 20GB (slightly less than standard) 5GB (starting point) LSI Logic SAS (the default) E1000 (the default)
VMware, Inc.
39
vCenter and View Composer Virtual Machine Configuration and Desktop Pool Maximums
You install both vCenter Server and View Composer on the same virtual machine. Because this virtual machine is a server, it requires much more memory and processing power than a desktop virtual machine. View Composer can create and provision up to 512 desktops per pool. View Composer can also perform a recompose operation on up to 512 desktops at a time. Although you can install vCenter Server and View Composer on a physical machine, this example uses a virtual machine with the specifications listed in Table 4-5. The ESX/ESXi host for this virtual machine can be part of a VMware HA cluster to guard against physical server failures. This example assumes that you are using VMware View with vSphere 4.1 and vCenter Server 4.1. Table 4-5. vCenter Server Virtual Machine Example and Pool Size Maximum
Item Operating system RAM Virtual CPU System disk capacity Virtual SCSI adapter type Virtual network adapter Maximum View Composer pool size Example 64-bit Windows Server 2008 R2 Enterprise 4 GB 2 40GB LSI Logic SAS (the default for Windows Server 2008) E1000 (the default) 512 desktops
IMPORTANT Place the database to which vCenter and View Composer connect on a separate virtual machine. For guidance about database sizing, see the vCenter Server 4.x Database Sizing Calculator for Microsoft SQL Server at http://www.vmware.com/support/vsphere4/doc/vsp_4x_db_calculator.xls.
40
VMware, Inc.
PCoIP Secure Gateway connections are required if you use security servers for PCoIP connections from outside the corporate network. Tunneled connections are required if you use security servers for RDP connections from outside the corporate network and for USB and multimedia redirection (MMR) acceleration with a PCoIP Secure Gateway connection.
VMware, Inc.
41
vSphere Clusters
VMware View deployments can use VMware HA clusters to guard against physical server failures. Because of View Composer limitations, the cluster must contain no more than 8 servers, or nodes. VMware vSphere and vCenter provide a rich set of features for managing clusters of servers that host View desktops. The cluster configuration is also important because each View desktop pool must be associated with a vCenter resource pool. Therefore, the maximum number of desktops per pool is related to the number of servers and virtual machines that you plan to run per cluster. In very large VMware View deployments, vCenter performance and responsiveness can be improved by having only one cluster object per datacenter object, which is not the default behavior. By default, VMware vCenter creates new clusters within the same datacenter object.
42
VMware, Inc.
For example, in an 8-host cluster, where each host is capable of running 128 desktops, and the goal is to tolerate a single server failure, make sure that no more than 128 * (8 - 1) = 896 desktops are running on that cluster. You can also use VMware DRS (Distributed Resource Scheduler) to help balance the desktops among all 8 hosts. You get full use of the extra server capacity without letting any hot-spare resources sit idle. Additionally, DRS can help rebalance the cluster after a failed server is restored to service. You must also make sure that storage is properly configured to support the I/O load that results from many virtual machines restarting at once in response to a server failure. Storage IOPS has the most effect on how quickly desktops recover from a server failure.
Networking requirements depend on the type of server, the number of network adapters, and the way in which vMotion is configured.
With vCenter 4.1, which has a limit of 10,000 virtual machines per vCenter, you might be able to use vCenter Servers that manage virtual desktops in multiple building blocks. At the time this document was written, VMware had not yet validated such an approach in conjunction with VMware View. Testing of vCenter Server 4.1 with VMware View 4.5 and 4.6 was limited to testing 2,000 virtual desktops with one vCenter Server. If you have only one building block in a pod, use two View Connection Server instances for redundancy. Figure 4-1 shows the components of a View building block.
VMware, Inc.
43
shared storage
8 hosts
8 hosts
44
VMware, Inc.
You can minimize these storm workloads through operational best practices, such as staggering updates to different virtual machines. You can also test various log-off policies during a pilot phase to determine whether suspending or powering off virtual machines when users log off causes an I/O storm. By storing View Composer replicas on separate, high-performance datastores, you can speed up intensive, concurrent read operations to contend with I/O storm loads. In addition to determining best practices, VMware recommends that you provide bandwidth of 1Gbps per 100 virtual machines, even though average bandwidth might be 10 times less than that. Such conservative planning guarantees sufficient storage connectivity for peak loads.
Two monitors (1920x1080) Heavy use of Microsoft Office applications Heavy use of Flash-embedded Web browsing Frequent use of multimedia with limited use of full screen mode Frequent use of USB-based peripherals Network-based printing
This information was excerpted from the information guide called PCoIP Display Protocol: Information and Scenario-Based Network Sizing Guide.
WAN optimization is valuable for TCP-based protocols such as RDP because these protocols require many handshakes between client and server. The latency of these handshakes can be quite large. WAN accelerators spoof replies to handshakes so that the latency of the network is hidden from the protocol. Because PCoIP is UDP-based, this form of WAN acceleration is unnecessary. WAN accelerators also compress network traffic between client and server, but this compression is usually limited to 2:1 compression ratios. PCoIP is able to provide compression ratios of up to 100:1 for images and audio.
VMware, Inc.
45
The following examples show how PCoIP can be expected to perform in various WAN scenarios: Work from home A user with a dedicated cable or DSL connection with 4-8MB download and less than 300ms latency can expect excellent performance under the following conditions:
n n n n n
Two monitors (1920x1080) Microsoft Office applications Light use of Flash-embedded Web browsing Periodic use of multimedia Light printing with a locally connected USB printer
Mobile user
A user with a dedicated 3G connection with 5-500Kb download and less than 300ms latency can expect adequate bandwidth and tolerable latency under the following conditions:
n n n n
Single monitor Microsoft Office applications Light use of Flash-embedded Web browsing Light printing with a locally connected USB printer
Encourage mobile users to use local applications to access multimedia content. Branch or remote office Plan for 3 concurrent active users per 1Mb of bandwidth. Users at an office that has a 20Mb dedicated site-to-site UDP-based VPN with less than 200ms latency can expect acceptable performance under the following conditions:
n n n n
Two monitors (1920x1080) Microsoft Office applications Light use of Flash-embedded Web browsing Light printing with a locally connected USB printer
This information was excerpted from the information guide called PCoIP Display Protocol: Information and Scenario-Based Network Sizing Guide. For information about setting up VPNs for using PCoIP, see the following solutions overviews, available on the VMware Web site:
n n n
VMware View and Juniper Networks SA Servers SSL VPN Solution VMware View and F5 BIG-IP SSL VPN Solution VMware View and Cisco Adaptive Security Appliances (ASA) SSL VPN Solution
46
VMware, Inc.
The network core load balances incoming requests across View Connection Server instances. Support for a redundancy and failover mechanism, usually at the network level, prevents the load balancer from becoming a single point of failure. For example, the Virtual Router Redundancy Protocol (VRRP) communicates with the load balancer to add redundancy and failover capability. If a View Connection Server instance fails or becomes unresponsive during an active session, users do not lose data. Desktop states are preserved in the virtual machine desktop so that users can connect to a different View Connection Server instance and their desktop session resumes from where it was when the failure occurred. Figure 4-2 shows how all the components can be integrated into one manageable entity. Figure 4-2. Pod Diagram for 10,000 View Desktops
VMware View building blocks switched networks Each switched network connects to each View Connection Server VMware View Connection Servers load balancing
network core
VMware, Inc.
47
48
VMware, Inc.
VMware View offers strong network security to protect sensitive corporate data. For added security, you can integrate VMware View with certain third-party user-authentication solutions, use a security server, and implement the restricted entitlements feature. This chapter includes the following topics:
n n n n n n n n
Understanding Client Connections, on page 49 Choosing a User Authentication Method, on page 52 Restricting View Desktop Access, on page 55 Using Group Policy Settings to Secure View Desktops, on page 56 Implementing Best Practices to Secure Client Systems, on page 56 Assigning Administrator Roles, on page 56 Preparing to Use a Security Server, on page 57 Understanding VMware View Communications Protocols, on page 61
Client Connections Using the PCoIP Secure Gateway on page 50 When clients connect to a View desktop with the PCoIP display protocol from VMware, View Client can make a second connection to the PCoIP Secure Gateway component on a View Connection Server instance or a security server. This connection provides the required level of security and connectivity when accessing View desktops from the Internet.
VMware, Inc.
49
Tunneled Client Connections with Microsoft RDP on page 51 When users connect to a View desktop with the Microsoft RDP display protocol, View Client can make a second HTTPS connection to the View Connection Server host. This connection is called the tunnel connection because it provides a tunnel for carrying RDP data.
Direct Client Connections on page 51 Administrators can configure View Connection Server settings so that View desktop sessions are established directly between the client system and the View desktop virtual machine, bypassing the View Connection Server host. This type of connection is called a direct client connection.
View Client with Local Mode Client Connections on page 52 View Client with Local Mode offers mobile users the ability to check out View desktops onto their local computer.
The only remote desktop traffic that can enter the corporate data center is traffic on behalf of a strongly authenticated user. Users can access only the desktop resources that they are authorized to access. This connection supports PCoIP, which is an advanced remote desktop protocol that makes more efficient use of the network by encapsulating video display packets in UDP instead of TCP. PCoIP is secured by AES-128 encryption. No VPN is required, as long as PCoIP is not blocked by any networking component. For example, someone trying to access their View desktop from inside a hotel room might find that the proxy the hotel uses is not configured to allow inbound traffic on TCP port 4172 and both inbound and outbound traffic on UDP port 4172. For more information, see Firewall Rules for DMZ-Based Security Servers, on page 60.
n n
n n
Security servers with PCoIP support run on Windows Server 2008 R2 and take full advantage of the 64-bit architecture. This security server can also take advantage of Intel processors that support AES New Instructions (AESNI) for highly optimized PCoIP encryption and decryption performance.
50
VMware, Inc.
RDP data is tunneled through HTTPS and is encrypted using SSL. This powerful security protocol is consistent with the security provided by other secure Web sites, such as those that are used for online banking and credit card payments. A client can access multiple desktops over a single HTTPS connection, which reduces the overall protocol overhead. Because VMware View manages the HTTPS connection, the reliability of the underlying protocols is significantly improved. If a user temporarily loses a network connection, the HTTP connection is reestablished after the network connection is restored and the RDP connection automatically resumes without requiring the user to reconnect and log in again.
In a standard deployment of View Connection Server instances, the HTTPS secure connection terminates at the View Connection Server. In a DMZ deployment, the HTTPS secure connection terminates at a security server. See Preparing to Use a Security Server, on page 57 for information on DMZ deployments and security servers. Clients that use the PCoIP display protocol can use the tunnel connection for USB redirection and multimedia redirection (MMR) acceleration, but for all other data, PCoIP uses the PCoIP Secure Gateway on a security server. For more information, see Client Connections Using the PCoIP Secure Gateway, on page 50. Clients that use the PCoIP or HP RGS display protocols do not use the tunnel connection.
PCoIP supports Advanced Encryption Standard (AES) encryption, which is turned on by default. The hardware implementation of PCoIP uses both AES and IP Security (IPsec). PCoIP works with third-party VPN clients.
For clients that use the Microsoft RDP display protocol, direct client connections are appropriate only if your deployment is inside a corporate network. With direct client connections, RDP traffic is sent unencrypted over the connection between the client and the View desktop virtual machine.
VMware, Inc.
51
Active Directory Authentication on page 53 Each View Connection Server instance is joined to an Active Directory domain, and users are authenticated against Active Directory for the joined domain. Users are also authenticated against any additional user domains with which a trust agreement exists.
RSA SecurID Authentication on page 53 RSA SecurID provides enhanced security with two-factor authentication, which requires knowledge of the user's PIN and token code. The token code is only available on the physical SecurID token.
Smart Card Authentication on page 53 A smart card is a small plastic card that is embedded with a computer chip. Many government agencies and large enterprises use smart cards to authenticate users who access their computer networks. A smart card is also referred to as a Common Access Card (CAC).
Log In as Current User Feature on page 54 When View Client users select the Log in as current user check box, the credentials that they provided when logging in to the client system are used to authenticate to the View Connection Server instance and to the View desktop. No further user authentication is required.
52
VMware, Inc.
VMware, Inc.
53
Administrators can enable individual View Connection Server instances for smart card authentication. Enabling a View Connection Server instance to use smart card authentication typically involves adding your root certificate to a truststore file and then modifying View Connection Server settings. Client connections that use smart card authentication must be SSL enabled. Administrators can enable SSL for client connections by setting a global parameter in View Administrator. To use smart cards, client machines must have smart card middleware and a smart card reader. To install certificates on smart cards, you must set up a computer to act as an enrollment station. To use smart cards with local desktops, you must select a 1024-bit or 2048-bit key size during smart card enrollment. Certificates with 512-bit keys are not supported for local desktops. By default, View Connection Server uses AES-128 to encrypt the virtual disk file when users check in and check out a local desktop. You can change the encryption key cipher to AES-192 or AES-256.
On the View Connection Server instance, user credentials are encrypted and stored in the user session along with the username, domain, and optional UPN. The credentials are added when authentication occurs and are purged when the session object is destroyed. The session object is destroyed when the user logs out, the session times out, or authentication fails. The session object resides in volatile memory and is not stored in View LDAP or in a disk file. On the client system, user credentials are encrypted and stored in a table in the Authentication Package, which is a component of View Client. The credentials are added to the table when the user logs in and are removed from the table when the user logs out. The table resides in volatile memory.
Administrators can use View Client group policy settings to control the availability of the Log in as current user check box and to specify its default value. Administrators can also use group policy to specify which View Connection Server instances accept the user identity and credential information that is passed when users select the Log in as current user check box in View Client. The Log in as current user feature has the following limitations and requirements:
n
If smart card authentication is set to Required on a View Connection Server instance, smart card users who select the Log in as current user check box must still reauthenticate with their smart card and PIN when logging in to the View desktop. Users cannot check out a desktop for use in local mode if they selected the Log in as current user check box when they logged in. The time on the system where the client logs in and the time on the View Connection Server host must be synchronized. If the default Access this computer from the network user-right assignments are modified on the client system, they must be modified as described in VMware Knowledge Base (KB) article 1025691.
54
VMware, Inc.
Assign the tag "Internal" to the View Connection Server instance that supports your internal users. Assign the tag "External" to the View Connection Server instance that is paired with the security server and supports your external users. Assign the "Internal" tag to the desktop pools that should be accessible only to internal users. Assign the "External" tag to the desktop pools that should be accessible only to external users.
n n
External users cannot see the desktop pools tagged as Internal because they log in through the View Connection Server tagged as External, and internal users cannot see the desktop pools tagged as External because they log in through the View Connection Server tagged as Internal. Figure 5-1 illustrates this configuration. Figure 5-1. Restricted Entitlements Example
remote View Client
external network
VM VM
VM VM
VM VM
VM VM
VMware, Inc.
55
You can also use restricted entitlements to control desktop access based on the user-authentication method that you configure for a particular View Connection Server instance. For example, you can make certain desktop pools available only to users who have authenticated with a smart card. The restricted entitlements feature only enforces tag matching. You must design your network topology to force certain clients to connect through a particular View Connection Server instance.
Specify the View Connection Server instances that can accept user identity and credential information that is passed when a user selects the Log in as current user check box in View Client. Enable single sign-on for smart card authentication in View Client. Configure server SSL certificate checking in View Client. Prevent users from providing credential information with View Client command line options. Prevent non-View client systems from using RDP to connect to View desktops. You can set this policy so that connections must be View-managed, which means that users must use View Client to connect to View desktops.
n n n n
See the VMware View Administration document for information on using View Client group policy settings.
Make sure that client systems are configured to go to sleep after a period of inactivity and require users to enter a password before the computer awakens. Require users to enter a username and password when starting client systems. Do not configure client systems to allow automatic logins. For Mac client systems, consider setting different passwords for the Keychain and the user account. When the passwords are different, users are prompted before the system enters any passwords on their behalf. Also consider turning on FileVault protection. Local mode client systems might have more network access when they are running in local mode than when they are remote and connected to the intranet. Consider enforcing intranet network security policies for local mode client systems or disable network access for local mode client systems when they are running in local mode.
56
VMware, Inc.
An administrator can create folders to subdivide desktop pools and delegate the administration of specific desktop pools to different administrators in View Administrator. An administrator configures administrator access to the resources in a folder by assigning a role to a user on that folder. Administrators can only access the resources that reside in folders for which they have assigned roles. The role that an administrator has on a folder determines the level of access that the administrator has to the resources in that folder. View Administrator includes a set of predefined roles. Administrators can also create custom roles by combining selected privileges.
VMware View and Juniper Networks SA Servers SSL VPN Solution VMware View and F5 BIG-IP SSL VPN Solution VMware View and Cisco Adaptive Security Appliances (ASA) SSL VPN Solution
VMware, Inc.
57
external network
When remote users connect to a security server, they must successfully authenticate before they can access View desktops. With appropriate firewall rules on both sides of the DMZ, this topology is suitable for accessing View desktops from client devices located on the Internet. You can connect multiple security servers to each instance of View Connection Server. You can also combine a DMZ deployment with a standard deployment to offer access for internal users and external users. The topology illustrated in Figure 5-3 shows an environment where four instances of View Connection Server act as one group. The instances in the internal network are dedicated to users of the internal network, and the instances in the external network are dedicated to users of the external network. If the View Connection Server instances paired with the security servers are enabled for RSA SecurID authentication, all external network users are required to authenticate by using RSA SecurID tokens.
58
VMware, Inc.
View Client
external network
internal network
You must implement a hardware or software load balancing solution if you install more than one security server. View Connection Server does not provide its own load balancing functionality. View Connection Server works with standard third-party load balancing solutions.
An external network-facing, front-end firewall is required to protect both the DMZ and the internal network. You configure this firewall to allow external network traffic to reach the DMZ. A back-end firewall, between the DMZ and the internal network, is required to provide a second tier of security. You configure this firewall to accept only traffic that originates from the services within the DMZ.
Firewall policy strictly controls inbound communications from DMZ services, which greatly reduces the risk of compromising your internal network. Figure 5-4 shows an example of a configuration that includes front-end and back-end firewalls.
VMware, Inc.
59
HTTPS traffic
DMZ
View Security Server back-end firewall View Connection Server
internal network
Active Directory
Any
HTTPS
443
Security server
Any
PCoIP
Security server
60
VMware, Inc.
Back-End Firewall Rules To allow a security server to communicate with each View Connection Server instance that resides within the internal network, the back-end firewall must allow inbound traffic on certain TCP ports. Behind the back-end firewall, internal firewalls must be similarly configured to allow View desktops and View Connection Server instances to communicate with each other. Table 5-2 summarizes the back-end firewall rules. Table 5-2. Back-End Firewall Rules
Source Security server Protocol HTTP Port 80 Destination Transfer Server Notes Security servers can use port 80 to download View desktop data to local mode desktops from the Transfer Server and to replicate data to the Transfer Server. If you configure View Connection Server to use SSL for local mode operations and desktop provisioning, security servers use port 443 for downloads and replication between local mode desktops and the Transfer Server. Security servers use port 8009 to transmit AJP13-forwarded Web traffic to View Connection Server instances. Security servers use port 4001 to transmit Java Message Service (JMS) traffic to View Connection Server instances. Security servers use port 3389 to transmit RDP traffic to View desktops. NOTE For USB redirection, TCP port 32111 is used alongside RDP. For MMR, TCP port 9427 is used alongside RDP. Security servers use TCP port 4172 to transmit PCoIP traffic to View desktops, and security servers use UDP port 4172 to transmit PCoIP traffic in both directions. For USB redirection, TCP port 32111 is used alongside PCoIP from the client to the View desktop.
Security server
HTTPS
443
Transfer Server
Security server
AJP13
8009
Security server
JMS
4001
Security server
RDP
3389
View desktop
Security server
PCoIP
View desktop
TCP Ports for View Connection Server Intercommunication Groups of View Connection Server instances use additional TCP ports to communicate with each other. For example, View Connection Server instances use port 4100 to transmit JMS inter-router (JMSIR) traffic to each other. Firewalls are generally not used between the View Connection Server instances in a group.
VMware, Inc.
61
Figure 5-5. VMware View Components and Protocols Without a Security Server
Mac, Windows, and Linux Clients Thin Client
RDP Client
View Client
PCoIP
PCoIP
RDP
HTTP(S)
HTTP(S)
RDP
View Administrator
HTTP(S)
View Messaging
SOAP
vCenter Server
View Agent
NOTE This figure shows direct connections for clients using either PCoIP or RDP. The default setting, however, is to have direct connections for PCoIP and tunnel connections for RDP. See Table 5-3 for the default ports that are used for each protocol. Figure 5-6 illustrates the protocols that each component uses for communication when a security server is configured. This configuration might be used in a typical WAN deployment.
62
VMware, Inc.
Figure 5-6. VMware View Components and Protocols with a Security Server
Mac, Windows, and Linux Clients Thin Client
RDP Client
View Client
PCoIP AJP13
View Administrator
HTTP(S)
View Messaging
SOAP
vCenter Server
View Agent
Table 5-3 lists the default ports that are used by each protocol. Table 5-3. Default Ports
Protocol JMS AJP13 HTTP HTTPS RDP Port TCP port 4001 TCP port 8009 NOTE AJP13 is used in a security server configuration only. TCP port 80 TCP port 443 TCP port 3389 For USB redirection, TCP port 32111 is used alongside RDP. For MMR, TCP port 9427 is used alongside RDP. NOTE If the View Connection Server instance is configured for direct client connections, these protocols connect directly from the client to the View desktop and are not tunneled through the View Secure GW Server component.
VMware, Inc.
63
64
VMware, Inc.
View LDAP
View LDAP is an embedded LDAP directory in View Connection Server and is the configuration repository for all VMware View configuration data. View LDAP contains entries that represent each View desktop, each accessible View desktop, multiple View desktops that are managed together, and View component configuration settings. View LDAP also includes a set of View plug-in DLLs to provide automation and notification services for other VMware View components.
View Messaging
The View Messaging component provides the messaging router for communication between View Connection Server components and between View Agent and View Connection Server. This component supports the Java Message Service (JMS) API, which is used for messaging in VMware View. By default, RSA keys that are used for intercomponent message validation are 512 bits. The RSA key size can be increased to 1024 bits if you prefer stronger encryption. If you want all keys to be 1024 bits, the RSA key size must be changed immediately after the first View Connection Server instance is installed and before additional servers and desktops are created. See VMware Knowledge Base (KB) article 1024431 for more information.
VMware, Inc.
65
Table 5-5. TCP Ports Opened During View Agent Installation (Continued)
Protocol PCoIP HP RGS Ports 4172 (TCP and UDP) 42966
The View Agent installation program configures the local firewall rule for inbound RDP connections to match the current RDP port of the host operating system, which is typically 3389. If you change the RDP port number, you must change the associated firewall rules. If you instruct the View Agent installation program to not enable Remote Desktop support, it does not open ports 3389 and 32111, and you must open these ports manually. The HP RGS Sender application is the server-side component of the HP RGS remote display protocol. HP RGS Sender uses port 42966 by default. If you use a virtual machine template as a desktop source, firewall exceptions carry over to deployed desktops only if the template is a member of the desktop domain. You can use Microsoft group policy settings to manage local firewall exceptions. See the Microsoft Knowledge Base (KB) article 875357 for more information.
66
VMware, Inc.
Complete these high-level tasks to install VMware View and configure an initial deployment. Table 6-1. View Installation and Setup Check List
Step 1 2 3 4 5 6 Task Set up the required administrator users and groups in Active Directory. Instructions: VMware View Installation and vSphere documentation If you have not yet done so, install and set up VMware ESX/ESXi hosts and vCenter Server. Instructions: vSphere documentation If you are going to deploy linked-clone desktops, install View Composer on the vCenter Server system. Instructions: VMware View Installation document Install and set up View Connection Server. Instructions: VMware View Installation document If you are going to use desktops in local mode, install Transfer Server. Instructions: VMware View Installation document Create one or more virtual machines that can be used as a template for full-clone desktop pools or as a parent for linked-clone desktop pools. Instructions: VMware View Administration document Create a desktop pool. Instructions: VMware View Administration document Control user access to desktops. Instructions: VMware View Administration document Install View Client on end users' machines and have end users access their View desktops. Instructions: VMware View Installation (Optional) Create and configure additional administrators to allow different levels of access to specific inventory objects and settings. Instructions: VMware View Administration document (Optional) Configure policies to control the behavior of View components, desktop pools, and desktop users. Instructions: VMware View Administration document (Optional) For added security, integrate smart card authentication and RSA SecurID solutions. Instructions: VMware View Administration document
7 8 9 10
11 12
VMware, Inc.
67
68
VMware, Inc.
Index
Symbols
.vmdk files 33
A
Active Directory 9, 27, 53 ADM template files 56 Administration Server 64 administrator roles 56 Adobe Flash 23 agent, View 12 AJP13 protocol 60, 61 application virtualization and provisioning 2527 architectural design elements 29
B
back-end firewall configuring 59 rules 60 bandwidth 44, 45 base image for virtual desktops 24, 25 browsers, supported 11 Business Intelligence software 13
database types 43 datastores 25 dedicated-assignment desktop pools 23, 25 delegated administration 56 demilitarized zone 5759, 64 desktop 11 desktop as a managed service (DaaS) 7 desktop pools 12, 23, 25, 35 desktop sources 23 diagram of a View deployment 9 direct client connections 40, 51 disk space allocation for virtual desktops 33, 38 display protocols defined 17 HP RGS 15, 18, 51 Microsoft RDP 15, 18, 51 PCoIP 51, 57 View PCoIP 9, 15, 17 Distributed Resource Scheduler (DRS) 42 DMZ 10, 5759, 64 dual-firewall topology 59
C
check list for setting up VMware View 67 client connections direct 51 PCoIP Secure Gateway 50, 57, 64 tunnel 51 client systems, best practices for securing 56 clones, linked 12, 26 cluster, vSphere 42 communication protocols, understanding 61 connection types client 49 direct 51 external client 57 PCoIP Secure Gateway 50, 57, 64 tunnel 51 cores, virtual machines density 33 CPU estimates 33, 38 credentials, user 54
E
encryption of user credentials 54 supported by Microsoft RDP 18 supported with PCoIP 17 entitlements, restricted 55 ESX/ESXi hosts 34
F
feature support matrix 15 Fibre Channel SAN arrays 24 firewall rules Active Directory 66 View Agent 65 View Client with Local Mode 66 View Connection Server 65 firewalls back-end 59 front-end 59 rules 60 floating-assignment desktop pools 23
D
database sizing 40
VMware, Inc.
69
N
NAS arrays 24 network bandwidth 44, 45
G
gateway server 64 GPOs, security settings for View desktops 56
O
Offline Desktop (Local Mode), See local desktop
H
HA cluster 40, 42 HP RGS 15, 18, 51
P
parent virtual machine 25, 26 PCoIP 7, 9, 15, 17, 51, 57, 64 PCoIP Secure Gateway connection 50, 57, 64 persistent disks 25 physical PCs 40 policies, desktop 27 pools desktop 25, 35 kiosk users 38 knowledge workers 36 local mode users 37 task workers 36 pools, desktop 12, 23 power users 30 printers 15 printing, virtual 20 processing requirements 33 professional services 5 provisioning desktops 7
I
I/O storms 44 iSCSI SAN arrays 24
J
Java Message Service 65 Java Message Service protocol 60 JMS protocol 60, 61
K
kiosk mode 38 knowledge workers 30, 31, 36
L
latency 45 LDAP configuration data 13 LDAP directory 10, 65 legacy PCs 10 linked clones 12, 25, 26, 40, 44 Linux clients 11 load balancing, View Connection Server 46, 58 local desktop use, benefits 18 local desktops, View Transfer Server 13 local mode, See local desktop local mode users 37 Log in as current user feature 21, 54 LUNs 25
R
RAM allocation for virtual machines 31, 38 rebalance feature 25 recompose feature 26 refresh feature 26, 33 remote desktops, compared to local desktops 18 replicas 25 restricted entitlements 55 RSA key size, changing 65 RSA SecurID authentication 53
M
Mac clients 10, 11 media file formats supported 21 memory allocation for virtual machines 31, 38 messaging router 65 Microsoft RDP 15, 18, 21, 51 Microsoft Remote Desktop Connection Client for Mac 11 multimedia redirection (MMR) 21 multimedia streaming 21 multiple monitors 9, 17, 18, 21
S
scalability, planning for 29 SCOM 13 SCSI adapter types 38 security features, planning 49 security servers best practices for deploying 57 firewall rules for 60 implementing 57 load balancing 58 overview 10 PCoIP Secure Gateway 64
70
VMware, Inc.
Index
setup, VMware View 67 shared storage 24, 44 single sign-on (SSO) 12, 21, 54 smart card authentication 53 smart card readers 20, 53 snapshots 26 software provisioning 26, 27 storage, reducing, with View Composer 24, 25 storage bandwidth 44 storage configurations 44 streaming applications 26 streaming multimedia 21 suspend files 31, 33 swap files 31
T
task workers 30, 31, 36 TCP ports Active Directory 66 View Agent 65 View Client with Local Mode 66 View Connection Server 65 technical support 5 templates, GPO 27 terminal servers 40 thin client support 10, 15 ThinApp 26 tunnel connection 40, 51 tunneled communications 52, 64
U
UDP ports 60 Unified Access 40 USB devices, using with View desktops 9, 15, 20 USB redirection 20 user authentication Active Directory 53 methods 52 RSA SecurID 53 smart cards 53 user types 30
View Client for Linux 11 View Client with Local Mode, connections 52 View Composer, operations 40, 44 View Connection Server configuration 12, 27, 40 grouping 58 load balancing 58 overview 10 RSA SecurID authentication 53 smart card authentication 53 View deployment diagram 9 View desktop configurations 29 View Messaging 65 View node configuration 34 View Open Client 11 View pod 46 View Portal 10, 11 View PowerCLI 13 View Secure Gateway Server 64 View Transfer Server configuration 41 synchronizing local desktops 13 virtual machine configuration for vCenter 40 for View Composer 40 for View Connection Server 40 for View desktops 29 for View Transfer Server 41 virtual printing feature 9, 15, 20 virtual private networks 17, 57 VMotion 42 VMware View with Local Mode, See local desktop vSphere 7, 9, 24 vSphere cluster 42, 43
W
WAN configurations 43 WAN support 45 Windows page file 33 worker types 2931, 33, 35 Wyse MMR 15, 21
V
vCenter, configuration 40 vCenter Server 12, 23 vdmadmin command 13 View Administrator 12, 27 View Agent 12, 27 View Broker 64 View building block 43, 44 View Client 11, 27
VMware, Inc.
71
72
VMware, Inc.