Page 1

Setting Up Virtual
Desktops in Horizon 7
Modified for Horizon 7 7.3.2
VMware Horizon 7 7.3
Page 2

Setting Up Virtual Desktops in Horizon 7
You can find the most up-to-date technical documentation on the VMware website at:
https://docs.vmware.com/
If you have comments about this documentation, submit your feedback to
docfeedback@vmware.com
VMware, Inc.
3401 Hillview Ave.
Palo Alto, CA 94304
www.vmware.com
Copyright © 2017 VMware, Inc. All rights reserved. Copyright and trademark information.
VMware, Inc. 2
Page 3

Contents
Setting Up Virtual Desktops in Horizon 7 7
1
Introduction to Virtual Desktops 8
2
Virtual Desktop Pools 8
Advantages of Desktop Pools 8
Desktop Pools for Specific Types of Workers 10
Creating and Preparing a Virtual Machine for Cloning 15
3
Creating a Virtual Machine for Cloning 16
Install Horizon Agent on a Virtual Machine 24
Install Horizon Agent Silently 28
Configure a Virtual Machine with Multiple NICs for Horizon Agent 36
Optimize Guest Operating System Performance 37
Disable the Windows Customer Experience Improvement Program 38
Optimizing Windows for Instant-Clone and View Composer Linked-Clone Virtual Machines 39
Preparing a Parent Virtual Machine 46
Creating Virtual Machine Templates 52
Creating Customization Specifications 53
Creating Instant-Clone Desktop Pools 54
4
Instant-Clone Desktop Pools 54
Image Publishing and Rebalancing an Instant-Clone Desktop Pool 56
Add an Instant-Clone Domain Administrator 57
Worksheet for Creating an Instant-Clone Desktop Pool 57
Create an Instant-Clone Desktop Pool 62
ClonePrep Guest Customization 63
Change the Image of an Instant-Clone Desktop Pool 65
Monitor a Push-Image Operation 65
Reschedule or Cancel a Push-Image Operation 66
Perform Maintenance on Instant-Clone Hosts 66
Instant-Clone Maintenance Utilities 67
Creating Automated Desktop Pools That Contain Full Virtual Machines 70
5
Automated Pools That Contain Full Virtual Machines 70
Worksheet for Creating an Automated Pool That Contains Full Virtual Machines 70
Create an Automated Pool That Contains Full Virtual Machines 75
Clone an Automated Desktop Pool 76
Rebuild a Virtual Machine in a Full-Clone Desktop Pool 77
VMware, Inc.
3
Page 4

Setting Up Virtual Desktops in Horizon 7
Desktop Settings for Automated Pools That Contain Full Virtual Machines 78
Configure Full Clones with vSphere Virtual Machine Encryption 78
Creating Linked-Clone Desktop Pools 80
6
Linked-Clone Desktop Pools 80
Worksheet for Creating a Linked-Clone Desktop Pool 80
Create a Linked-Clone Desktop Pool 90
Clone an Automated Desktop Pool 92
Desktop Pool Settings for Linked-Clone Desktop Pools 93
View Composer Support for Linked-Clone SIDs and Third-Party Applications 94
Keeping Linked-Clone Machines Provisioned for Use in Remote Desktop Sessions During View
Composer Operations 99
Use Existing Active Directory Computer Accounts for Linked Clones 100
Creating Manual Desktop Pools 103
7
Manual Desktop Pools 103
Worksheet for Creating a Manual Desktop Pool 104
Create a Manual Desktop Pool 106
Create a Manual Pool That Contains One Machine 107
Desktop Pool Settings for Manual Pools 108
Configuring Desktop Pools 110
8
User Assignment in Desktop Pools 110
Naming Machines Manually or Providing a Naming Pattern 111
Manually Customizing Machines 118
Desktop Pool Settings for All Desktop Pool Types 120
Adobe Flash Quality and Throttling 124
Setting Power Policies for Desktop Pools 125
Configuring 3D Rendering for Desktops 132
Prevent Access to Horizon 7 Desktops Through RDP 145
Deploying Large Desktop Pools 146
Managing Desktop Pools and Virtual Desktops 148
9
Managing Desktop Pools 148
Managing Virtual Machine-Based Desktops 154
Export Horizon 7 Information to External Files 157
Managing View Composer Linked-Clone Desktop Virtual Machines 158
10
Reduce Linked-Clone Size with Machine Refresh 158
Update Linked-Clone Desktops 160
Rebalance Linked-Clone Virtual Machines 165
Manage View Composer Persistent Disks 168
VMware, Inc. 4
Page 5

Setting Up Virtual Desktops in Horizon 7
Preparing Unmanaged Machines 174
11
Prepare an Unmanaged Machine for Remote Desktop Deployment 174
Install Horizon Agent on an Unmanaged Machine 175
Managing Unmanaged Machines 178
Entitling Users and Groups 181
12
Add Entitlements to a Desktop or Application Pool 181
Remove Entitlements from a Desktop or Application Pool 182
Review Desktop or Application Pool Entitlements 182
Configuring Start Menu Shortcuts for Desktop and Application Pools 183
Restricting Desktop or Application Access 185
Restricting Remote Desktop Access Outside the Network 189
Reducing and Managing Storage Requirements 190
13
Managing Storage with vSphere 190
Reducing Storage Requirements with Instant Clones 197
Reducing Storage Requirements with View Composer 199
Storing View Composer Linked Clones on Local Datastores 201
Storing Replicas and Clones on Separate Datastores for Instant Clones and View Composer
Linked Clones 202
Storage Sizing for Instant-Clone and View Composer Linked-Clone Desktop Pools 203
Storage Overcommit for View Composer Linked-Clone Virtual Machines 208
View Composer Linked-Clone Data Disks 210
Configure View Storage Accelerator for View Composer Linked Clones 212
Reclaim Disk Space on View Composer Linked Clones 214
Using VAAI Storage for View Composer Linked Clones 216
Set Storage Accelerator and Space Reclamation Blackout Times for View Composer Linked
Clones 217
Configuring User Profiles with Horizon Persona Management 219
14
Providing User Personas in Horizon 7 219
Using Horizon Persona Management with Standalone Systems 220
Migrating User Profiles with Horizon Persona Management 221
Horizon Persona Management and Windows Roaming Profiles 225
Configuring a Horizon Persona Management Deployment 225
Best Practices for Configuring a Horizon Persona Management Deployment 235
Horizon Persona Management Group Policy Settings 239
Monitoring Virtual Desktops and Desktop Pools 250
15
Monitor Virtual-Machine Desktop Status 250
Status of vCenter Server Virtual Machines 251
VMware, Inc. 5
Page 6

Setting Up Virtual Desktops in Horizon 7
Recover Instant-Clone Desktops 253
Status of Unmanaged Machines 253
Troubleshooting Machines and Desktop Pools 255
16
Display Problem Machines 255
Troubleshooting Instant Clones in the Internal VM Debug Mode 256
Restart Desktops and Reset Virtual Machines 257
Send Messages to Desktop Users 258
Problems Provisoning or Recreating a Desktop Pool 259
Troubleshooting Network Connection Problems 271
Troubleshooting USB Redirection Problems 276
Manage Machines and Policies for Unentitled Users 278
Resolving Database Inconsistencies with the ViewDbChk Command 278
Further Troubleshooting Information 281
VMware, Inc. 6
Page 7

Setting Up Virtual Desktops in
Horizon 7 1
Setting Up Virtual Desktops in Horizon 7 describes how to create and provision pools of virtual machines.
It includes information about preparing machines, provisioning desktop pools, and configuring user
profiles with View Persona Management.
Intended Audience
This information is intended for anyone who wants to create and provision desktop and application pools.
The information is written for experienced Windows system administrators who are familiar with virtual
machine technology and datacenter operations.
VMware, Inc.
7
Page 8

Introduction to Virtual Desktops 2
With Horizon 7, you can create desktop pools that include thousands of virtual desktops. You can deploy
desktops that run on virtual machines (VMs) and physical machines. Create one VM as a master image,
and Horizon 7 can generate a pool of virtual desktops from that image. The master image is also known
as a base image or a golden image.
This section includes the following topics:
n
Virtual Desktop Pools
n
Advantages of Desktop Pools
n
Desktop Pools for Specific Types of Workers
Virtual Desktop Pools
You can create desktop pools to give users remote access to virtual machine-based desktops. You can
also choose VMware PC-over-IP (PCoIP), or VMware Blast to provide remote access to users.
There are two main types of virtual desktop pools: automated and manual. Automated desktop pools use
a vCenter Server virtual machine template or snapshot to create a pool of identical virtual machines.
Manual desktop pools are a collection of existing vCenter Server virtual machines, physical computers, or
third-party virtual machines. In automated or manual pools, each machine is available for one user to
access remotely at a time.
Advantages of Desktop Pools
Horizon 7 offers the ability to create and provision pools of desktops as its basis of centralized
management.
You create a remote desktop pool from one of the following sources:
n
A physical system such as a physical desktop PC.
n
A virtual machine that is hosted on an ESXi host and managed by vCenter Server
n
A virtual machine that runs on a virtualization platform other than vCenter Server that supports
Horizon Agent.
n
A session-based desktop on an RDS host. For more information about creating desktop pools from
an RDS host, see the Setting Up Published Desktops and Applications in Horizon 7 document.
VMware, Inc.
8
Page 9

Setting Up Virtual Desktops in Horizon 7
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
remote 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 remote
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 remote desktop and whether to let
end users override the default.
n
For View Composer linked-clone virtual machines or full clone virtual machines, specify whether to
power off the virtual machine when it is not in use and whether to delete it altogether. Instant clone
virtual machines are always powered on.
n
For View Composer linked-clone virtual machines, you can 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. Instant clones require a different customization
specification, called ClonePrep, from VMware.
You can also specify how users are assigned desktops in a pool.
Dedicated-assignment
pools
Each user is assigned a particular remote desktop and returns to the same
desktop at each login. Dedicated assignment pools require a one-to-one
desktop-to-user relationship. For example, a pool of 100 desktops are
needed for a group of 100 users.
Floating-assignment
pools
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. The remote desktop is optionally deleted and re-created after
each use, offering a highly controlled environment.
VMware, Inc. 9
Page 10

Setting Up Virtual Desktops in Horizon 7
Desktop Pools for Specific Types of Workers
Horizon 7 provides many features to help you conserve storage and reduce the amount of processing
power required for various use cases. Many of these features are available as pool settings.
The most fundamental question to consider is whether a certain type of user needs a stateful desktop
image or a stateless desktop image. Users who need a stateful desktop image have data in the operating
system image itself that must be preserved, maintained, and backed up. For example, these users install
some of their own applications or have data that cannot be saved outside of the virtual machine itself,
such as on a file server or in an application database.
Stateless desktop
images
Also known as nonpersistent desktops, stateless architectures have many
advantages, such as being easier to support and having lower storage
costs. Other benefits include a limited need to back up the virtual machines
and easier, less expensive disaster recovery and business continuity
options.
Stateful desktop
images
Also known as persistent desktops, these images might require traditional
image management techniques. Stateful images can have low storage
costs in conjunction with certain storage system technologies. Backup and
recovery technologies such as VMware Consolidated Backup and VMware
Site Recovery Manager are important when considering strategies for
backup, disaster recovery, and business continuity.
There are two ways to create stateless desktop images in Horizon 7:
n
You can create floating assignment pools or dedicated assignment pools of instant clone virtual
machines. Folder redirection and roaming profiles can optionally be used to store user data.
n
You can use View Composer to create floating or dedicated assignment pools of linked clone virtual
machines. Folder redirection and roaming profiles can optionally be used to store user data or
configure persistent disks to persist user data.
There are several ways to create stateful desktop images in Horizon 7:
n
You can create full clones or full virtual machines. Some storage vendors have cost-effective storage
solutions for full clones. 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
You can create pools of instant-clone or linked-clone virtual machines and use App Volumes user
writable volumes to attach user data and user-installed apps.
Whether you use stateless or stateful desktops depends on the specific type of worker.
VMware, Inc. 10
Page 11

Setting Up Virtual Desktops in Horizon 7
Pools for Task Workers
You can standardize on stateless desktop images for task workers so that the image is always in a well-
known, easily supportable configuration and so that workers can log in to any available desktop.
Because task workers perform repetitive tasks within a small set of applications, you can create stateless
desktop images, which help conserve storage space and processing requirements.
Use the following pool settings for instant-clone desktop pools:
n
For instant clone pools, to optimize resource utilization, use on demand provisioning to grow or shrink
the pool based on usage. Be sure to specify enough spare desktops to satisfy the login rate.
n
For instant clone desktop pools, Horizon 7 automatically deletes the instant clone whenever a user
logs out. A new instant clone is created and ready for the next user to log in, thus effectively
refreshing the desktop on every log out.
Use the following pool settings for View Composer linked-clone desktop pools:
n
For View Composer desktop pools, 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.
n
If applicable, and if you use View Composer linked-clone pools, consider storing desktops on local
ESXi data stores. This strategy can offer advantages such as inexpensive hardware, fast virtual-
machine provisioning, high-performance power operations, and simple management. For a list of the
limitations, see Storing View Composer Linked Clones on Local Datastores.
Note For information about other types of storage options, see Chapter 13 Reducing and Managing
Storage Requirements.
n
Use the Persona Management feature so that users always have their preferred desktop appearance
and application settings, as with Windows user profiles. If you do not have the desktops set to be
refreshed or deleted at logoff, you can configure the persona to be removed at logoff.
Important Persona Management facilitates implementing a floating-assignment pool for those users
who want to retain settings between sessions. Previously, one of the limitations of floating-assignment
desktops was that when end users logged off, they lost all their configuration settings and any data
stored in the remote desktop.
Each time end users logged on, their desktop background was set to the default wallpaper, and they
would have to configure each application's preferences again. With Persona Management, an end
user of a floating-assignment desktop cannot tell the difference between their session and a session
on a dedicated-assignment desktop.
Use the following general pool settings for all desktop pools:
n
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.
VMware, Inc. 11
Page 12

Setting Up Virtual Desktops in Horizon 7
n
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.
n
Create instant-clone or 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.
Pools for Knowledge Workers and Power Users
Knowledge workers must be able to create complex documents and have them persist on the desktop.
Power users must 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.
For knowledge workers who do not need user-installed applications except for temporary use, you can
create stateless desktop images and save all their personal data outside of the virtual machine, on a file
server or in an application database. For other knowledge workers and for power users, you can create
stateful desktop images.
Use the following pool settings for instant-clone desktop pools:
n
If you use instant clone desktops, implement file share, roaming profile, or another profile
management solution.
Use the following pool settings for View Composer linked-clone desktop pools:
n
If you use View Composer with vSphere 5.1 or later virtual desktops, enable the space reclamation
feature for vCenter Server and for the desktop pool. With the space reclamation feature, stale or
deleted data within a guest operating system is automatically reclaimed with a wipe and shrink
process.
n
If you use View Composer linked-clone desktops, implement Persona Management, roaming profiles,
or another profile management solution. You can also configure persistent disks so that you can
refresh and recompose the linked-clone OS disks while keeping a copy of the user profile on the
persistent disks.
n
Use the Persona Management feature so that users always have their preferred desktop appearance
and application settings, as with Windows user profiles.
Use the following general pool settings for all desktop pools:
n
Some power users and knowledge workers, such as accountants, sales managers, marketing
research analysts, might need to log into the same desktop every time. Create dedicated assignment
pools for them.
n
Use vStorage thin provisioning so that at first, each desktop uses only as much storage space as the
disk needs for its initial operation.
n
For power users and knowledge workers who must install their own applications, which adds data to
the operating system disk, there are two options. One option is to create full virtual machine desktops.
The other option is to create a pool of linked clones or instant clones, and use App Volumes to persist
user-installed applications and user data across logins.
VMware, Inc. 12
Page 13

Setting Up Virtual Desktops in Horizon 7
n
If knowledge workers do not require user-installed applications except for temporary use, you can
create View Composer linked-clone desktops or instant clone desktops. The desktop images share
the same base image and use less storage space than full virtual machines.
Pools for Kiosk Users
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 remote desktop. Users can still be required to provide
authentication credentials for some applications.
Virtual machine desktops that are set to run in kiosk mode use stateless desktop images because user
data does not need to be preserved in the operating system disk. Kiosk mode desktops are used with thin
client devices or locked-down PCs. You must ensure that the desktop application implements
authentication mechanisms for secure transactions, that the physical network is secure against tampering
and snooping, and that all devices connected to the network are trusted.
As a best practice, use dedicated Connection Server instances to handle clients in kiosk mode, and
create dedicated organizational units and groups in Active Directory for the accounts of these clients. This
practice not only partitions these systems against unwarranted intrusion, but also makes it easier to
configure and administer the clients.
To set up kiosk mode, you must use the vdmadmin command-line interface and perform several
procedures documented in the topics about kiosk mode in the View Administration document.
As part of this setup, you can use the following instant-clone desktop pool settings.
n
If you are using instant clone desktop pools, Horizon 7automatically deletes the instant clone
whenever a user logs out. A new instant clone is created and ready for the next user to log in, thus
effectively refreshing the desktop on every log out.
As part of this setup, you can use the following View Composer linked-clone desktop pool settings.
n
If you are using View Composer linked-clone desktops, institute a refresh policy so that the desktop is
refreshed frequently, such as at every user logoff.
n
If applicable, consider storing desktops on local ESXi datastores. This strategy can offer advantages
such as inexpensive hardware, fast virtual-machine provisioning, high-performance power operations,
and simple management. For a list of the limitations, see Storing View Composer Linked Clones on
Local Datastores. Instant clone pools are not supported on local data stores.
Note For information about other types of storage options, see Chapter 13 Reducing and Managing
Storage Requirements.
As part of this setup, you can use the following general settings for all desktop pools.
n
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.
n
Use floating assignment so that users can access any available desktop in the pool.
VMware, Inc. 13
Page 14

Setting Up Virtual Desktops in Horizon 7
n
Create instant-clone or 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.
n
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 (ADMX) templates, see Configuring Remote Desktop Features in Horizon
7.
n
Use a GPO or Smart Policies to control whether local USB devices are connected to the desktop
when the desktop is launched or when USB devices are plugged in to the client computer.
VMware, Inc. 14
Page 15

Creating and Preparing a Virtual
Machine for Cloning 3
You can create a pool of desktop machines by cloning a vCenter Server virtual machine (VM). Before you
create the desktop pool, you need to prepare and configure this VM, which will be the parent, or master
image of the clones.
For information about preparing machines that are used as Remote Desktop Services (RDS) hosts, see
the Setting Up Desktops and Application Pools in Horizon 7 guide.
For information about preparing Linux VMs for remote desktop deployment, see the Setting Up Horizon 7
for Linux Desktops guide.
Note
n
Starting with version 7.0, View Agent is renamed Horizon Agent and View Administrator is renamed
Horizon Administrator.
n
VMware Blast, the display protocol that is available starting with Horizon 7.0, is also known as
VMware Blast Extreme.
This section includes the following topics:
n
Creating a Virtual Machine for Cloning
n
Install Horizon Agent on a Virtual Machine
n
Install Horizon Agent Silently
n
Configure a Virtual Machine with Multiple NICs for Horizon Agent
n
Optimize Guest Operating System Performance
n
Disable the Windows Customer Experience Improvement Program
n
Optimizing Windows for Instant-Clone and View Composer Linked-Clone Virtual Machines
n
Preparing a Parent Virtual Machine
n
Creating Virtual Machine Templates
n
Creating Customization Specifications
VMware, Inc.
15
Page 16

Setting Up Virtual Desktops in Horizon 7
Creating a Virtual Machine for Cloning
The first step in the process of deploying a pool of cloned desktops is to create a virtual machine in
vSphere, install and configure the operating system.
1 Create a Virtual Machine in vSphere
You can create a virtual machine in vSphere from scratch or by cloning an existing VM. This
procedure describes creating a VM from scratch.
2 Install a Guest Operating System
After you create a virtual machine, you must install a guest operating system.
3 Prepare a Guest Operating System for Remote Desktop Deployment
You must perform certain tasks to prepare a guest operating system for remote desktop deployment.
4 Prepare Windows Server Operating Systems for Desktop Use
To use a Windows Server 2008 R2, Windows Server 2012 R2, or Windows Server 2016 virtual
machine as a single-session virtual desktop (rather than as an RDS host), you must perform certain
steps before you install Horizon Agent in the virtual machine. You must also configure Horizon
Administrator to treat Windows Servers as supported operating systems for Horizon 7 desktop use.
5 Install Desktop Experience on Windows Server 2008 R2
For RDS desktops and applications, and for VDI desktops that are deployed on single-user virtual
machines that run Windows Server, scanner redirection requires that you install the Desktop
Experience feature on the RDS hosts and the single-user virtual machines.
6 Install Desktop Experience on Windows Server 2012, 2012 R2, or 2016
For RDS desktops and applications, and for VDI desktops that are deployed on single-user virtual
machines that run Windows Server, scanner redirection requires that you install the Desktop
Experience feature on the RDS hosts and the single-user virtual machines.
7 Configure the Windows Firewall Service to Restart After Failures
Some Windows Server 2012 R2, Windows 2016, Windows 8.1, and Windows 10 machines that are
deployed as single-session desktops do not become available immediately after they are
provisioned. This issue occurs when the Windows Firewall service does not restart after its timeout
period expires. You can configure the Windows Firewall service on the parent (master image) or
template virtual machine to ensure that all machines in a desktop pool become available.
Create a Virtual Machine in vSphere
You can create a virtual machine in vSphere from scratch or by cloning an existing VM. This procedure
describes creating a VM from scratch.
Prerequisites
n
Familiarize yourself with the custom configuration parameters for virtual machines. See Virtual
Machine Custom Configuration Parameters.
VMware, Inc. 16
Page 17

Setting Up Virtual Desktops in Horizon 7
Procedure
1 Log in to vSphere Client.
2 Select File > New > Virtual Machine to start the New Virtual Machine wizard.
3 Select Custom and configure custom configuration parameters.
4 Select Edit the virtual machine settings before completion and click Continue to configure
hardware settings.
a Add a CD/DVD drive, set the media type to use an ISO image file, select the ISO image file of an
appropriate operating system, and select Connect at power on.
b Set Power-on Boot Delay to 10,000 milliseconds.
5 Click Finish to create the virtual machine.
What to do next
Install the operating system.
Virtual Machine Custom Configuration Parameters
You can use virtual machine custom configuration parameters as baseline settings when you create a
virtual machine for remote desktop deployment.
You can change certain settings when you use Horizon Administrator to deploy desktop pools from the
virtual machine.
Table 3‑1. Custom Configuration Parameters
Parameter Description and Recommendations
Name and Location
Host/Cluster
Resource Pool
Datastore
Hardware Machine Version
The name and location of the virtual machine.
If you plan to use the virtual machine as a template, assign a generic name. The location
can be any folder within your datacenter inventory.
The ESXi server or cluster of server resources that will run the virtual machine.
If you plan to use the virtual machine as a template, the location of the initial virtual
machine does not necessarily specify where future virtual machines created from
template will reside.
If the physical ESXi server resources are divided into resource pools, you can assign
them to the virtual machine.
The location of files associated with the virtual machine.
The hardware machine version that is available depends on the ESXi version you are
running. As a best practice, select the latest available hardware machine version, which
provides the greatest virtual machine functionality. Certain Horizon 7 features require
minimum hardware machine versions.
Guest Operating System
CPUs
Memory
VMware, Inc. 17
The type of operating system that you will install in the virtual machine.
The number of virtual processors in the virtual machine.
For most guest operating systems, a single processor is sufficient.
The amount of memory to allocate to the virtual machine.
In most cases, 512MB is sufficient.
Page 18

Setting Up Virtual Desktops in Horizon 7
Table 3‑1. Custom Configuration Parameters (Continued)
Parameter Description and Recommendations
Network
SCSI Controller
The number of virtual network adapters (NICs) in the virtual machine.
One NIC is usually sufficient. The network name should be consistent across virtual
infrastructures. An incorrect network name in a template can cause failures during the
instance customization phases.
When you install Horizon Agent on a virtual machine that has more than one NIC, you
must configure the subnet that Horizon Agent uses. See Configure a Virtual Machine
with Multiple NICs for Horizon Agent for more information.
Important For Windows 7, Windows 8.*, Windows 10, Windows Server 2008 R2, and
Windows Server 2012 R2 operating systems, you must select the VMXNET 3 network
adapter. Using the default E1000 adapter can cause customization timeout errors on
virtual machines. To use the VMXNET 3 adapter, you must install a Microsoft hotfix:
For Windows 7 SP1, install the following hotfixes:
n
http://support.microsoft.com/kb/2550978
Install the hotfix before installing Horizon Agent. When installing the hotfix, if you
encounter Windows Update error 0x80070424, see https://support.microsoft.com/en-
us/kb/968002.
n
https://support.microsoft.com/en-au/kb/2578159
n
https://support.microsoft.com/en-au/kb/2661332
For more information on installing the hotfixes, see
http://kb.vmware.com/kb/2073945.
The type of SCSI adapter to use with the virtual machine.
For Windows 8/8.1 and Windows 7 guest operating systems, you should specify the LSI
Logic adapter. The LSI Logic adapter has improved performance and works better with
generic SCSI devices.
LSI Logic SAS is available only for virtual machines with hardware version 7 and later.
Select a Disk
The disk to use with the virtual machine.
Create a new virtual disk based on the amount of local storage that you decide to
allocate to each user. Allow enough storage space for the OS installation, patches, and
locally installed applications.
To reduce the need for disk space and management of local data, you should store the
user's information, profile, and documents on network shares rather than on a local disk.
Install a Guest Operating System
After you create a virtual machine, you must install a guest operating system.
Prerequisites
n
Verify that an ISO image file of the guest operating system is on a datastore on your ESXi server.
n
Verify that the CD/DVD drive in the virtual machine points to the ISO image file of the guest operating
system and that the CD/DVD drive is configured to connect at power on.
Procedure
1 In vSphere Client, log in to the vCenter Server system where the virtual machine resides.
VMware, Inc. 18
Page 19

Setting Up Virtual Desktops in Horizon 7
2 Right-click the virtual machine, select Power, and select Power On to start the virtual machine.
Because you configured the CD/DVD drive to point to the ISO image of the guest operating system
and to connect at power on, the guest operating system installation process begins automatically.
3 Click the Console tab and follow the installation instructions provided by the operating system
vendor.
4 Activate Windows.
What to do next
Prepare the guest operating system for Horizon 7 desktop deployment.
Prepare a Guest Operating System for Remote Desktop
Deployment
You must perform certain tasks to prepare a guest operating system for remote desktop deployment.
Prerequisites
n
Create a virtual machine and install a guest operating system.
n
Configure an Active Directory domain controller for your remote desktops. See the View Installation
document for more information.
n
To make sure that desktop users are added to the local Remote Desktop Users group of the virtual
machine, create a restricted Remote Desktop Users group in Active Directory. See the View
Installation document for more information.
n
Verify that Remote Desktop Services are started on the virtual machine. Remote Desktop Services
are required for Horizon Agent installation, SSO, and other Horizon 7 operations. You can disable
RDP access to your Horizon 7 desktops by configuring desktop pool settings and group policy
settings. See Prevent Access to Horizon 7 Desktops Through RDP.
n
Verify that you have administrative rights on the guest operating system.
n
On Windows Server operating systems, prepare the operating system for desktop use. See Prepare
Windows Server Operating Systems for Desktop Use.
n
If you intend to configure 3D graphics rendering for desktop pools, familiarize yourself with the
Enable 3D Support setting for virtual machines.
This setting is active on Windows 7 and later operating systems. On ESXi 5.1 and later hosts, you
can also select options that determine how the 3D renderer is managed on the ESXi host. For details,
see the vSphere Virtual Machine Administration document.
Procedure
1 In vSphere Client, log in to the vCenter Server system where the virtual machine resides.
2 Right-click the virtual machine, select Power, and select Power On to start the virtual machine.
VMware, Inc. 19
Page 20

Setting Up Virtual Desktops in Horizon 7
3 Right-click the virtual machine, select Guest, and select Install/Upgrade VMware Tools to install the
latest version of VMware Tools.
Note The virtual printing feature is supported only when you install it from Horizon Agent. Virtual
printing is not supported if you install it with VMware Tools.
4 Ensure that the virtual machine is synchronized to a reliable time source.
In general, guests can use the VMware Tools time synchronization method in preference to other
methods of time synchronization. The VMware Tools online help provides information on configuring
time synchronization between guest and host.
A Windows guest that is a member of a Windows domain synchronizes its time with its domain
controller using the Windows Time Service. For these guests, this is the appropriate time
synchronization method and VMware Tools time synchronization must not be used.
Guests must use only one method of time synchronization. For example, a Windows guest that is not
a member of a Windows domain must have its Windows Time Service disabled.
Important Hosts that are being relied upon for time synchronization must themselves be
synchronized to a reliable time source, using the built-in NTP client. Verify that all hosts in a cluster
use the same time source.
Note Windows domain controllers can use either VMware Tools time synchronization or another
reliable time source. All domain controllers within a forest and domain controllers across forests with
inter-forest trusts must be configured to use the same time source.
5 Install service packs and updates.
6 Install antivirus software.
7 Install other applications and software, such as smart card drivers if you are using smart card
authentication.
If you plan to use VMware Identity Manager to offer a catalog that includes ThinApp applications, you
must install VMware Identity Manager for Windows.
Important If you are installing Microsoft .NET Framework, you must install it after you install
Horizon Agent.
8 If Horizon Client devices will connect to the virtual machine with the PCoIP display protocol, set the
power option Turn off the display to Never.
If you do not disable this setting, the display will appear to freeze in its last state when power savings
mode starts.
VMware, Inc. 20
Page 21

Setting Up Virtual Desktops in Horizon 7
9 If Horizon Client devices will connect to the virtual machine with the PCoIP display protocol, go to
Control Panel > System > Advanced System Settings > Performance Settings and change the
setting for Visual Effects to Adjust for best performance.
If you instead use the setting called Adjust for best appearance or Let Windows choose what's
best for my computer and Windows chooses appearance instead of performance, performance is
negatively affected.
10 If a proxy server is used in your network environment, configure network proxy settings.
11 Configure network connection properties.
a Assign a static IP address or specify that an IP address is assigned by a DHCP server.
Horizon 7 does not support link-local (169.254.x.x) addresses for Horizon 7 desktops.
b Set the preferred and alternate DNS server addresses to your Active Directory server address.
12 (Optional) Join the virtual machine to the Active Directory domain for your remote desktops.
A parent or master image virtual machine for creating instant clones or View Composer linked clones
must either belong to the same Active Directory domain as the domain that the desktop machines will
join or be a member of a workgroup.
13 Configure Windows Firewall to allow Remote Desktop connections to the virtual machine.
14 (Optional) Disable Hot Plug PCI devices.
This step prevents users from accidentally disconnecting the virtual network device (vNIC) from the
virtual machine.
15 (Optional) Configure user customization scripts.
Prepare Windows Server Operating Systems for Desktop Use
To use a Windows Server 2008 R2, Windows Server 2012 R2, or Windows Server 2016 virtual machine
as a single-session virtual desktop (rather than as an RDS host), you must perform certain steps before
you install Horizon Agent in the virtual machine. You must also configure Horizon Administrator to treat
Windows Servers as supported operating systems for Horizon 7 desktop use.
Prerequisites
n
Familiarize yourself with the steps to install the Desktop Experience feature on Windows Server 2008
R2, Windows Server 2012 R2, or Windows Server 2016. See Install Desktop Experience on Windows
Server 2008 R2 or Install Desktop Experience on Windows Server 2012, 2012 R2, or 2016
n
On Windows Server 2012 R2 or Windows Server 2016 machines, familiarize yourself with the steps
to configure the Windows Firewall service to restart after failures occur. See Configure the Windows
Firewall Service to Restart After Failures.
VMware, Inc. 21
Page 22

Setting Up Virtual Desktops in Horizon 7
Procedure
1 Verify that the Remote Desktop Services role is not installed.
When the Remote Desktop Services role is not present, the Horizon Agent installer prompts you to
confirm that you want to install Horizon Agent in desktop mode. If the Remote Desktop Services role
is present, the Horizon Agent installer does not display this prompt and it treats the Windows Server
machine as an RDS host instead of a single-session Horizon 7 desktop.
2 Install Windows Server 2008 R2 Service Pack 1 (SP1), Windows Server 2012 R2, or Windows Server
2016.
If you do not install SP1 with Windows Server 2008 R2, an error occurs when you install
Horizon Agent.
3 (Optional) Install the Desktop Experience feature if you plan to use the following features.
n
HTML Access
n
Scanner redirection
n
Windows Aero
4 (Optional) To use Windows Aero on a Windows Server desktop, start the Themes service.
When you create or edit a desktop pool, you can configure 3D graphics rendering for your desktops.
The 3D Renderer setting offers a Software option that enables users to run Windows Aero on the
desktops in the pool.
5 On Windows Server 2012 R2 or Windows Server 2016 machines, configure the Windows Firewall
service to restart after failures occur.
6 Configure Horizon Administrator to treat Windows Servers as supported desktop operating systems.
If you do not perform this step, you cannot select Windows Server machines for desktop use in
Horizon Administrator.
a In Horizon Administrator, select View Configuration > Global Settings.
b In the General pane, click Edit.
c Select the Enable Windows Server desktops check box and click OK.
When you enable Windows Server desktops in Horizon Administrator, Horizon Administrator displays all
available Windows Server machines, including machines on which Connection Server is installed, as
potential machines for desktop use. You cannot install Horizon Agent on machines on which other
Horizon 7 software components are installed.
VMware, Inc. 22
Page 23

Setting Up Virtual Desktops in Horizon 7
Install Desktop Experience on Windows Server 2008 R2
For RDS desktops and applications, and for VDI desktops that are deployed on single-user virtual
machines that run Windows Server, scanner redirection requires that you install the Desktop Experience
feature on the RDS hosts and the single-user virtual machines.
Procedure
1 Log in as an administrator.
2 Start Server Manager.
3 Click Features.
4 Click Add Features.
5 On the Select Features page, select the Desktop Experience checkbox.
6 Review the information about other features that are required by the Desktop Experience feature, and
click Add Required Features.
7 Follow the prompts and finish the installation.
Install Desktop Experience on Windows Server 2012, 2012 R2, or
2016
For RDS desktops and applications, and for VDI desktops that are deployed on single-user virtual
machines that run Windows Server, scanner redirection requires that you install the Desktop Experience
feature on the RDS hosts and the single-user virtual machines.
Windows Server 2012, Windows Server 2012 R2, and Windows Server 2016 are supported on machines
that are used as RDS hosts. Windows Server 2012 R2 is supported on single-user virtual machines.
Procedure
1 Log in as an administrator.
2 Start Server Manager.
3 Select Add roles and features.
4 On the Select Installation Type page, select Role-based or feature-based installation.
5 On the Select Destination Server page, select a server.
6 On the Select Server Roles page, accept the default selection and click Next.
7 On the Select Features page, under User Interfaces and Infrastructure, select Desktop
Experience.
8 Follow the prompts and finish the installation.
VMware, Inc. 23
Page 24

Setting Up Virtual Desktops in Horizon 7
Configure the Windows Firewall Service to Restart After Failures
Some Windows Server 2012 R2, Windows 2016, Windows 8.1, and Windows 10 machines that are
deployed as single-session desktops do not become available immediately after they are provisioned.
This issue occurs when the Windows Firewall service does not restart after its timeout period expires. You
can configure the Windows Firewall service on the parent (master image) or template virtual machine to
ensure that all machines in a desktop pool become available.
If you encounter this issue during provisioning, the Windows event logs display the following error: The
Windows Firewall service terminated with the following service-specific error: This
operation returned because the timeout period expired.
This issue occurs on Windows Server 2012 R2, Windows 8.1, and Windows 10 machines. Other guest
operating systems are not affected.
Procedure
1 On the Windows Server 2012 R2, Windows 8.1, or Windows 10 parent (master image) or template
virtual machine from which you will deploy a desktop pool, select Control Panel > Administrative
Tools > Services.
2 In the Services dialog box, right-click the Windows Firewall service and select Properties.
3 In the Windows Firewall Properties dialog box, click the Recovery tab.
4 Select the recovery settings to restart the service after a failure occurs.
Setting Drop-down Menu Option
First failure: Restart the Service
Second failure: Restart the Service
Subsequent failures: Restart the Service
5 Select the Enable actions for stops with errors check box and click OK.
6 Deploy or redeploy the desktop pool from the parent (master image) or template virtual machine.
Install Horizon Agent on a Virtual Machine
You must install Horizon Agent on virtual machines that are managed by vCenter Server so that
Connection Server can communicate with them. Install Horizon Agent on all virtual machines that you use
as templates for full-clone desktop pools, parents for linked-clone desktop pools, master images for
instant-clone desktop pools, and machines in manual desktop pools.
To install Horizon Agent on multiple Windows virtual machines without having to respond to wizard
prompts, you can install Horizon Agent silently. See Install Horizon Agent Silently.
The Horizon Agent software cannot coexist on the same virtual or physical machine with other Horizon
software components, including security server, Connection Server, and View Composer. It can coexist
with Horizon Client.
VMware, Inc. 24
Page 25

Setting Up Virtual Desktops in Horizon 7
Prerequisites
n
Verify that you have prepared Active Directory. See the View Installation document.
n
Prepare the guest operating system for remote desktop deployment. See Prepare a Guest Operating
System for Remote Desktop Deployment.
n
To use a Windows Server virtual machine as a remote desktop (rather than as an RDS host), perform
the steps described in Prepare Windows Server Operating Systems for Desktop Use.
n
If the machine has the Microsoft Visual C++ Redistributable package installed, verify that the version
of the package is 2005 SP1 or later. If the package version is 2005 or earlier, you can either upgrade
or uninstall the package.
n
Download the Horizon Agent installer file from the VMware product page at
http://www.vmware.com/go/downloadview.
n
Verify that you have administrative rights on the virtual machine.
n
Familiarize yourself with the Horizon Agent custom setup options. See Horizon Agent Custom Setup
Options.
n
Familiarize yourself with the TCP ports that the Horizon Agent installation program opens on the
firewall. See the View Architecture Planning document for more information.
Procedure
1 To start the Horizon Agent installation program, double-click the installer file.
The installer filename is VMware-viewagent-y.y.y-xxxxxx.exe or VMware-viewagent-x86_64-
y.y.y-xxxxxx.exe, where y.y.y is the version number and xxxxxx is the build number.
2 Accept the VMware license terms.
3 If you install Horizon Agent on a Windows Server machine on which the Remote Desktop Services
(RDS) role is not installed, select Install VMware Horizon Agent in 'desktop mode'.
Selecting this option configures the Windows Server machine as a single-user virtual desktop rather
than as an RDS host. If you intend the machine to function as an RDS host, cancel the Horizon Agent
installation, install the RDS role on the machine, and restart the Horizon Agent installation.
4 Select the Internet Protocol (IP) version, IPv4 or IPv6.
You must install all View components with the same IP version.
5 Select whether to enable or disable FIPS mode.
This option is available only if FIPS mode is enabled in Windows.
6 Select your custom setup options.
To deploy View Composer linked-clone desktops, select the VMware Horizon View Composer
Agent option. To deploy instant-clone desktops, select the VMware Horizon Instant Clone Agent
option. You cannot select both of these options.
7 Accept or change the destination folder.
VMware, Inc. 25
Page 26

Setting Up Virtual Desktops in Horizon 7
8 Follow the prompts in the Horizon Agent installation program and finish the installation.
Note If you did not enable Remote Desktop support during guest operating system preparation, the
Horizon Agent installation program prompts you to enable it. If you do not enable Remote Desktop
support during Horizon Agent installation, you must enable it manually after the installation is finished.
9 If you selected the USB redirection option, restart the virtual machine to enable USB support.
In addition, the Found New Hardware wizard might start. Follow the prompts in the wizard to
configure the hardware before you restart the virtual machine.
What to do next
If the virtual machine has multiple NICs, configure the subnet that Horizon Agent uses. See Configure a
Virtual Machine with Multiple NICs for Horizon Agent.
Horizon Agent Custom Setup Options
When you install Horizon Agent on a virtual machine, you can select or deselect custom setup options. In
addition, Horizon Agent installs certain features automatically on all guest operating systems on which
they are supported. These features are not optional.
To learn which features are supported on which guest operating systems, see "Feature Support Matrix for
Horizon Agent" in the View Architecture Planning document.
To change custom setup options after you install the latest Horizon Agent version, you must uninstall and
reinstall Horizon Agent. For patches and upgrades, you can run the new Horizon Agent installer and
select a new set of options without uninstalling the previous version.
All custom setup options are selected by default except USB Redirection, Scanner Redirection,
Smartcard Redirection, Serial Port Redirection, Flash Redirection, Skype for Business, VMware Horizon
Instant Clone Agent, and HTML5 Multimedia Redirection.
Table 3‑2. Horizon Agent Custom Setup Options in an IPv4 Environment
Option Description
Core Installs the core functionality.
USB Redirection Gives users access to locally connected USB devices on their desktops.
USB redirection is supported on remote desktops that are deployed on single-user machines. In
addition, redirection of USB flash drives and hard disks is supported on RDS desktops and
applications.
This option is not selected by default. You must select the option to install it.
For guidance on using USB redirection securely, see the View Security guide. For example, you can
use group policy settings to disable USB redirection for specific users.
Real-Time Audio-Video Redirects webcam and audio devices that are connected to the client system so that they can be
used on the remote desktop.
Client Drive Redirection Allows Horizon Client users to share local drives with their remote desktops.
After this option is installed, no further configuration is required on the remote desktop.
Client Drive Redirection is also supported on RDS desktops and applications and on virtual machine
desktops that run on unmanaged machines.
VMware, Inc. 26
Page 27

Setting Up Virtual Desktops in Horizon 7
Table 3‑2. Horizon Agent Custom Setup Options in an IPv4 Environment (Continued)
Option Description
Virtual Printing Lets users print to any printer available on their client computers. Users do not have to install
additional drivers on their desktops.
Virtual printing is supported on the following remote desktops and applications:
n
Desktops that are deployed on single-user machines, including Windows desktop and Windows
Server machines.
n
Desktops that are deployed on RDS hosts, where the RDS hosts are virtual machines.
n
Remote applications.
n
Remote applications that are launched from Horizon Client inside remote desktops (nested
sessions).
The virtual printing feature is supported only when you install it from Horizon Agent. It is not
supported if you install it with VMware Tools.
vRealize Operations
Provides information that allows vRealize Operations for View to monitor View desktops.
Desktop Agent
VMware Horizon 7 Persona
Management
Synchronizes the user profile on the local desktop with a remote profile repository, so that users have
access to their profiles whenever they log in to a desktop.
Scanner Redirection Redirects scanning and imaging devices that are connected to the client system so that they can be
used on the remote desktop or application.
This option is not selected by default. You must select the option to install it.
VMware Client IP
Transparency
Enables remote connections to Internet Explorer to use the Client's IP address instead of the remote
desktop machine's IP address.
This setup option is not selected by default. You must select the option to install it.
Smartcard Redirection Lets users authenticate with smart cards when they use the PCoIP or Blast Extreme display protocol.
This option is not selected by default.
Smartcard Redirection is supported on remote desktops that are deployed on single-user machines.
Serial Port Redirection Redirects serial COM ports that are connected to the client system so that they can be used on the
remote desktop.
This option is not selected by default. You must select the option to install it.
Serial port redirection is supported on remote desktops that are deployed on single-user machines.
VMware Audio Provides a virtual audio driver on the remote desktop.
Flash Redirection Redirects Flash multimedia content in an Internet Explorer 9, 10, or 11 browser to the client, for
performance optimization.
HTML5 Multimedia
Redirects HTML5 multimedia content in a Chrome browser to the client, for performance optimization.
Redirection
URL Content Redirection Redirects URL content in an Internet Explorer 9, 10, or 11 browser from client-to-client, for
performance optimization.
VMware Horizon View
Composer Agent
VMware Horizon Instant
Clone Agent
Lets this virtual machine be the parent VM of a View Composer linked-clone desktop pool. If you
select this option, you cannot select the VMware Horizon Instant Clone Agent option.
Lets this virtual machine be the parent VM of an instant-clone desktop pool. This option is not
selected by default. If you select this option, you cannot select the VMware Horizon View Composer
Agent option.
VMware, Inc. 27
Page 28

Setting Up Virtual Desktops in Horizon 7
Table 3‑2. Horizon Agent Custom Setup Options in an IPv4 Environment (Continued)
Option Description
Local Printer Redirection Local printer redirection is designed for the following use cases:
n
Printers directly connected to USB or serial ports on the client device
n
Specialized printers such as bar code printers and label printers connected to the client
n
Network printers on a remote network that are not addressable from the virtual session.
VMware Virtualization Pack
for Skype for Business
Makes optimized audio and video calls with Skype for Business inside a virtual desktop. This option is
not selected by default. You must select the option to install it.
In an IPv6 environment, Core, VMware Horizon View Composer Agent, Virtual Printing, and VMware
Audio options are selected and installed by default.
Table 3‑3. Horizon Agent Features That Are Installed Automatically (Not Optional)
Feature Description
PCoIP Agent Lets users connect to the View desktop using the PCoIP display
protocol.
Installing the PCoIP Agent feature disables sleep mode on
Windows desktops. When a user navigates to the Power
Options or Shut Down menu, sleep mode or standby mode is
inactive. Desktops do not go into sleep or standby mode after a
default period of inactivity. Desktops remain in active mode.
Windows Media Multimedia Redirection (MMR) Extends multimedia redirection to Windows 7 and later desktops
and clients. This feature delivers a multimedia stream directly to
the client computer, allowing the multimedia stream to be
processed on the client hardware instead of the remote ESXi
host.
Unity Touch Allows tablet and smart phone users to interact easily with
Windows applications that run on the remote desktop. Users can
browse, search, and open Windows applications and files,
choose favorite applications and files, and switch between
running applications, all without using the Start menu or Taskbar.
Virtual video driver Provides a virtual video driver on the remote desktop.
VMware Blast Installs the VMware Blast display protocol on remote desktops.
Core Installs the core functionality.
PSG Agent Installs the PCoIP Secure Gateway on remote desktops to
implement the PCoIP display protocol.
Install Horizon Agent Silently
You can use the silent installation feature of the Microsoft Windows Installer (MSI) to install Horizon Agent
on several Windows virtual machines or physical computers. In a silent installation, you use the command
line and do not have to respond to wizard prompts.
With silent installation, you can efficiently deploy View components in a large enterprise.
VMware, Inc. 28
Page 29

Setting Up Virtual Desktops in Horizon 7
If you do not want to install all features that are installed automatically or by default, you can use the
ADDLOCAL MSI property to selectively install individual setup options and features. For details about the
ADDLOCAL property, see Table 3‑5.
Prerequisites
n
Verify that you have prepared Active Directory. See the View Installation document.
n
Prepare the guest operating system for desktop deployment. See Prepare a Guest Operating System
for Remote Desktop Deployment.
n
To use Windows Server as a single-session remote desktop (rather than as an RDS host), perform
the steps described in Prepare Windows Server Operating Systems for Desktop Use.
n
If the machine has the Microsoft Visual C++ Redistributable package installed, verify that the version
of the package is 2005 SP1 or later. If the package version is 2005 or earlier, you can either upgrade
or uninstall the package.
n
Download the Horizon Agent installer file from the VMware product page at
http://www.vmware.com/go/downloadview.
The installer filename is VMware-viewagent-y.y.y-xxxxxx.exe or VMware-viewagent-x86_64-
y.y.y-xxxxxx.exe, where y.y.y is the version number and xxxxxx is the build number.
n
Verify that you have administrative rights on the virtual machine or physical PC.
n
Familiarize yourself with the Horizon Agent custom setup options. See Horizon Agent Custom Setup
Options.
n
Familiarize yourself with the MSI installer command-line options. See Microsoft Windows Installer
Command-Line Options.
n
Familiarize yourself with the silent installation properties available with Horizon Agent. See Silent
Installation Properties for Horizon Agent.
n
Familiarize yourself with the TCP ports that the Horizon Agent installation program opens on the
firewall. See the View Architecture Planning document for more information.
n
Verify that the latest Windows Update patches are installed on the guest operating systems on which
you plan to install Horizon Agent silently. In certain cases, an interactive installation by an
administrator might be required to execute pending Windows Update patches. Verify that all OS
operations and subsequent reboots are completed.
Procedure
1 Open a Windows command prompt on the virtual machine or physical PC.
VMware, Inc. 29
Page 30

Setting Up Virtual Desktops in Horizon 7
2 Type the installation command on one line.
The following example installs Horizon Agent with the components Core, VMware Blast, PCoIP, Unity
Touch, VmVideo, PSG, View Composer Agent, Virtual Printing, USB redirection, and Real-Time
Audio-Video components.
VMware-viewagent-y.y.y-xxxxxx.exe /s /v"/qn VDM_VC_MANAGED_AGENT=1
ADDLOCAL=Core,SVIAgent,ThinPrint,USB,RTAV"
The following example installs Horizon Agent on an unmanaged computer and registers the desktop
with the specified View Connection Server, cs1.companydomain.com. In addition, the installer installs
the Core, VMware Blast, PCoIP, Unity Touch, VmVideo, PSG, Virtual Printing, and USB redirection
components.
VMware-viewagent-y.y.y-xxxxxx.exe /s /v"/qn VDM_VC_MANAGED_AGENT=0
VDM_SERVER_NAME=cs1.companydomain.com VDM_SERVER_USERNAME=admin.companydomain.com
VDM_SERVER_PASSWORD=secret ADDLOCAL=Core,ThinPrint,USB"
If you install Horizon Agent on a Windows Server machine, and you intend to configure the machine
as a single-user View desktop rather than as an RDS host, you must include the
VDM_FORCE_DESKTOP_AGENT=1 property in the installation command. This requirement applies to
machines that are managed by vCenter Server and unmanaged machines.
What to do next
If the virtual machine has multiple NICs, configure the subnet that Horizon Agent uses. See Configure a
Virtual Machine with Multiple NICs for Horizon Agent.
Microsoft Windows Installer Command-Line Options
To install Horizon 7 components silently, you must use Microsoft Windows Installer (MSI) command-line
options and properties. The Horizon 7 component installers are MSI programs and use standard MSI
features.
For details about MSI, see the Microsoft Web site. For MSI command-line options, see the Microsoft
Developer Network (MSDN) Library Web site and search for MSI command-line options. To see MSI
command-line usage, you can open a command prompt on the Horizon 7 component computer and type
msiexec /?.
To run a Horizon 7 component installer silently, you begin by silencing the bootstrap program that extracts
the installer into a temporary directory and starts an interactive installation.
At the command line, you must enter command-line options that control the installer's bootstrap program.
VMware, Inc. 30
Page 31

Setting Up Virtual Desktops in Horizon 7
Table 3‑4. Command-Line Options for a Horizon 7 Component's Bootstrap Program
Option Description
/s
/v"
MSI_command_line_options"
Disables the bootstrap splash screen and extraction dialog, which prevents the display of
interactive dialogs.
For example: VMware-viewconnectionserver-y.y.y-xxxxxx.exe /s
The /s option is required to run a silent installation.
Instructs the installer to pass the double-quote-enclosed string that you enter at the command
line as a set of options for MSI to interpret. You must enclose your command-line entries
between double quotes. Place a double quote after the /v and at the end of the command
line.
For example: VMware-viewagent-y.y.y-xxxxxx.exe /s /v"command_line_options"
To instruct the MSI installer to interpret a string that contains spaces, enclose the string in two
sets of double quotes. For example, you might want to install the Horizon 7 component in an
installation path name that contains spaces.
For example: VMware-viewconnectionserver-y.y.y-
xxxxxx.exe /s /v"command_line_options INSTALLDIR=""d:\abc\my folder"""
In this example, the MSI installer passes on the installation-directory path and does not
attempt to interpret the string as two command-line options. Note the final double quote that
encloses the entire command line.
The /v"command_line_options" option is required to run a silent installation.
You control the remainder of a silent installation by passing command-line options and MSI property
values to the MSI installer, msiexec.exe. The MSI installer includes the Horizon 7 component's
installation code. The installer uses the values and options that you enter in the command line to interpret
installation choices and setup options that are specific to the Horizon 7 component.
Table 3‑5. MSI Command-Line Options and MSI Properties
MSI Option or
Property Description
/qn
INSTALLDIR
Instructs the MSI installer not to display the installer wizard pages.
For example, you might want to install Horizon Agent silently and use only default setup options and
features:
VMware-viewagent-y.y.y-xxxxxx.exe /s /v"/qn"
Alternatively, you can use the /qb option to display a basic progress dialog box in a noninteractive,
automated installation.
The /qn or /qb option is required to run a silent installation.
For information about additional /q parameters, see the Microsoft Dev Center website.
Specifies an alternative installation path for the Horizon 7 component.
Use the format INSTALLDIR=path to specify an installation path. You can ignore this MSI property if you
want to install the Horizon 7 component in the default path.
This MSI property is optional.
VMware, Inc. 31
Page 32

Setting Up Virtual Desktops in Horizon 7
Table 3‑5. MSI Command-Line Options and MSI Properties (Continued)
MSI Option or
Property Description
ADDLOCAL
Determines the component-specific options to install.
In an interactive installation, the Horizon 7 installer displays custom setup options that you can select or
deselect. In a silent installation, you can use the ADDLOCAL property to selectively install individual setup
options by specifying the options on the command line. Options that you do not explicitly specify are not
installed.
In both interactive and silent installations, the Horizon 7 installer automatically installs certain features.
You cannot use ADDLOCAL to control whether or not to install these non-optional features.
Type ADDLOCAL=ALL to install all custom setup options that can be installed during an interactive
installation, including those that are installed by default and those that you must select to install, except
NGVC. NGVC and SVIAgent are mutually exclusive.
The following example installs Core, BlastProtocol, PCoIP, UnityTouch, VmVideo, PSG, and all features
that are supported on the guest operating system: VMware-viewagent-y.y.y-xxxxxx.exe /s /v"/qn
ADDLOCAL=ALL"
If you do not use the ADDLOCAL property, the custom setup options that are installed by default and the
automatically installed features are installed. Custom setup options that are off (unselected) by default are
not installed.
The following example installs Core, BlastProtocol, PCoIP, UnityTouch, VmVideo, PSG, and the on-by-
default custom setup options that are supported on the guest operating system: VMware-viewagent-
y.y.y-xxxxxx.exe /s /v"/qn"
To specify individual setup options, type a comma-separated list of setup option names. Do not use
spaces between names. Use the format ADDLOCAL=value,value,value....
You must include Core when you use the ADDLOCAL=value,value,value... property.
The following example installs Horizon Agent with the Core, BlastProtocol, PCoIP, UnityTouch, VmVideo,
PSG, Instant Clone Agent, and Virtual Printing features:
VMware-viewagent-y.y.y-xxxxxx.exe /s /v"/qn ADDLOCAL=Core,NGVC,ThinPrint"
The preceding example does not install other components, even those that are installed by default
interactively.
The ADDLOCAL MSI property is optional.
REBOOT
/l*v log_file
VMware, Inc. 32
You can use the REBOOT=ReallySuppress option to allow system configuration tasks to complete before
the system reboots.
This MSI property is optional.
Writes logging information into the specified log file with verbose output.
For example: /l*v ""%TEMP%\vmmsi.log""
This example generates a detailed log file that is similar to the log generated during an interactive
installation.
You can use this option to record custom features that might apply uniquely to your installation. You can
use the recorded information to specify installation features in future silent installations.
The /l*v option is optional.
Page 33

Setting Up Virtual Desktops in Horizon 7
Silent Installation Properties for Horizon Agent
You can include specific properties when you silently install Horizon Agent from the command line. You
must use a PROPERTY=value format so that Microsoft Windows Installer (MSI) can interpret the properties
and values.
Table 3‑6 shows the Horizon Agent silent installation properties that you can use at the command-line.
Table 3‑6. MSI Properties for Silently Installing Horizon Agent
MSI Property Description Default Value
INSTALLDIR
RDP_CHOICE
SUPPRESS_RUNONCE_CHECK
URL_FILTERING_ENABLED
The path and folder in which the Horizon Agent software is
installed.
For example: INSTALLDIR=""D:\abc\my folder""
The sets of two double quotes that enclose the path permit the MSI
installer to ignore the space in the path.
This MSI property is optional.
Determines whether to enable Remote Desktop Protocol (RDP) on
the desktop.
A value of 1 enables RDP. A value of 0 leaves the RDP setting
disabled.
This MSI property is optional.
Ignores pending Windows Update tasks scheduled at the next OS
reboot in
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
and RunOnceEx keys. Using this flag allows concurrent installation
but does not guarantee the installation outcome when the system
updates affect the Horizon Agent run-time dependencies.
This MSI property is optional.
Specifies whether the URL Content Redirection feature is installed.
A value of 1 installs the feature. You must then use group policy
settings to configure which URLs to redirect. See "Configuring URL
Content Redirection in the Configuring Remote Desktop Features
in Horizon 7 document.
This MSI property is optional.
%ProgramFiles
%\VMware\VMware
View\Agent
1
None
0
VDM_SKIP_BROKER_REGISTRATION
VDM_VC_MANAGED_AGENT
VMware, Inc. 33
A value of 1 skips unmanaged desktops. None
Determines whether vCenter Server manages the virtual machine
on which Horizon Agent is installed.
A value of 1 configures the desktop as a vCenter Server-managed
virtual machine.
A value of 0 configures the desktop as unmanaged by vCenter
Server.
This MSI property is required.
None
Page 34

Setting Up Virtual Desktops in Horizon 7
Table 3‑6. MSI Properties for Silently Installing Horizon Agent (Continued)
MSI Property Description Default Value
VDM_SERVER_NAME
VDM_SERVER_USERNAME
VDM_SERVER_PASSWORD
VDM_IP_PROTOCOL_USAGE
The host name or IP address of the View Connection Server
computer on which the Horizon Agent installer registers an
unmanaged desktop. This property applies to unmanaged desktops
only.
For example: VDM_SERVER_NAME=10.123.01.01
This MSI property is required for unmanaged desktops.
Do not use this MSI property for virtual-machine desktops that are
managed by vCenter Server.
The user name of the administrator on the View Connection Server
computer. This MSI property applies to unmanaged desktops only.
For example: VDM_SERVER_USERNAME=domain\username
This MSI property is required for unmanaged desktops.
Do not use this MSI property for virtual-machine desktops that are
managed by vCenter Server.
The View Connection Server administrator user password.
For example: VDM_SERVER_PASSWORD=secret
This MSI property is required for unmanaged desktops.
Do not use this MSI property for virtual-machine desktops that are
managed by vCenter Server.
Specifies the IP version that Horizon Agent uses. The possible
values are IPv4 and IPv6.
None
None
None
IPv4
VDM_FIPS_ENABLED
VDM_FLASH_URL_REDIRECTION
INSTALL_VDISPLAY_DRIVER
Specifies whether to enable or disable FIPS mode. A value of 1
enables FIPS mode. A value of 0 disables FIPS mode. If this
property is set to 1 and Windows is not in FIPS mode, the installer
will abort.
Determines whether Horizon Agent can install the Flash URL
redirection feature. Specify 1 to enable installation or 0 to disable
installation.
This MSI property is optional.
Configures the Horizon WDDM display driver. A value of 1 enables
the driver installation. A value of 0 or empty disables the driver
installation
0
0
0
In a silent installation command, you can use the MSI property, ADDLOCAL=, to specify options that the
Horizon Agent installer configures.
Table 3‑7 shows the Horizon Agent options you can type at the command line. These options have
corresponding setup options that you can deselect or select during an interactive installation.
For details about the custom setup options, seeHorizon Agent Custom Setup Options.
When you do not use the ADDLOCAL property at the command line, Horizon Agent installs all options that
are installed by default during an interactive installation, if they are supported on the guest operating
system. When you use ADDLOCAL=ALL, Horizon Agent installs all of the following options, both on-by-
default and off-by-default, if they are supported on the guest operating system, except NGVC. NGVC and
SVIAgent are mutually exclusive. To install NGVC, you must specify it explicitly.
VMware, Inc. 34
Page 35

Setting Up Virtual Desktops in Horizon 7
For details, see the ADDLOCAL table entry in Microsoft Windows Installer Command-Line Options.
Table 3‑7. Horizon Agent Silent Installation Options and Interactive Custom Setup Options
Custom Setup Option in an Interactive
Silent Installation Option
Core Core Yes
USB USB Redirection No
SVIAgent View Composer Agent Yes
NGVC Instant Clone Agent No
RTAV Real-Time Audio-Video Yes
ClientDriveRedirection Client Drive Redirection Yes
SerialPortRedirection Serial Port Redirection No
ScannerRedirection Scanner Redirection No
FlashURLRedirection Flash URL Redirection
FLASHMMR
ThinPrint Virtual Printing Yes
V4V vRealize Operations Desktop Agent Yes
Installation
This feature is hidden unless you use the
VDM_FLASH_URL_REDIRECTION=1 property on
the command line.
Specifies whether to enable the Flash
Redirection feature.
Installed by Default Interactively or When
ADDLOCAL Is Not Used
No
No
VPA View Persona Management Yes
SmartCard PCoIP Smartcard. This feature is not installed by
default in an interactive installation.
VmwVaudio VMware Audio (virtual audio driver) Yes
TSMMR Windows Media Multimedia Redirection (MMR) Yes
RDP This feature enables RDP in the registry if you
use the RDP_CHOICE=1 property on the command
line or select RDP as the default display protocol
when you create or edit a desktop pool in View
Administrator.
This feature is hidden during interactive
installations.
VMWMediaProviderProxy VMware Virtualization Pack for Skype for
Business feature.
No
Yes
No
If you use ADDLOCAL to specify features individually, that is, you do not specify ADDLOCAL=ALL, you must
always specify Core.
VMware, Inc. 35
Page 36

Setting Up Virtual Desktops in Horizon 7
Table 3‑8. Horizon Agent Silent Installation Features That Are Installed Automatically
Silent Installation Feature Description
Core The core Horizon Agent functions.
If you specify ADDLOCAL=ALL, the Core features are installed.
BlastProtocol VMware Blast
PCoIP PCoIP Protocol Agent
VmVideo Virtual video driver
UnityTouch Unity Touch
PSG This features sets a registry entry that tells Connection Server whether
Horizon Agent is using IPv4 or IPv6.
You install the Flash URL Redirection feature by using the VDM_FLASH_URL_REDIRECTION=1 property in a
silent installation. This feature is not installed during an interactive installation or by using ADDLOCAL=ALL
in a silent installation.
For example: VMware-viewagent-y.y.y-xxxxxx.exe /s /v"/qn VDM_VC_MANAGED_AGENT=1
VDM_FLASH_URL_REDIRECTION=1
ADDLOCAL=Core,SVIAgent,ThinPrint,USB,FlashURLRedirection,RTAV"
Configure a Virtual Machine with Multiple NICs for
Horizon Agent
When you install Horizon Agent on a virtual machine that has more than one NIC, you must configure the
subnet that Horizon Agent uses. The subnet determines which network address Horizon Agent provides
to the Connection Server instance for client protocol connections.
Procedure
u
On the virtual machine on which Horizon Agent is installed, open a command prompt, type
regedit.exe and create a registry entry to configure the subnet.
For example, in an IPv4 network:
HKLM\Software\VMware, Inc.\VMware VDM\IpPrefix = n.n.n.n/m (REG_SZ)
In this example, n.n.n.n is the TCP/IP subnet and m is the number of bits in the subnet mask.
Note In releases earlier than Horizon 6 version 6.1, this registry path was
HKLM\Software\VMware, Inc.\VMware VDM\Node Manager\subnet = n.n.n.n/m (REG_SZ).
The old registry setting is not used with View Agent 6.1 or later. If you upgrade View Agent from an
earlier release to version 6.1 or later, make sure to use the current registry setting.
VMware, Inc. 36
Page 37

Setting Up Virtual Desktops in Horizon 7
Optimize Guest Operating System Performance
You can perform certain steps to optimize guest operating system performance for remote desktop
deployment. All of the steps are optional.
These recommendations include turning off the screen saver and not specifying a sleep timer. Your
organization might require the use of screen savers. For example, you might have a GPO-managed
security policy that locks a desktop a certain time after the screen saver starts. In this case, use a blank
screen saver.
Prerequisites
n
Prepare a guest operating system for remote desktop deployment.
n
Familiarize yourself with the procedure for disabling the Windows Customer Experience Improvement
Program. See Disable the Windows Customer Experience Improvement Program.
Procedure
n
Disable any unused ports, such as COM1, COM2, and LPT.
n
Adjust display properties.
a Choose a basic theme.
b Set the background to a solid color.
c Set the screen saver to None.
d Verify that hardware acceleration is enabled.
n
Select a high-performance power option and do not specify a sleep timer.
n
Disable the Indexing Service component.
Note Indexing improves searches by cataloging files. Do not disable this feature for users who
search often.
n
Remove or minimize System Restore points.
n
Turn off system protection on C:\.
n
Disable any unnecessary services.
n
Set the sound scheme to No Sounds.
n
Set visual effects to Adjust for best performance.
n
Open Windows Media Player and use the default settings.
n
Turn off automatic computer maintenance.
n
Adjust performance settings for best performance.
n
Delete any hidden uninstall folders in C:\Windows, such $NtUninstallKB893756$.
VMware, Inc. 37
Page 38

Setting Up Virtual Desktops in Horizon 7
n
Delete all event logs.
n
Run Disk Cleanup to remove temporary files, empty the Recycle Bin, and remove system files and
other items that are no longer needed.
n
Run Disk Defragmenter to rearrange fragmented data.
n
Uninstall Tablet PC Components, unless this feature is needed.
n
Disable IPv6, unless it is needed.
n
Use the File System Utility (fsutil) command to disable the setting that keeps track of the last time
a file was accessed.
For example: fsutil behavior set disablelastaccess 1
n
Start the Registry Editor (regedit.exe) and change the TimeOutValue REG_DWORD in
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Disk to 0x000000be(190).
n
Turn off the Windows Customer Experience Improvement Program and disable related tasks from the
Task Scheduler.
n
Restart Windows after you make the above changes.
What to do next
See Optimizing Windows for Instant-Clone and View Composer Linked-Clone Virtual Machines for
information on disabling certain Windows services and tasks to reduce the growth of instant clones and
View Composer linked clones. Disabling certain services and tasks can also result in performance
benefits for full virtual machines.
Disable the Windows Customer Experience Improvement
Program
Disabling the Windows Customer Experience Improvement Program and the related Task Scheduler
tasks that control this program can improve Windows 7, Windows 8/8.1, and Windows 10 system
performance in large desktop pools.
The following steps apply to Windows 7 and Windows 8. The steps might vary on different Windows
operating systems.
Procedure
1 In the Windows 7 or Windows 8 guest operating system, start the control panel and click Action
Center > Change Action Center settings.
2 Click Customer Experience Improvement Program settings.
3 Select No, I don't want to participate in the program and click Save changes.
4 Start the control panel and click Administrative Tools > Task Scheduler.
5 In the Task Scheduler (Local) pane of the Task Scheduler dialog box, expand the Task Scheduler
Library > Microsoft > Windows nodes and open the Application Experience folder.
VMware, Inc. 38
Page 39

Setting Up Virtual Desktops in Horizon 7
6 Disable the AITAgent, ProgramDataUpdater, and if available, Microsoft Compatibility Appraiser
tasks.
7 In the Task Scheduler Library > Microsoft > Windows node, open the Customer Experience
Improvement Program folder.
8 Disable the Consolidator, KernelCEIPTask, and UsbCEIP tasks.
9 In the Task Scheduler Library > Microsoft > Windows node, open the Autochk folder.
10 Disable the Proxy task.
What to do next
Perform other Windows optimization tasks. See Optimize Guest Operating System Performance.
Optimizing Windows for Instant-Clone and View
Composer Linked-Clone Virtual Machines
By disabling certain Windows 7, Windows 8/8.1, and Windows 10 services and tasks, you can reduce the
growth in disk usage of instant clones and View Composer linked clones. Disabling certain services and
tasks can also result in performance benefits for full virtual machines.
Benefits of Disabling Windows Services and Tasks
Windows 7, Windows 8/8.1, and Windows 10 schedule services and tasks that can cause instant clones
and View Composer linked clones to grow, even when the machines are idle. The incremental growth of
the OS disk can undo the storage savings that you achieve when you first create the clones. You can
reduce growth in disk size by disabling these Windows services.
Windows guest operating systems schedule services such as disk defragmentation to run by default.
These services run in the background if you do not disable them.
Services that affect OS disk growth also generate input/output operations. Disabling these services can
reduce IOPS (input/output operations per second) and improve performance for any type of desktop
machines.
These best practices for optimizing Windows apply to most user environments. However, you must
evaluate the effect of disabling each service on your users, applications, and desktops. You might require
certain services to stay active.
For example, disabling Windows Update Service makes sense for instant clones because the OS is
refreshed each time a user logs off, and for View Composer linked clones if you refresh or recompose
regularly.
VMware, Inc. 39
Page 40

Setting Up Virtual Desktops in Horizon 7
Windows Services and Tasks That Cause Disk Growth in Instant
Clones and Linked Clones
Certain services and tasks in Windows 7, Windows 8/8.1, and Windows 10 can cause the OS disk of an
instant clone or a View Composer linked clone to grow incrementally, even when the machine is idle. If
you disable these services and tasks, you can control the OS disk growth.
Services that affect OS disk growth also generate I/O operations. You can evaluate the benefits of
disabling these services for full clones as well.
Before you disable the Windows services that are shown in Table 3‑9, verify that you took the optimization
steps in Optimize Guest Operating System Performance.
Table 3‑9. Impact of Windows Services and Tasks on OS Disk Growth and IOPS
Default
Service or Task Description
Occurrence or
Startup
Impact on OS
Disk Impact on IOPS
Turn Off This
Service or Task?
Windows
Hibernation
Windows Scheduled
Disk
Defragmentation
Provides a power-
saving state by
storing open
documents and
programs in a file
before the
computer is
powered off. The
file is reloaded into
memory when the
computer is
restarted, restoring
the state when the
hibernation was
invoked.
Disk
defragmentation is
scheduled as a
background
process.
Default power-plan
settings disable
hibernation.
Once a week High.
High.
By default, the size
of the hibernation
file,
hiberfil.sys, is
the same as the
installed RAM on
the virtual
machine. This
feature affects all
guest operating
systems.
Repeated
defragmentation
operations can
increase the size
of the OS disk by
several GB and do
little to make disk
access more
efficient .
High.
When hibernation
is triggered, the
system writes a
hiberfil.sys file
the size of the
installed RAM.
High Yes
Yes
Hibernation
provides no benefit
in a virtual
environment.
For instructions, see
Disable Windows
Hibernation in the
Parent Virtual
Machine.
VMware, Inc. 40
Page 41

Setting Up Virtual Desktops in Horizon 7
Table 3‑9. Impact of Windows Services and Tasks on OS Disk Growth and IOPS (Continued)
Default
Service or Task Description
Occurrence or
Startup
Impact on OS
Disk Impact on IOPS
Turn Off This
Service or Task?
Windows Update
Service
Windows Diagnostic
Policy Service
Prefetch/Superfetch Stores specific
Detects,
downloads, and
installs updates for
Windows and
other programs.
Detects,
troubleshoots, and
resolves problems
in Windows
components. If you
stop this service,
diagnostics no
longer function.
information about
applications that
you run to help
them start faster.
Automatic startup Medium to high.
Causes frequent
writes to the OS
disk because
update checks
occur often. The
impact depends on
the updates that
are downloaded.
Automatic startup Medium to high.
The service is
triggered on
demand. The write
frequency varies,
depending on
demand.
Always on, unless
it is disabled.
Medium
Causes periodic
updates to its
layout and
database
information and
individual prefetch
files, which are
generated on
demand.
Medium to high Yes, for instant
clones, and for View
Composer linked
clones that you
refresh or
recompose
regularly.
Small to medium Yes, if you do not
need the diagnostic
tools to function on
the desktops.
Medium Yes, if application
startup times are
acceptable after you
disable this feature.
Windows Registry
Backup
(RegIdleBackup)
System Restore Reverts the
VMware, Inc. 41
Automatically
backs up the
Windows registry
when the system
is idle.
Windows system
to a previous,
healthy state.
Every 10 days at
12:00 am
When Windows
starts up and once
a day thereafter.
Medium.
Each time this task
runs, it generates
registry backup
files.
Small to medium.
Captures a system
restore point
whenever the
system detects
that it is needed.
Medium. Yes. Both instant
clones and View
Composer linked
clones let you revert
to a snapshot and
achieve the goal of
restoring the
registry.
No major impact. Yes. Both instant
clones and View
Composer linked
clones let you revert
to a healthy state.
Page 42

Setting Up Virtual Desktops in Horizon 7
Table 3‑9. Impact of Windows Services and Tasks on OS Disk Growth and IOPS (Continued)
Default
Service or Task Description
Occurrence or
Startup
Impact on OS
Disk Impact on IOPS
Turn Off This
Service or Task?
Windows Defender Provides anti-
spyware features.
Microsoft Feeds
Synchronization
task
(msfeedssync.exe)
Periodically
updates RSS
feeds in Windows
Internet Explorer
Web browsers.
This task updates
RSS feeds that
have automatic
RSS feeds
synchronization
turned on. The
process appears in
Windows Task
Manager only
when Internet
Explorer is
running.
When Windows
starts up. Performs
a quick scan once
a day. Checks for
updates before
each scan.
Once a day. Medium.
Medium to high.
Performs definition
updates,
scheduled scans,
and scans that are
started on
demand.
Affects OS-disk
growth if persistent
disks are not
configured. If
persistent disks
are configured, the
impact is diverted
to the persistent
disks.
Medium to high. Yes, if other anti-
spyware software is
installed.
Medium Yes, if your users do
not require
automatic RSS feed
updates on their
desktops.
Disable Scheduled Disk Defragmentation on a Windows Parent
Virtual Machine
When you prepare a parent or master image virtual machine for instant clones or View Composer linked
clones, it is recommended that you disable scheduled defragmentation. Windows schedule weekly disk
defragmentations by default. Defragmentation significantly increase the size of a clone's virtual disk and
does not make disk access more efficient for instant clones or View Composer linked clones.
The clones share the parent or master image virtual machine's OS disk but each clone maintains
changes to the file system in its own virtual disk. Any activity, including defragmentation, will increase the
size of each clone's individual virtual disk and therefore increase storage consumption. As a best practice,
defragment the parent or master image virtual machine before you take a snapshot and create the pool.
The following steps apply to Windows 7 and Windows 8. The steps might vary on different Windows
operating systems.
Procedure
1 In vSphere Client, select the parent virtual machine and select Open Console.
2 Log in as an administrator.
VMware, Inc. 42
Page 43

Setting Up Virtual Desktops in Horizon 7
3 Click Start and type defrag in the Search programs and files box.
4 In the Programs pane, click Disk Defragmenter.
5 In the Disk Defragmenter dialog box, click Defragment disk.
The Disk Defragmenter consolidates defragmented files on the virtual machine's hard disk.
6 In the Disk Defragmenter dialog box, click Configure schedule.
7 Deselect Run on a schedule (recommended) and click OK.
Disable Windows Update
Disabling the Windows Update feature avoids some I/O operations to the file system and can reduce the
growth of an instant clone's or a View Composer linked clone's virtual disk.
Evaluate the needs of your environment before disabling Windows Update. If you disable this feature, you
can manually download the updates to the parent or master image virtual machine and then use the
push-image operation for instant clones or recompose for View Composer linked clones to apply the
updates to all the clones.
The following steps apply to Windows 7 and Windows 8. The steps might vary on different Windows
operating systems.
Procedure
1 In vSphere Client, select the parent virtual machine and select Open Console.
2 Log in as an administrator.
3 Click Start > Control Panel > System and Security > Turn automatic updating on or off.
4 In the Important updates menu, select Never check for updates.
5 Deselect Give me recommended updates the same way I receive important updates.
6 Deselect Allow all users to install updates on this computer and click OK.
Disable the Diagnostic Policy Service on Windows Virtual
Machines
Disabling the Windows Diagnostic Policy Service avoids some I/O operations to the file system and can
reduce the growth of an instant clone's or a View Composer linked clone's virtual disk.
Do no disable the Windows Diagnostic Policy Service if your users require the diagnostic tools on their
desktops.
The following steps apply to Windows 7 and Windows 8. The steps might vary on different Windows
operating systems.
Procedure
1 In vSphere Client, select the parent virtual machine and select Open Console.
2 Log in as an administrator.
VMware, Inc. 43
Page 44

Setting Up Virtual Desktops in Horizon 7
3 Click Start > Control Panel > System and Security > Administrative Tools.
4 Select Services and click Open.
5 Double-click Diagnostic Policy Service.
6 In the Diagnostic Policy Service Properties (Local Computer) dialog, click Stop.
7 In the Startup type menu, select Disabled.
8 Click OK.
Disable the Prefetch and Superfetch Features on Windows Virtual
Machines
Disabling the prefetch and superfetch features avoids some I/O operations to the file system and can
reduce the growth of an instant clone's or a View Composer linked clone's virtual disk.
To disable the prefetch and superfetch features, you must edit a Windows registry key and disable the
Prefetch service on the virtual machine.
The following steps apply to Windows 7 and Windows 8. The steps might vary on different Windows
operating systems.
Prerequisites
See the Microsoft TechNet Web site for information on how to use the Windows Registry Editor.
Procedure
1 Start the Windows Registry Editor on the local Windows virtual machine.
2 Navigate to the registry key called PrefetchParameters.
The registry key is located in the following path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory
Management\PrefetchParameters.
3 Set the EnablePrefetcher and EnableSuperfetch values to 0.
4 Click Start > Control Panel > System and Security > Administrative Tools.
5 Select Services and click Open.
6 Double-click the Superfetch service.
7 In the Superfetch Properties (Local Computer) dialog, click Stop.
8 In the Startup type menu, select Disabled.
9 Click OK.
VMware, Inc. 44
Page 45

Setting Up Virtual Desktops in Horizon 7
Disable Windows Registry Backup on Windows Virtual Machines
Disabling the Windows registry backup feature, RegIdleBackup, avoids some I/O operations to the file
system and can reduce the growth of an instant clone's or a View Composer linked clone's virtual disk.
The following steps apply to Windows 7 and Windows 8. The steps might vary on different Windows
operating systems.
Procedure
1 In vSphere Client, select the parent virtual machine and select Open Console.
2 Log in as an administrator.
3 Click Start > Control Panel > System and Security > Administrative Tools.
4 Select Task Scheduler and click Open.
5 In the left pane, expand Task Scheduler Library, Microsoft, Windows.
6 Double-click Registry and select RegIdleBackup.
7 In the Actions pane, click Disable.
Disable the System Restore on Windows Virtual Machines
Disabling the Windows System Restore feature avoids some I/O operations to the file system and can
reduce the growth of an instant clone's or a View Composer linked clone's virtual disk.
With System Restore, you can revert a machine's state to a previous point in time. You can achieve the
same result with the push image operation for instant clones and the recompose or refresh operation for
View Composer linked clones. Furthermore, with instant clones, when a user logs off, the machine is
recreated, making a system restore unnecessary
The following steps apply to Windows 7 and Windows 8. The steps might vary on different Windows
operating systems.
Procedure
1 In vSphere Client, select the parent virtual machine and select Open Console.
2 Log in as an administrator.
3 Click Start > Control Panel > System and Security > Administrative Tools.
4 Select Task Scheduler and click Open.
5 In the left pane, expand Task Scheduler Library, Microsoft, Windows.
6 Double-click SystemRestore and select SR.
7 In the Actions pane, click Disable.
VMware, Inc. 45
Page 46

Setting Up Virtual Desktops in Horizon 7
Disable Windows Defender on Windows Virtual Machines
Disabling Windows Defender avoids some I/O operations to the file system and can reduce the growth of
an instant clone's or a View Composer linked clone's virtual disk.
If Windows Defender is the only anti-spyware installed on the virtual machine, you might prefer to keep
Windows Defender active on the desktops in your environment.
The following steps apply to Windows 7 and Windows 8. The steps might vary on different Windows
operating systems.
Procedure
1 In vSphere Client, select the parent virtual machine and select Open Console.
2 Log in as an administrator.
3 Click Start and type Windows Defender in the Search programs and files box.
4 Click Tools > Options > Administrator.
5 Deselect Use this program and click Save.
Disable Microsoft Feeds Synchronization on Windows Virtual
Machines
Windows Internet Explorer uses the Microsoft Feeds Synchronization task to update RSS feeds in users'
Web browsers. Disabling this task avoids some I/O operations to the file system and can reduce the
growth of an instant clone's or a View Composer linked clone's virtual disk.
Procedure
1 In vSphere Client, select the parent virtual machine and select Open Console.
2 Log in as an administrator.
3 Click Start > Control Panel > Network and Internet > Internet Options.
4 Click the Content tab.
5 Under Feeds and Web Slices, click Settings.
6 Deselect Automatically check feeds and Web Slices for updates and click OK.
7 In the Internet Properties dialog, click OK.
Preparing a Parent Virtual Machine
To deploy an instant-clone or a View Composer linked-clone desktop pool, you must first prepare a parent
virtual machine in vCenter Server. This virtual machine is also known as the master image.
n
Configure a Parent Virtual Machine
After creating a virtual machine that you plan to use as a parent, configure the Windows
environment. This virtual machine is also known as a master image.
VMware, Inc. 46
Page 47

Setting Up Virtual Desktops in Horizon 7
n
Activating Windows on Instant Clones and View Composer Linked Clones
To make sure that Windows 7, Windows 8/8.1, Windows 10, and Windows Server clones are
properly activated when the clones are created, you must use Microsoft volume activation on the
parent virtual machine. The volume-activation technology requires a volume license key.
n
Disable Windows Hibernation in the Parent Virtual Machine
The Windows hibernation feature creates a hidden system file, Hiberfil.sys and uses this file to
store information that is needed for hybrid sleep. Disabling hibernation reduces the size of an instant
clone's or a View Composer linked clone's virtual disk.
n
Configure Local Storage for View Composer Linked Clones
For a View Composer linked-clone desktop pool, you can configure the parent virtual machine to
store virtual-machine swap files on a local datastore. The linked clones' swap files will reside on
local storage.
n
Record the Paging File Size of a View Composer Parent Virtual Machine
When you create a View Composer linked-clone desktop pool, you can redirect the clones' paging
and temp files to a separate disk. You must configure this disk to be larger than the size of the
paging file on the parent virtual machine.
n
Increase the Timeout Limit for ClonePrep and QuickPrep Customization Scripts
ClonePrep and QuickPrep post-synchronization or power-off scripts have a timeout limit of 20
seconds. You can increase this limit by changing the ExecScriptTimeout Windows registry value
on the parent virtual machine.
Configure a Parent Virtual Machine
After creating a virtual machine that you plan to use as a parent, configure the Windows environment.
This virtual machine is also known as a master image.
Prerequisites
n
Verify that you prepared a virtual machine to use for deploying remote desktops. See Creating a
Virtual Machine for Cloning.
The parent virtual machine, can either belong to the same Active Directory domain as the domain that
the desktop machines will join or be a member of a workgroup.
n
Verify that the virtual machine was not converted from an instant clone or a View Composer linked
clone.
Important You also cannot use an instant clone or a View Composer linked clones as a parent
virtual machine.
n
When you install Horizon Agent on the parent virtual machine, select the VMware Horizon Instant
Clone Agent option for instant clones or the VMware Horizon View Composer Agent option. See
Install Horizon Agent on a Virtual Machine.
VMware, Inc. 47
Page 48

Setting Up Virtual Desktops in Horizon 7
To update Horizon Agent in a large environment, you can use standard Windows update mechanisms
such as Altiris, SMS, LanDesk, BMC, or other systems management software. You can also use the
push image or the recompose operation to update Horizon Agent.
Note For View Composer linked clones, do not change the log on account for the VMware View
Composer Guest Agent Server service in a parent virtual machine. By default, this is the Local
System account. If you change this account, the linked clones created from the parent will not start.
n
To deploy Windows machines, configure a volume license key and activate the parent virtual
machine's operating system with volume activation. See Activating Windows on Instant Clones and
View Composer Linked Clones.
n
Verify that you followed the best practices for optimizing the operating system. See Optimizing
Windows for Instant-Clone and View Composer Linked-Clone Virtual Machines.
n
Familiarize yourself with the procedure for disabling searching Windows Update for device drivers.
See the Microsoft Technet article, "Disable Searching Windows Update for Device Drivers" at
http://technet.microsoft.com/en-us/library/cc730606(v=ws.10).aspx.
Procedure
n
Remove the DHCP lease on the parent virtual machine to avoid copying a leased IP address to the
linked clones in the pool.
a On the parent virtual machine, open a command prompt.
b Type the ipconfig /release command.
n
Verify that the system disk contains a single volume.
You cannot deploy linked clones from a parent virtual machine that contains more than one volume.
Multiple virtual disks are supported.
Note For View Composer linked clones, if the parent virtual machine contains multiple virtual disks,
when you create a desktop pool, do not select a drive letter for the View Composer persistent disk or
disposable data disk that already exists on the parent virtual machine or that conflicts with a drive
letter that is used for a network-mounted drive.
n
Verify that the virtual machine does not contain an independent disk.
An independent disk is excluded when you take a snapshot of the virtual machine. Clones are based
on a snapshot and therefore will not contain the independent disk.
n
For View Composer linked clones, if you plan to configure disposable data disks when you create
linked-clone machines, remove default user TEMP and TMP variables from the parent virtual machine.
You can also remove the pagefile.sys file to avoid duplicating the file on all the linked clones. If you
leave the pagefile.sys file on the parent virtual machine, a read-only version of the file is inherited
by the linked clones, while a second version of the file is used on the disposable data disk.
n
Disable the hibernation option to reduce the size of each clone's virtual disk.
VMware, Inc. 48
Page 49

Setting Up Virtual Desktops in Horizon 7
n
Before you take a snapshot of the parent virtual machine, disable searching Windows Update for
device drivers.
This Windows feature can interfere with the customization process. As each clone is customized,
Windows might search for the best drivers on the Internet for that clone, resulting in delays.
n
In vSphere Client, disable the vApp Options setting on the parent virtual machine.
n
On Windows 8.1, Windows Server 2008 R2, and Windows Server 2012 R2 machines, disable the
scheduled maintenance task that recovers disk space by removing unused features.
For example: Schtasks.exe /change /disable /tn
"\Microsoft\Windows\AppxDeploymentClient\Pre-staged app cleanup"
For example, in the case of View Composer linked clones, this maintenance task can, remove the
Sysprep customization script after the linked clones are created, which would cause subsequent
recompose operations to fail with customization operation timeout errors. For more information, see
the Microsoft KB article available at http://support.microsoft.com/kb/2928948.
What to do next
Use vSphere Client or vSphere Web Client to take a snapshot of the parent virtual machine in its
powered-down state. This snapshot is provides the base image for the clones.
Important Before you take a snapshot, shut down the parent virtual machine.
Activating Windows on Instant Clones and View Composer Linked
Clones
To make sure that Windows 7, Windows 8/8.1, Windows 10, and Windows Server clones are properly
activated when the clones are created, you must use Microsoft volume activation on the parent virtual
machine. The volume-activation technology requires a volume license key.
To activate Windows with volume activation, you use Key Management Service (KMS), which requires a
KMS license key. See your Microsoft dealer to acquire a volume license key and configure volume
activation.
Note Multiple Activation Key (MAK) licensing is not supported.
Before you create an instant-clone or View Composer linked-clone desktop pool, you must use volume
activation to activate Windows on the parent virtual machine.
The following steps describe how activation takes place:
1 Invoke a script to remove the existing license.
2 Restart Windows.
3 Invoke a script that uses KMS licensing to activate Windows.
VMware, Inc. 49
Page 50

Setting Up Virtual Desktops in Horizon 7
KMS treats each activated clone as a computer with a newly issued license.
Note If you set up a new KMS server and use QuickPrep to create linked-clone desktop pools, the KMS
client count might not increment and the linked-clones might not be able to activate Windows. For more
information, see the VMware Knowledge Base (KB) article http://kb.vmware.com/kb/2048742.
Disable Windows Hibernation in the Parent Virtual Machine
The Windows hibernation feature creates a hidden system file, Hiberfil.sys and uses this file to store
information that is needed for hybrid sleep. Disabling hibernation reduces the size of an instant clone's or
a View Composer linked clone's virtual disk.
Caution When you make hibernation unavailable, hybrid sleep does not work. Users can lose data if a
power loss occurs.
Procedure
1 In vSphere Client, select the parent virtual machine and select Open Console.
2 Log in as an administrator.
3 Disable the hibernation option.
a Click Start and type cmd in the Start Search box.
b In the search results list, right-click Command Prompt and click Run as Administrator.
c At the User Account Control prompt, click Continue.
d At the command prompt, type powercfg.exe /hibernate off and press Enter.
e Type exit and press Enter.
Configure Local Storage for View Composer Linked Clones
For a View Composer linked-clone desktop pool, you can configure the parent virtual machine to store
virtual-machine swap files on a local datastore. The linked clones' swap files will reside on local storage.
In this procedure, you configure local storage for the virtual-machine swap files, not the paging and temp
files in the guest OS. When you create a linked-clone pool, you also can redirect guest OS paging and
temp files to a separate disk. See Worksheet for Creating a Linked-Clone Desktop Pool.
Procedure
1 Configure a swapfile datastore on the ESXi host or cluster on which you will deploy the linked-clone
pool.
VMware, Inc. 50
Page 51

Setting Up Virtual Desktops in Horizon 7
2 When you create the parent virtual machine in vCenter Server, store the virtual-machine swap files on
the swapfile datastore on the local ESXi host or cluster:
a In vSphere Client, select the parent virtual machine.
b Click Edit Settings and click the Options tab.
c Click Swapfile location and click Store in the host's swapfile datastore.
For detailed instructions, see the VMware vSphere documentation.
Record the Paging File Size of a View Composer Parent Virtual
Machine
When you create a View Composer linked-clone desktop pool, you can redirect the clones' paging and
temp files to a separate disk. You must configure this disk to be larger than the size of the paging file on
the parent virtual machine.
When a linked clone that is configured with a separate disk for the disposable files is powered off, the disk
is recreated. This feature can slow the growth in the size of a linked clone. However, this feature can work
only if you configure the disposable-file disk to be large enough to hold the clone's paging file.
Before you can configure the disposable-file disk, record the maximum paging-file size in the parent
virtual machine. The linked clones have the same paging-file size as the parent virtual machine.
As a best practice, remove the pagefile.sys file from the parent virtual machine before you take a
snapshot, to avoid duplicating the file on all the linked clones. See Configure a Parent Virtual Machine.
Note This feature is not that same as configuring local storage for the virtual-machine swap files. See
Configure Local Storage for View Composer Linked Clones.
Procedure
1 In vSphere Client, right-click the parent virtual machine and click Open Console.
2 Select Start > Settings > Control Panel > System.
3 Click the Advanced tab.
4 In the Performance pane, click Settings.
5 Click the Advanced tab.
6 In the Virtual memory pane, click Change.
The Virtual Memory page appears.
7 Set the paging file size to a larger value than the size of the memory that is assigned to the virtual
machine.
Important If the Maximum size (MB) setting is smaller than the virtual-machine memory size, type
a larger value and save the new value.
VMware, Inc. 51
Page 52

Setting Up Virtual Desktops in Horizon 7
8 Keep a record of the Maximum size (MB) setting that is configured in the Paging file size for selected
drive pane.
What to do next
When you configure a linked-clone pool from this parent virtual machine, configure a disposable-file disk
that is larger than the paging-file size.
Increase the Timeout Limit for ClonePrep and QuickPrep
Customization Scripts
ClonePrep and QuickPrep post-synchronization or power-off scripts have a timeout limit of 20 seconds.
You can increase this limit by changing the ExecScriptTimeout Windows registry value on the parent
virtual machine.
Instead of increasing the timeout limit you can also use your customization script to launch another script
or process that performs the long-running task.
Note Most QuickPrep customization scripts can finish running within the 20-second limit. Test your
scripts before you increase the limit.
Procedure
1 On the parent virtual machine, start the Windows Registry Editor.
a Select Start > Command Prompt.
b At the command prompt, type regedit.
2 In the Windows registry, locate the vmware-viewcomposer-ga registry key.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vmware-viewcomposer-ga
3 Click Edit and modify the registry value.
Value Name: ExecScriptTimeout
Value Type: REG_DWORD
Value unit: milliseconds
The default value is 20000 milliseconds.
Creating Virtual Machine Templates
You must create a virtual machine template before you can create an automated pool that contains full
virtual machines.
A virtual machine template is a master copy of a virtual machine that can be used to create and provision
new virtual machines. Typically, a template includes an installed guest operating system and a set of
applications.
VMware, Inc. 52
Page 53

Setting Up Virtual Desktops in Horizon 7
You create virtual machine templates in vSphere Client. You can create a virtual machine template from a
previously configured virtual machine, or you can convert a previously configured virtual machine to a
virtual machine template.
See the vSphere Basic System Administration guide for information on using vSphere Client to create
virtual machine templates. See Automated Pools That Contain Full Virtual Machines for information on
creating automated pools.
Note A virtual machine template is not for creating an instant-clone or a View Composer linked-clone
desktop pool.
Creating Customization Specifications
When you customize a clone using Sysprep, you need to provide a customization specification.
Sysprep is available for View Composer linked-clone desktop pools and automated full-clone desktop
pools, but not instant-clone desktop pools. You create customization specifications by using the
Customization Specification wizard in vSphere. See the vSphere Virtual Machine Administration
document for information on using the Customization Specification wizard.
It is recommended that you test a customization specification in vSphere before you use it to create a
desktop pool. When you use a Sysprep customization specification to join a Windows desktop to a
domain, you must use the fully qualified domain name (FQDN) of the Active Directory domain. You cannot
use the NetBIOS name.
VMware, Inc. 53
Page 54

Creating Instant-Clone Desktop
Pools 4
To provide users access to instant-clone desktops, you must create an instant-clone desktop pool.
This section includes the following topics:
n
Instant-Clone Desktop Pools
n
Image Publishing and Rebalancing an Instant-Clone Desktop Pool
n
Add an Instant-Clone Domain Administrator
n
Worksheet for Creating an Instant-Clone Desktop Pool
n
Create an Instant-Clone Desktop Pool
n
ClonePrep Guest Customization
n
Change the Image of an Instant-Clone Desktop Pool
n
Monitor a Push-Image Operation
n
Reschedule or Cancel a Push-Image Operation
n
Perform Maintenance on Instant-Clone Hosts
n
Instant-Clone Maintenance Utilities
Instant-Clone Desktop Pools
An instant-clone desktop pool is an automated desktop pool. vCenter Server creates the desktop VMs
based on the settings that you specify when you create the pool.
Similar to View Composer linked clones, an instant-clone desktop pool is based on a parent VM in
vCenter Server, known as the master image. For instant-clone desktops, a parent VM is an internal VM
that Horizon 7 creates and maintains, which is based on the master image. You cannot modify this
internal parent VM. However, you can make changes to the master image.
Instant clones share a virtual disk of the master image and therefore consume less storage than full VMs.
In addition, instant clones share the memory of the master image. Instant clones are created using the
vmFork technology. An instant-clone desktop pool has the following key characteristics:
n
The provisioning of instant clones is significantly faster than View Composer linked clones.
VMware, Inc.
54
Page 55

Setting Up Virtual Desktops in Horizon 7
n
Instant clones are always created in a powered-on state, ready for users to connect to. Guest
customization and joining the Active Directory domain are completed as part of the initial power-on
workflow.
n
For dedicated instant-clone desktop pools, users are assigned a particular remote desktop and return
to the same desktop at each login. When a user logs out, a resync operation on the master image
retains the VM name and the Mac IP address of the VM after logoff.
n
For floating instant-clone desktop pools, users are assigned random desktops from the pool. When a
user logs out, the desktop VM is deleted. New clones are created according to the provisioning policy,
which can be on-demand or up-front.
n
With the push-image operation, you can re-create the pool from any snapshot of any master image.
You can use a push image to roll out operating system and application patches.
n
When clones are created, Horizon 7 selects a datastore to achieve the best distribution of the clones
across the datastores. No manual rebalancing is necessary.
n
View storage accelerator is automatically enabled.
n
Transparent page sharing is automatically enabled.
n
Instant Clones require static port binding with fixed port allocation. Do not change the port binding to
ephemeral. If you get an error message with static port binding, see the VMware Knowledge Base
(KB) article http://kb.vmware.com/kb/2150925.
n
Instant clones and Storage vMotion are compatible. When you create an instant-clone desktop pool
on a Storage DRS datastore, the Storage DRS cluster does not appear in the list in the desktop pool
creation wizard. However, you can select individual Storage DRS datastores.
Because Horizon 7 can create instant clones quickly, you do not need to provision desktops up front or
have many ready desktops. Compared with View Composer linked clones, instant clones can make the
task of managing large desktop pools easier and also reduce the amount of hardware resources that is
required.
Instant clones have the following compatibility requirements:
n
vSphere 6.0 Update 1 or later.
n
Virtual machine hardware version 11 or later.
As a best practice, configure distributed virtual switches in the vSphere environment. It is mandatory to
configure distributed virtual switches in the vSphere environment for dedicated instant clones.
In Horizon 7, instant clones have the following restrictions:
n
Instant-clone desktops cannot have persistent disks. Users can use network share or VMware App
Volumes to store persistent user data. For more information about App Volumes, see
https://www.vmware.com/products/appvolumes.
n
Virtual Volumes and VAAI (vStorage APIs for Array Integration) native NFS snapshots are not
supported.
VMware, Inc. 55
Page 56

Setting Up Virtual Desktops in Horizon 7
n
Sysprep and Quickprep are not available for desktop customization. Use ClonePrep, which is
specifically designed for instant clones.
n
Windows 8 or Windows 8.1 are not supported.
n
IPv6 is not supported.
n
Persona Management is not available.
n
You cannot specify a minimum number of ready (provisioned) machines during instant-clone
maintenance operations. This feature is not needed because the high speed of creating instant
clones means that some desktops are always available even during maintenance operations.
The disk space reclamation feature that is available to View Composer linked clones is not needed
because instant clones are refreshed when users log out. For instant clones, reclaiming unused disk
space in a VM does not have a significant impact on storage consumption.
Image Publishing and Rebalancing an Instant-Clone
Desktop Pool
The clones in an instant-clone desktop pool are based on the same image. When an instant clone is
created, the desktop pool are rebalanced across datastores automatically.
An image is a snapshot of a parent VM in vCenter Server. Publishing an image is a process by which
internal VMs needed for instant cloning are created. This process only happens once per image and may
take some time. Creating an instant-clone desktop pool involves the following operations:
1 Horizon 7 publishes the image that you select. In vCenter Server, four folders
(ClonePrepInternalTemplateFolder, ClonePrepParentVmFolder,
ClonePrepReplicaVmFolder, and ClonePrepResyncVmFolder) are created if they do not exist, and
some internal VMs that are required for cloning are created. In Horizon Administrator, you can see the
progress of this operation on the Summary tab of the desktop pool. During publishing, the Pending
Image pane shows the name and state of the image.
Note Do not tamper with the four folders or the internal VMs that they contain. Otherwise, errors
might occur. The internal VMs are removed when they are no longer needed. Normally the VMs are
removed within 5 minutes of pool deletion or a push-image operation. However, sometimes the
removal can take up to 30 minutes. If there are no internal VMs in all four folders, these folders are
unprotected and you can delete these folders.
2 The clones are created. This process is fast. During this process, the Current Image pane in Horizon
Administrator shows the name and state of the image.
After the pool is created, you can change the image through the push-image operation. As with the
creation of a pool, the new image is first published. Then the clones are recreated.
If you edit a pool to add or remove datastores, rebalancing of the VMs happens automatically when a new
clone is created. If you want rebalancing to happen faster, take the following actions:
n
If you remove a datastore, manually remove the desktops on that datastore so that the new desktops
are created on the remaining datastores.
VMware, Inc. 56
Page 57

Setting Up Virtual Desktops in Horizon 7
n
If you add a datastore, manually remove some desktops from the original datastores so that the new
desktops are created on the new datastore. You can also remove all desktops or simply do a push
image with the same image so that when the clones are recreated, they are evenly distributed across
the datastores.
Add an Instant-Clone Domain Administrator
Before you create an instant-clone desktop pool, you must add an instant-clone domain administrator to
Horizon 7.
The instant-clone domain administrator must have certain Active Directory domain privileges.
For more information, see "Create a User Account for Instant-Clone Operations" in the View Installation
document.
Procedure
1 In Horizon Administrator, select View Configuration > Instant Clone Domain Admins.
2 Click Add.
3 Enter the login name and password for of the instant-clone domain administrator.
Worksheet for Creating an Instant-Clone Desktop Pool
When you create an instant-clone desktop pool, the Add Desktop Pool wizard prompts you to configure
certain options. You can use this worksheet to record your configuration options before you create the
pool.
Before creating an instant-clone desktop pool, take a snapshot of the parent VM in vCenter Server. You
must shut down the parent VM in vCenter Server before taking the snapshot. The snapshot is the master
image for the clones in vCenter Server.
Note You cannot create an instant-clone desktop pool from a VM template.
Table 4‑1. Worksheet: Configuration Options for Creating an Instant-Clone Desktop Pool
Fill In Your Value
Option Description
User assignment Select Floating or Dedicated.
In a floating user assignment, users are assigned random desktops from the
pool.
In a dedicated user assignment, each user is assigned a particular remote
desktop and returns to the same desktop at each login. Between each login and
logout, the computer name and MAC address is retained for the same desktop.
Any other changes that the user makes to the desktop are not preserved.
Here
vCenter Server Select Instant clones and select the vCenter Server that manages the instant-
clone VMs.
VMware, Inc. 57
Page 58

Setting Up Virtual Desktops in Horizon 7
Table 4‑1. Worksheet: Configuration Options for Creating an Instant-Clone Desktop Pool
(Continued)
Fill In Your Value
Option Description
Desktop Pool ID The unique name that identifies the pool in Horizon Administrator.
If you have multiple Connection Server configurations, make sure that another
Connection Server configuration does not use the same pool ID. A Connection
Server configuration can consist of a single Connection Server or multiple
Connection Servers
Display name The pool name that users see when they log in from a client. If you do not
specify a name, the pool ID is used.
Access group Select an access group for the pool, or leave the pool in the default root access
group.
If you use an access group, you can delegate managing the pool to an
administrator who has a specific role. For details, see the role-based delegated
administration chapter in the View Administration document.
Note Access groups are different from vCenter Server folders that store
desktop VMs. You select a vCenter Server folder later in the wizard.
Here
State If set to Enabled, the pool is ready for use after provisioning. If set to Disabled,
the pool is not available to users. During provisioning, if you disable the pool,
provisioning stops.
Connection Server
restrictions
You can restrict access to the pool to certain Connection Servers by clicking
Browse and selecting one or more Connection Servers.
If you intend to provide access to desktops through VMware Identity Manager,
and you configure Connection Server restrictions, the VMware Identity Manager
app might display desktops to users when those desktops are actually restricted.
VMware Identity Manager users will be unable to launch these desktops.
Category Folder Specifies the name of the category folder that contains a Start menu shortcut for
the desktop pool entitlement on Windows client devices. For more information,
see Configuring Start Menu Shortcuts for Desktop and Application Pools.
Automatically logoff after
disconnect
n
Immediately. Users are logged off when they disconnect.
n
Never. Users are never logged off.
n
After. The time after which users are logged off when they disconnect. Type
the duration in minutes.
The logoff time applies to future disconnections. If a desktop session is
already disconnected when you set a logoff time, the logoff duration for that
user starts when you set the logoff time, not when the session was originally
disconnected. For example, if you set this value to 5 minutes, and a session
was disconnected 10 minutes earlier, Horizon 7 will log off that session 5
minutes after you set the value.
Allow user to initiate
separate sessions from
different client devices
With this option selected, a user connecting to the same desktop pool from
different client devices gets different desktop sessions. The user can only
reconnect to an existing session from the same client device. When this setting
is not selected, users are always reconnected to their existing session no matter
which client device is used.
Default display protocol Select the default display protocol. The choices are Microsoft RDP, PCoIP, and
VMware Blast.
VMware, Inc. 58
Page 59

Setting Up Virtual Desktops in Horizon 7
Table 4‑1. Worksheet: Configuration Options for Creating an Instant-Clone Desktop Pool
(Continued)
Fill In Your Value
Option Description
Here
Allow users to choose
protocol
Specify whether users can choose display protocols other than the default.
Do not allow users to choose a display protocol.
3D Renderer Select 3D graphics rendering for desktops.
3D rendering is supported on Windows 7 or later guests running on VMs with
virtual hardware version 8 or later. The hardware-based renderer is supported (at
minimum) on virtual hardware version 9 in a vSphere 5.1 environment. The
software renderer is supported (at minimum) on virtual hardware version 8 in a
vSphere 5.0 environment.
On ESXi 5.0 hosts, the renderer allows a maximum VRAM size of 128MB. On
ESXi 5.1 and later hosts, the maximum VRAM size is 512MB. On hardware
version 11 (HWv11) virtual machines in vSphere 6.0, the VRAM value (video
memory) has changed. Select the Manage Using vSphere Client option and
configure video memory for these machines in vSphere Web Client. For details,
see "Configuring 3D Graphics" in the vSphere Virtual Machine Administration
guide.
3D rendering is disabled if you select Microsoft RDP as the default display
protocol and do not allow users to choose a display protocol.
n
NVIDIA GRID vGPU. 3D rendering is enabled for NVIDIA GRID vGPU. The
ESXi host reserves GPU hardware resources on a first-come, first-served
basis as virtual machines are powered on. See Preparing for NVIDIA GRID
vGPU Capabilities. You cannot use vSphere Distributed Resource Scheduler
(DRS) when you select this option.
To use NVIDIA GRID vGPU for an instant-clone desktop pool, the
recommendation is to select VMware Blast as a protocol and not allow the
user to choose their own display protocols.
n
Disabled. 3D rendering is inactive. Default is disabled.
HTML Access Select Enabled to allow users to connect to remote desktops from a Web
browser. For more information about this feature, see Using HTML Access,
available from
https://www.vmware.com/support/viewclients/doc/viewclients_pubs.html.
To use HTML Access with VMware Identity Manager, you must pair Connection
Server with a SAML authentication server, as described in the View
Administration document. VMware Identity Manager must be installed and
configured for use with Connection Server.
Adobe Flash quality Select the quality of Adobe Flash content on Web pages.
n
Do not control. The Web page settings determine the quality.
n
Low. This setting consumes the least amount of bandwidth. If no quality
level is specified, this is the default level.
n
Medium. This setting consumes a moderate amount of bandwidth.
n
High. This setting consumes the most amount of bandwidth.
For more information, see Adobe Flash Quality and Throttling.
VMware, Inc. 59
Page 60

Setting Up Virtual Desktops in Horizon 7
Table 4‑1. Worksheet: Configuration Options for Creating an Instant-Clone Desktop Pool
(Continued)
Fill In Your Value
Option Description
Adobe Flash throttling Select the frame rate of Adobe Flash movies. If you enable this setting, you can
reduce or increase the number of frames displayed per second by selecting the
throttling level.
n
Disabled. No throttling is performed.
n
Conservative. Timer interval is 100 milliseconds. This setting results in the
lowest number of dropped frames.
n
Moderate. Timer interval is 500 milliseconds.
n
Aggressive. Timer interval is 2500 milliseconds. This setting results in the
highest number of dropped frames.
For more information, see Adobe Flash Quality and Throttling.
Stop provisioning on error Specify whether Horizon 7 stops provisioning desktop VMs if an error occurs and
prevents the error from affecting multiple VMs.
Naming pattern Specify a pattern that Horizon 7 uses as a prefix in all the desktop VM names,
followed by a unique number.
For more information, see Using a Naming Pattern for Automated Desktop
Pools.
Here
Max number of machines Specify the total number of desktop VMs in the pool.
Number of spare
(powered on) machines
Provision machines on
demand
Min number of machines
Provision all machines up
front
Specify the number of desktop VMs to keep available to users. For details, see
Naming Machines Manually or Providing a Naming Pattern.
Specify whether to provision all desktop VMs when the pool is created or to
provision the VMs when they are needed.
n
Provision all machines up front. When the pool is created, Horizon 7
provisions the number of VMs you specify in Max number of machines.
n
Provision machines on demand. When the pool is created, Horizon 7
creates the number of VMs based on the Min number of machines value or
the Number of spare (powered on) machines value, whichever is higher.
Additional VMs are created to maintain this minimum number of available
VMs as users connect to desktops.
Select separate
datastores for replica and
OS disks
Specify whether to store the replica and OS disks on a datastore that is different
from the datastores that the instant clones are on.
If you select this option, you can select the options to select one or more instant-
clone datastores or replica disk datastores.
For more information, see Storing Replicas and Clones on Separate Datastores
for Instant Clones and View Composer Linked Clones.
Parent VM in vCenter Select the parent VM in vCenter Server for the pool.
VMware, Inc. 60
Page 61

Setting Up Virtual Desktops in Horizon 7
Table 4‑1. Worksheet: Configuration Options for Creating an Instant-Clone Desktop Pool
(Continued)
Fill In Your Value
Option Description
Snapshot (default image) You can specify the number of monitors and resolution for your instant-clone
desktop pool by setting those parameters in the parent VM and taking a
snapshot. The required vRAM size is calculated based on your specifications.
Select the snapshot of the parent VM to use as the master image for the pool.
The instant-clone desktop pool that is created is based on the snapshot and
inherits those memory settings. For more information about configuring video
memory settings in vSphere Client, see the vSphere Single Host Management
guide in the vSphere documentation.
The snapshot lists the following details:
n
Number of monitors
n
VRAM size
n
Resolution
VM folder location Select the folder in vCenter Server for the desktop VMs.
Cluster Select the vCenter Server cluster for the desktop VMs.
Here
Resource pool Select the vCenter Server resource pool for the desktop VMs.
Datastores Select one or more datastores for the desktop VMs.
The Select Instant Clone Datastores window provides high-level guidelines for
estimating the pool's storage requirements. These guidelines help you determine
which datastores are large enough to store the clones. The Storage Overcommit
value is always set to Unbounded and is not configurable.
Note Instant clones and Storage vMotion are compatible. When you create an
instant-clone desktop pool on a Storage DRS datastore, the Storage DRS cluster
does not appear in the list of datastores. However, you can select individual
Storage DRS datastores.
Replica disk datastores Select one or more replica disk datastores on which to store the instant-clones.
This option appears if you select separate datastores for replica and OS disks.
A table on the Select Replica Disk Datastores page of the Add Farm wizard
provides high-level guidelines for estimate the farm's storage requirements.
These guidelines can help you determine which replica disk datastores are
enough to store the instant-clones.
Networks Select the networks to use for the instant-clone desktop pool. You can select
multiple vLAN networks to create a larger instant-clone desktop pool. The default
setting uses the network from the current master image.
A table on the Select Networks wizard provides the networks, ports, and port
bindings that are available to use. To use multiple networks, you must unselect
Use network from current parent VM and then select the networks to use with
the instant-clone farm.
vGPU Profile The vGPU profile for the pool is the vGPU profile of the snapshot you selected.
The pool inherits this profile. This profile cannot be edited during the pool
creation process.
Mixed vGPU profiles on a single ESXi cluster are not supported.
After a pool is provisioned, you cannot edit the vGPU profile. To change the
vGPU profile, you must delete the pool and create a new pool with the desired
vGPU profile.
VMware, Inc. 61
Page 62

Setting Up Virtual Desktops in Horizon 7
Table 4‑1. Worksheet: Configuration Options for Creating an Instant-Clone Desktop Pool
(Continued)
Fill In Your Value
Option Description
Domain Select an Active Directory domain. The drop-down list shows the domains that
you specify when you configure instant-clone domain administrators. See Add an
Instant-Clone Domain Administrator
AD container Specify the Active Directory container's relative distinguished name.
For example: CN=Computers
In the Add Desktop Pool window, you can browse the Active Directory tree for
the container. You can also copy, paste, or enter the path for the AD tree for the
container.
Here
Allow reuse of pre-existing
computer accounts
Power-off script Specify the path name of a script to run on the desktop VMs and the script
Post-synchronization
script
Select this option to use existing computer accounts in Active Directory when the
virtual machine names of new instant clones match the existing computer
account names.
When an instant clone is created, if an existing AD computer account name
matches the instant-clone virtual machine name, Horizon 7 uses the existing
computer account after resetting the password. Otherwise, a new computer
account is created. When the instant clone is deleted, Horizon 7 does not delete
the corresponding computer accounts.
The existing computer accounts must be located in the Active Directory container
that you specify with the AD container setting.
When this option is disabled, a new AD computer account is created when
Horizon 7 creates an instant clone. If an existing computer account is found,
Horizon 7 uses the existing computer account after resetting the password.
When the instant clone is deleted, Horizon 7 deletes the corresponding computer
account. This option is disabled by default.
parameters before the VMs are powered off.
Specify the path name of a script to run on the desktop VMs and the script
parameters after the VMs are created.
Create an Instant-Clone Desktop Pool
The Add Desktop Pool wizards guides you through the steps of creating an instant-clone desktop pool.
Prerequisites
n
Verify that the virtual switch that the instant-clone VMs connect to has enough ports to support the
expected number of VMs. Each network card on a VM requires one port.
n
Verify that you have the master image ready. For more information, see Chapter 3 Creating and
Preparing a Virtual Machine for Cloning.
n
Gather the configuration information for the pool. See Worksheet for Creating an Instant-Clone
Desktop Pool.
n
Verify that you added an instant-clone domain administrator in Horizon Administrator. See Add an
Instant-Clone Domain Administrator.
VMware, Inc. 62
Page 63

Setting Up Virtual Desktops in Horizon 7
Procedure
1 In Horizon Administrator, select Catalog > Desktop Pools.
2 Click Add.
3 Select Automated Desktop Pool.
4 On the vCenter Server page, select Instant clones.
5 Follow the prompts to create the pool.
Use the configuration information you gathered in the worksheet. You can go directly back to any
wizard page by clicking the page name in the navigation pane.
In Horizon Administrator, you can view the desktop VMs as they are added to the pool by selecting
Catalog > Desktop Pools.
After you create the pool, do not delete the master image or remove it from the vCenter Server inventory
as long as the pool exists. If you remove the master image VM from the vCenter Server inventory by
mistake, you must add it back and then do a push image using the current image.
What to do next
Entitle users to access the pool. See Add Entitlements to a Desktop or Application Pool.
ClonePrep Guest Customization
ClonePrep customizes instant clones during the creation process.
ClonePrep ensures that all instant clones join an Active Directory domain. The clones have the same
computer security identifiers (SIDs) as the master image. ClonePrep also preserves the globally unique
identifiers (GUIDs) of applications, although some applications might generate a new GUID during
customization.
When you add an instant-clone desktop pool, you can specify a script to run immediately after a clone is
created and another script to run before the clone is powered off.
How ClonePrep Runs Scripts
ClonePrep uses the Windows CreateProcess API to run scripts. Your script can invoke any process that
can be created with the CreateProcess API. For example, cmd, vbscript, exe, and batch-file processes
work with the API.
Specifically, ClonePrep passes the path of the script as the second parameter to the CreateProcess API
and sets the first parameter to NULL. For example, if the script path is c:\myscript.cmd, the call to
CreateProcess is CreateProcess(NULL,c:\myscript.cmd,...).
Providing Paths to ClonePrep Scripts
You can specify the scripts when you create or edit the desktop pool. The scripts must reside on the
master image. You cannot use a UNC path to a network share.
VMware, Inc. 63
Page 64

Setting Up Virtual Desktops in Horizon 7
If you use a scripting language that needs an interpreter to run the script, the script path must start with
the interpreter executable. For example, instead of specifying C:\script\myvb.vbs, you must specify
C:\windows\system32\cscript.exe c:\script\myvb.vbs.
Important Put the ClonePrep customization scripts in a secure folder to prevent unauthorized access.
ClonePrep Script Timeout Limit
By default, ClonePrep terminates a script if the execution takes longer than 20 seconds. You can increase
this timeout limit. For details, see Increase the Timeout Limit for ClonePrep and QuickPrep Customization
Scripts.
Alternatively, you can specify a script that runs another script or process that takes a long time to run.
ClonePrep Script Account
ClonePrep runs the scripts using the same account that the VMware Horizon Instant Clone Agent service
uses. By default, this account is Local System. Do not change this login account. If you do, the clones will
fail to start.
ClonePrep Process Privileges
For security reasons, certain Windows operating system privileges are removed from the
VMware Horizon Instant Clone Agent process that runs ClonePrep customization scripts. The scripts
cannot perform actions that require those privileges.
The process that runs ClonePrep scripts do not have the following privileges:
n
SeCreateTokenPrivilege
n
SeTakeOwnershipPrivilege
n
SeSecurityPrivilege
n
SeSystemEnvironmentPrivilege
n
SeLoadDriverPrivilege
n
SeSystemtimePrivilege
n
SeUndockPrivilege
n
SeManageVolumePrivilege
n
SeLockMemoryPrivilege
n
SeIncreaseBasePriorityPrivilege
n
SeCreatePermanentPrivilege
n
SeDebugPrivilege
n
SeAuditPrivilege
VMware, Inc. 64
Page 65

Setting Up Virtual Desktops in Horizon 7
ClonePrep Script Logs
ClonePrep writes messages to a log file. The log file is C:\Windows\Temp\vmware-viewcomposer-ga-
new.log.
Change the Image of an Instant-Clone Desktop Pool
You can change the image of an instant-clone desktop pool to push out changes or to revert to a previous
image. You can select any snapshot from any virtual machine to be the new image.
Once a pool is provisioned, you cannot edit the vGPU profile by editing the pool or changing the image of
the pool. When you push a new image to an instant clone pool, you must verify that the new image has
the same vGPU profile as the previous image, or your push image operation might fail. To change the
vGPU profile of an instant clone pool, you must delete the pool and create a new pool with the desired
vGPU profile.
Procedure
1 In Horizon Administrator, select Catalog > Desktop Pools
2 Double-click the pool ID.
3 Select Push Image > Schedule.
The Schedule Push Image window opens.
4 Follow the prompts.
You can schedule the task to start immediately or sometime in the future. For clones with user
sessions, you can specify whether to force the users to log out or to wait. When the users log out,
Horizon 7 recreates the clones.
5 On the Ready to Complete page, click Show Details to see the list of desktops in the pool.
After you initiate this operation, publishing of the new image starts immediately. Recreating the clones
starts at the time that you specify in the Schedule Push Image wizard.
Monitor a Push-Image Operation
You can monitor the progress of a push-image operation on an instant-clone desktop pool in Horizon
Administrator.
Procedure
1 In Horizon Administrator, select Catalog > Desktop Pools.
2 Double-click the pool ID.
The Summary tab shows the current image and pending image information.
3 Click the Tasks tab.
The list of tasks that are associated with the push-image operation appears.
VMware, Inc. 65
Page 66

Setting Up Virtual Desktops in Horizon 7
Reschedule or Cancel a Push-Image Operation
You can reschedule or cancel a push-image operation on an instant-clone desktop pool in Horizon
Administrator.
Procedure
1 In Horizon Administrator, select Catalog > Desktop Pools.
2 Double-click the pool ID.
The Summary tab shows the current image and pending image information.
3 Select Push Image > Reschedule or Push Image > Cancel.
4 Follow the prompts.
If you cancel the push-image operation while clone creation is in progress, the clones that have the new
image remain in the pool and the pool has a mix of clones, some with the new image and the others with
the old image. To ensure that all the clones have the same image, you can remove all the clones.
Horizon 7 recreates the clones with the same image.
Perform Maintenance on Instant-Clone Hosts
You can performance maintenance on hosts where instant clones reside by putting the ESXi hosts into
maintenance mode. You can use vSphere Web Client to put the ESXi host into maintenance mode. By
default, the instant clones on these hosts will be vMotioned to another host in the cluster. However, the
master image, which is the parent VM in vCenter Server must be deleted before the host can enter
maintenance mode.
Starting with Horizon 7 version 7.1, when you put the ESXi host into maintenance mode, Horizon 7 will
automatically delete the master image so that the host can go into maintenance mode without any
manual intervention.
In releases earlier than Horizon 7 version 7.1, you have to manually delete the master image on the host.
To do this, you can use the instant-clone maintenance utilities. If you are using VMware Update Manager
(VUM), you must use the instant-clone maintenance utilities to delete the master image before you can
patch the ESXi hosts, regardless of the Horizon 7 version.
To use the instant-clone utilities, see Instant-Clone Maintenance Utilities.
Note After the ESXi host is put into maintenance, you must wait approximately five minutes before
performing any actions on instant clones after the ESXi host performs entering or exiting operations.
Procedure
1 Log in to vSphere Web Client.
2 Select the ESXi host that you want to put into maintenance and clickMaintenance Mode > Enter
Maintenance Mode.
VMware, Inc. 66
Page 67

Setting Up Virtual Desktops in Horizon 7
Instant-Clone Maintenance Utilities
On the Connection Server are two utilities that you can use for the maintenance of instant-clone VMs in
vCenter Server and the clusters that the VMs are in.
The utilities are IcMaint.cmd and IcUnprotect.cmd and are located in C:\Program
Files\VMware\VMware View\Server\tools\bin.
IcMaint.cmd
This command deletes the master images, which are the parent VMs in vCenter Server from the ESXi
host so that the host can be put into maintenance mode. The host is not automatically put into
maintenance mode. To perform maintenance on the host, the vCenter server administrator must manually
put the host into maintenance mode.
Syntax:
IcMaint.cmd -vc hostname_or_IP_address -uid user_ID -password password -hostName ESXi_hostname -
maintenance ON|OFF
Parameters:
n
-vc host name or IP address of vCenter Server
n
-uid vCenter Server user ID
n
-password vCenter Server user password
n
-hostname ESXi host name
n
-maintenance ON|OFF
This parameter specifies whether the host is available for hosting the master image VM.
After the command is run on the host, the InstantClone.Maintenance annotation value is set to 1 and
the master image VMs are deleted. After the master image VMs are deleted, the
InstantClone.Maintenance annotation value is set to 2 and no more master image VMs are created
on the host. When you run this command again with -maintenanceOFF, the
InstantClone.Maintenance annotation value is cleared for the host to become available for hosting
master image VMs.
All the parameters are required.
IcUnprotect.cmd
After ClonePrep creates folders and VMs, you can use this utility to unprotect folders and VMs, delete
VMs, and detect VMs whose master image or snapshot is deleted. ClonePrep is the mechanism that
customizes instant clones during the creation process.
VMware, Inc. 67
Page 68

Setting Up Virtual Desktops in Horizon 7
Syntax:
IcUnprotect.cmd -vc hostname_or_IP_address -uid user_ID -password password[-includeFolders][-
skipCertVeri]
Parameters:
n
-action
You can use the following options for this parameter:
n
unprotect. Unprotect internal VMs.
n
delete. Delete internal VMs.
n
detect. Detect and list internal VMs whose master image or snapshot is deleted.
If you don't specify the -action parameter, the internal VMs are unprotected by default.
n
-vc host name or IP address of vCenter Server
n
-uid vCenter Server user ID
n
-password vCenter Server user password
n
-clientId instant-clone client ID (Optional)
If clientId is not specified, protection is removed from all ClonePrep VMs in all data centers.
n
-domain domain name (Optional)
You can use multiple domain names separated by comma and no space.
n
-host host name (Optional)
You can use multiple host names separated by comma and no space.
n
-datastore datastore name (Optional)
You can use multiple datastore names separated by comma and no space.
n
-vmName VM name (Optional)
You can use multiple VM names separated by comma and no space.
n
-vmType internal VM type (Optional)
You can use multiple VM types separated by comma and no space. You can use template, replica,
parent as options for this parameter.
n
-includeFolders include folders
This parameter unprotects the folders in addition to the VMs.
n
-skipCertVeri skip certification verification
IcUnprotect.cmd enforces host name verification. You must enter the correct host name of the
vCenter Server instead of its IP address when you specify the command parameters. To disable host
name verification and use the IP address of vCenter Server instead, use -skipCertVeri.
VMware, Inc. 68
Page 69

Setting Up Virtual Desktops in Horizon 7
Specify the following parameters to delete all parent VMs in vCenter Server:
IcUnprotect -action delete -vc <IP address of vCenter Server> -uid <vCenter Server user ID> -password
<vCenter Server password> -clientId <instant clone client ID> -host <hostname 1>,<hostname 2> -vmType
parent
Specify the following parameters to delete specific parent VMs in vCenter Server:
IcUnprotect -action delete -vc <IP address of vCenter Server> -uid <vCenter Server user ID> -password
<vCenter Server password> -clientId <instant clone client ID> -host <hostname 1>,<hostname 2> (-vmType
parent) -vmName <parent VM name 1,parent VM name 2)
VMware, Inc. 69
Page 70

Creating Automated Desktop
Pools That Contain Full Virtual
Machines 5
With an automated desktop pool that contains full virtual machines, you create a virtual machine template
and Horizon 7 uses that template to create virtual machines for each desktop. You can optionally create
customization specifications to expedite automated pool deployments.
This section includes the following topics:
n
Automated Pools That Contain Full Virtual Machines
n
Worksheet for Creating an Automated Pool That Contains Full Virtual Machines
n
Create an Automated Pool That Contains Full Virtual Machines
n
Clone an Automated Desktop Pool
n
Rebuild a Virtual Machine in a Full-Clone Desktop Pool
n
Desktop Settings for Automated Pools That Contain Full Virtual Machines
n
Configure Full Clones with vSphere Virtual Machine Encryption
Automated Pools That Contain Full Virtual Machines
To create an automated desktop pool, Horizon 7 dynamically provisions machines based on settings that
you apply to the pool. Horizon 7 uses a virtual machine template as the basis of the pool. From the
template, Horizon 7 creates a new virtual machine in vCenter Server for each desktop.
Worksheet for Creating an Automated Pool That Contains
Full Virtual Machines
When you create an automated desktop pool, the Horizon Administrator Add Desktop Pool wizard
prompts you to configure certain options. Use this worksheet to prepare your configuration options before
you create the pool.
You can print this worksheet and write down the values you want to specify when you run the Add
Desktop Pool wizard.
VMware, Inc.
70
Page 71

Setting Up Virtual Desktops in Horizon 7
Table 5‑1. Worksheet: Configuration Options for Creating an Automated Pool That Contains
Full Virtual Machines
Option Description Fill In Your Value Here
User assignment Choose the type of user assignment:
n
In a dedicated-assignment pool, each user is
assigned to a machine. Users receive the same
machine each time they log in to the pool.
n
In a floating-assignment pool, users receive
different machines each time they log in.
For details, see User Assignment in Desktop Pools.
Enable automatic assignment In a dedicated-assignment pool, a machine is
assigned to a user when the user first logs in to the
pool. You can also explicitly assign machines to
users.
If you do not enable automatic assignment, you must
explicitly assign a machine to each user.
You can assign machines manually even when
automatic assignment is enabled.
vCenter Server Select the vCenter Server that manages the virtual
machines in the pool.
Desktop Pool ID The unique name that identifies the pool in Horizon
Administrator.
If multiple vCenter Servers are running in your
environment, make sure that another vCenter Server
is not using the same pool ID.
A Connection Server configuration can be a
standalone Connection Server instance or a pod of
replicated instances that share a common View
LDAP configuration.
Display name The pool name that users see when they log in from
a client device. If you do not specify a display name,
the pool ID is displayed to users.
Access group Select an access group in which to place the pool or
leave the pool in the default root access group.
If you use an access group, you can delegate
managing the pool to an administrator who has a
specific role. For details, see the role-based
delegated administration chapter in the View
Administration document.
Note Access groups are different from vCenter
Server folders that store desktop virtual machines.
You select a vCenter Server folder later in the wizard
with other vCenter Server settings.
Delete machine after logoff If you select floating user assignment, choose
whether to delete machines after users log off.
Note You set this option on the Desktop Pool
Settings page.
VMware, Inc. 71
Page 72

Setting Up Virtual Desktops in Horizon 7
Table 5‑1. Worksheet: Configuration Options for Creating an Automated Pool That Contains
Full Virtual Machines (Continued)
Option Description Fill In Your Value Here
Desktop Pool Settings Settings that determine the desktop state, power
status when a virtual machine is not in use, display
protocol, Adobe Flash quality, and so on.
For descriptions, see Desktop Pool Settings for All
Desktop Pool Types.
For a list of the settings that apply to automated
pools, see Desktop Settings for Automated Pools
That Contain Full Virtual Machines.
For more information about power policies and
automated pools, see Setting Power Policies for
Desktop Pools.
Stop provisioning on error You can direct Horizon 7 to stop provisioning or
continue to provision virtual machines in a desktop
pool after an error occurs during the provisioning of a
virtual machine. If you leave this setting selected, you
can prevent a provisioning error from recurring on
multiple virtual machines.
Virtual Machine Naming Choose whether to provision machines by manually
specifying a list of machine names or by providing a
naming pattern and the total number of machines.
For details, see Naming Machines Manually or
Providing a Naming Pattern.
Specify names manually If you specify names manually, prepare a list of
machine names and, optionally, the associated user
names.
Naming Pattern If you use this naming method, provide the pattern.
The pattern you specify is used as a prefix in all the
machine names, followed by a unique number to
identify each machine.
For details, see Using a Naming Pattern for
Automated Desktop Pools.
Maximum number of machines If you use a naming pattern, specify the total number
of machines in the pool.
You can also specify a minimum number of machines
to provision when you first create the pool.
Number of spare (powered on)
machines
If you specify names manually or use a naming
pattern, specify a number of machines to keep
available and powered on for new users. For details,
see Naming Machines Manually or Providing a
Naming Pattern.
When you specify names manually, this option is
called # Unassigned machines kept powered on.
VMware, Inc. 72
Page 73

Setting Up Virtual Desktops in Horizon 7
Table 5‑1. Worksheet: Configuration Options for Creating an Automated Pool That Contains
Full Virtual Machines (Continued)
Option Description Fill In Your Value Here
Minimum number of machines If you use a naming pattern and provision machines
on demand, specify a minimum number of machines
in the pool.
The minimum number of machines is created when
you create the pool.
If you provision machines on demand, additional
machines are created as users connect to the pool
for the first time or as you assign machines to users.
Use vSphere Virtual SAN Specify whether to use Virtual SAN, if available.
Virtual SAN is a software-defined storage tier that
virtualizes the local physical storage disks available
on a cluster of ESXi hosts. For more information, see
Using Virtual SAN for High-Performance Storage and
Policy-Based Management.
Template Select the virtual machine template to use for
creating the pool.
vCenter Server folder Select the folder in vCenter Server in which the
desktop pool resides.
Host or cluster Select the ESXi host or cluster on which the virtual
machines run.
In vSphere 5.1 or later, you can select a cluster with
up to 32 ESXi hosts.
Resource pool Select the vCenter Server resource pool in which the
desktop pool resides.
Datastores Choose the type of datastore:
n
Individual datastore. Select individual
datastores on which to store the desktop pool.
n
Storage DRS. Select the Storage Distributed
Resource Scheduler (DRS) cluster that contains
shared or local datastores. Storage DRS is a load
balancing utility that assigns and moves storage
workloads to available datastores.
If your desktop pool was upgraded from
Horizon 7 version 7.1 to Horizon 7 version 7.2,
and you want to modify the pool to use the
Storage DRS cluster, you must deselect the
existing datastores and select Storage DRS.
Note If you use Virtual SAN, select only one
datastore.
VMware, Inc. 73
Page 74

Setting Up Virtual Desktops in Horizon 7
Table 5‑1. Worksheet: Configuration Options for Creating an Automated Pool That Contains
Full Virtual Machines (Continued)
Option Description Fill In Your Value Here
Use View Storage Accelerator Determine whether ESXi hosts cache common virtual
machine disk data. View Storage Accelerator can
improve performance and reduce the need for extra
storage I/O bandwidth to manage boot storms and
anti-virus scanning I/O storms.
This feature is supported on vSphere 5.0 and later.
This feature is enabled by default.
For details, see Configure View Storage Accelerator
for View Composer Linked Clones.
Transparent Page Sharing Scope Select the level at which to allow transparent page
sharing (TPS). The choices are Virtual Machine (the
default), Pool, Pod, or Global. If you turn on TPS for
all the machines in the pool, pod, or globally, the
ESXi host eliminates redundant copies of memory
pages that result if the machines use the same guest
operating system or applications.
Page sharing happens on the ESXi host. For
example, if you enable TPS at the pool level but the
pool is spread across multiple ESXi hosts, only virtual
machines on the same host and within the same pool
will share pages. At the global level, all machines
managed by Horizon 7 on the same ESXi host can
share memory pages, regardless of which pool the
machines reside in.
Note The default setting is not to share memory
pages among machines because TPS can pose a
security risk. Research indicates that TPS could
possibly be abused to gain unauthorized access to
data in very limited configuration scenarios.
Guest customization Select a customization specification (SYSPREP) from
the list to configure licensing, domain attachment,
DHCP settings, and other properties on the
machines.
Alternatively, you can customize the machines
manually after they are created.
VMware, Inc. 74
Page 75

Setting Up Virtual Desktops in Horizon 7
Create an Automated Pool That Contains Full Virtual
Machines
You can create an automated desktop pool based on a virtual machine template that you select.
Horizon 7 dynamically deploys the desktops, creating a new virtual machine in vCenter Server for each
desktop.
Prerequisites
n
Prepare a virtual machine template that Horizon 7 will use to create the machines. Horizon 7 must be
installed on the template. See Chapter 3 Creating and Preparing a Virtual Machine for Cloning.
n
If you intend to use a customization specification, make sure that the specifications are accurate. In
vSphere Client, deploy and customize a virtual machine from your template using the customization
specification. Fully test the resulting virtual machine, including DHCP and authentication.
n
Verify that you have a sufficient number of ports on the ESXi virtual switch that is used for the virtual
machines that are used as remote desktops. The default value might not be sufficient if you create
large desktop pools. The number of virtual switch ports on the ESXi host must equal or exceed the
number of virtual machines multiplied by the number of virtual NICs per virtual machine.
n
Gather the configuration information you must provide to create the pool. See Worksheet for Creating
an Automated Pool That Contains Full Virtual Machines.
n
Decide how to configure power settings, display protocol, Adobe Flash quality, and other settings.
See Desktop Pool Settings for All Desktop Pool Types.
n
If you intend to provide access to your desktops and applications through VMware Identity Manager,
verify that you create the desktop and application pools as a user who has the Administrators role on
the root access group in Horizon Administrator. If you give the user the Administrators role on an
access group other than the root access group, VMware Identity Manager will not recognize the
SAML authenticator you configure in Horizon 7, and you cannot configure the pool in
VMware Identity Manager.
Procedure
1 In Horizon Administrator, select Catalog > Desktop Pools.
2 Click Add.
3 Select Automated Desktop Pool.
4 On the vCenter Server page, choose Full virtual machines.
5 Follow the prompts in the wizard to create the pool.
Use the configuration information that you gathered in the worksheet. You can go directly back to any
wizard page that you completed by clicking the page name in the navigation panel.
In Horizon Administrator, you can view the machines as they are added to the pool by selecting Catalog
> Desktop Pools.
VMware, Inc. 75
Page 76

Setting Up Virtual Desktops in Horizon 7
What to do next
Entitle users to access the pool. See Add Entitlements to a Desktop or Application Pool.
Clone an Automated Desktop Pool
You can clone an automated desktop pool from an existing pool. When you clone a pool, the existing
desktop pool's settings are copied into the Add Desktop Pool wizard, allowing you to create a new pool
without having to fill in each setting manually.
With this feature, you can streamline pool creation because you do not have to type every option in the
Add Desktop Pool wizard. You can ensure that desktop pool attributes are standardized by using the
pre-filled values in the wizard.
You can clone automated desktop pools that contain full virtual machines or View Composer linked
clones. You cannot clone automated desktop pools of instant clones, manual desktop pools, or RDS
desktop pools.
When you clone a desktop pool, you cannot change certain settings:
n
Desktop pool type
n
Clone type, either linked clone or full virtual machine
n
User assignment, either dedicated or floating
n
vCenter Server instance
Prerequisites
n
Verify that the prerequisites for creating the original desktop pool are still valid.
For example, for a pool that contains full virtual machines, verify that a virtual machine template was
prepared.
For a linked-clone pool, verify that a parent virtual machine was prepared and a snapshot was taken
after the virtual machine was powered off.
When you clone a pool, you can use the same virtual machine template or parent virtual machine, or
you can select another one.
n
For prerequisites for cloning an automated, full-clone pool, see Create an Automated Pool That
Contains Full Virtual Machines.
n
For prerequisites for cloning a linked-cone pool, see Create a Linked-Clone Desktop Pool.
Procedure
1 In Horizon Administrator, select Catalog > Desktop Pools.
2 Select the desktop pool that you want to clone and click Clone.
The Add Desktop Pool wizard appears.
3 On the Add Desktop Pool page, type a unique pool ID.
VMware, Inc. 76
Page 77

Setting Up Virtual Desktops in Horizon 7
4 On the Provisioning Settings page, provide unique names for the virtual machines.
Option Description
Use a naming pattern Type a virtual machine naming pattern.
Specify names manually Provide a list of unique names for the virtual machines.
5 Follow the other prompts in the wizard to create the pool.
Change desktop pool settings and values as needed.
In Horizon Administrator, you can view the machines as they are added to the pool by selecting Catalog
> Desktop Pools.
What to do next
Entitle users to access the pool. See Add Entitlements to a Desktop or Application Pool.
Rebuild a Virtual Machine in a Full-Clone Desktop Pool
Rebuild a virtual machine in a full-clone desktop pool if you want to replace the virtual machine with a new
virtual machine and want to reuse the machine name. You can rebuild a virtual machine that is in an error
state to replace the virtual machine with an error free virtual machine of the same name. When you
rebuild a virtual machine, the virtual machine is deleted and then cloned with the same virtual machine
name and the AD computer accounts are reused. All user data or settings from the previous virtual
machine are lost and the new virtual machine is created using the desktop pool template.
Prerequisites
n
Create an automated full-clone desktop pool. See Create an Automated Pool That Contains Full
Virtual Machines.
Procedure
1 In Horizon Administrator, select Catalog > Desktop Pools.
2 Select the desktop pool that contains the virtual machine you want to rebuild and click the Inventory
tab.
3 Select the virtual machine that you want to rebuild and click Rebuild.
In vCenter Client, you can view the virtual machine as it is deleted and cloned again with the same
name. In Horizon Administrator, the status of the rebuilt virtual machine goes through the following
states: Deleting > Provisioning > Customizing > Available.
VMware, Inc. 77
Page 78

Setting Up Virtual Desktops in Horizon 7
Desktop Settings for Automated Pools That Contain Full
Virtual Machines
You must specify desktop pool settings when you configure automated pools that contain full virtual
machines. Different settings apply to pools with dedicated user assignments and floating user
assignments.
Table 5‑2 lists the settings that apply to automated pools with dedicated assignments and floating
assignments.
For descriptions of each desktop pool setting, see Desktop Pool Settings for All Desktop Pool Types.
Table 5‑2. Settings for Automated Pools That Contain Full Virtual Machines
Automated Pool, Dedicated
Setting
State Yes Yes
Connection Server restrictions Yes Yes
Remote machine power policy Yes Yes
Assignment Automated Pool, Floating Assignment
Automatic logoff after disconnect Yes Yes
Allow users to reset/restart their machines Yes Yes
Allow user to initiate separate sessions
from different client devices
Delete machine after logoff Yes
Default display protocol Yes Yes
Allow users to choose protocol Yes Yes
3D Renderer Yes Yes
Max number of monitors Yes Yes
Max resolution of any one monitor Yes Yes
Adobe Flash quality Yes Yes
Adobe Flash throttling Yes Yes
Override global Mirage settings Yes Yes
Mirage Server configuration Yes Yes
Yes
Configure Full Clones with vSphere Virtual Machine
Encryption
You can configure full clones to use the vSphere Virtual Machine Encryption feature. You can create full-
clone desktops that have the same encryption keys or, full-clone desktops with different keys.
Prerequisites
n
vSphere 6.5 or later.
VMware, Inc. 78
Page 79

Setting Up Virtual Desktops in Horizon 7
n
Create the Key Management Server (KMS) cluster with key management servers.
n
To create a trust between KMS and vCenter Server, accept the self signed CA certificate or create a
CA signed certificate.
n
In vSphere Web Client, create the VMcrypt/VMEncryption storage profile.
n
Horizon 7
Note For details about the Virtual Machine Encryption feature in vSphere, see the vSphere Security
document in the vSphere documentation.
Procedure
1 To configure full clones that use the same encryption keys, create a parent template for all desktops
to have the same encryption keys.
The clone inherits the parent encryption state including keys.
a In vSphere Web Client, create a parent VM with the vmencrypt storage policy or create a parent
VM and then apply the vmencrypt storage policy.
b Convert the parent VM to a virtual machine template.
c Create full-clone desktops that point to the parent template so that all desktops have the same
encryption keys.
Note Do not select the Content Based Read Cache (CBRC) feature when you create the full-clone
desktop pool. The CBRC and Virtual Machine Encryption features are not compatible.
2 To configure full clones that use different encryption keys, you must change the storage policy for
each full-clone desktop.
a In vSphere Web Client, create the full-clone desktop pool and then edit the full-clone desktops.
You can also edit existing full-clone desktops.
b Navigate to each full-clone desktop and edit the storage policy and change the storage policy to
vmencrypt.
Each full-clone desktop gets a different encryption key.
Note Full-clone desktops with CBRC digestive disks that exist cannot get the vmencrypt storage
policy. The vmencrypt storage policy applies only when the parent VM does not have any snapshots.
VMware, Inc. 79
Page 80

Creating Linked-Clone Desktop
Pools 6
With a linked-clone desktop pool, Horizon 7 creates a desktop pool based on a parent virtual machine
that you select. The View Composer service dynamically creates a new linked-clone virtual machine in
vCenter Server for each desktop.
This section includes the following topics:
n
Linked-Clone Desktop Pools
n
Worksheet for Creating a Linked-Clone Desktop Pool
n
Create a Linked-Clone Desktop Pool
n
Clone an Automated Desktop Pool
n
Desktop Pool Settings for Linked-Clone Desktop Pools
n
View Composer Support for Linked-Clone SIDs and Third-Party Applications
n
Keeping Linked-Clone Machines Provisioned for Use in Remote Desktop Sessions During View
Composer Operations
n
Use Existing Active Directory Computer Accounts for Linked Clones
Linked-Clone Desktop Pools
To create a linked-clone desktop pool, View Composer generates linked-clone virtual machines from a
snapshot of a parent virtual machine. View dynamically provisions the linked-clone desktops based on
settings that you apply to the pool.
Because linked-clone desktops share a base system-disk image, they use less storage than full virtual
machines.
Worksheet for Creating a Linked-Clone Desktop Pool
When you create a linked-clone desktop pool, the View Administrator Add Desktop Pool wizard prompts
you to configure certain options. Use this worksheet to prepare your configuration options before you
create the pool.
You can print this worksheet and write down the values you want to specify when you run the Add
Desktop Pool wizard.
VMware, Inc.
80
Page 81

Setting Up Virtual Desktops in Horizon 7
Before you create a linked-clone pool, you must use vCenter Server to take a snapshot of the parent
virtual machine that you prepare for the pool. You must shut down the parent virtual machine before you
take the snapshot. View Composer uses the snapshot as the base image from which the clones are
created.
Note You cannot create a linked-clone pool from a virtual machine template.
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
Option Description Fill In Your Value Here
User assignment Choose the type of user assignment:
n
In a dedicated-assignment pool, each user is assigned
to a machine. Users receive the same machine each
time they log in.
n
In a floating-assignment pool, users receive different
machines each time they log in.
For details, see User Assignment in Desktop Pools.
Enable automatic assignment In a dedicated-assignment pool, a machine is assigned to a
user when the user first logs in to the pool. You can also
explicitly assign machines to users.
If you do not enable automatic assignment, you must
explicitly assign a machine to each user.
vCenter Server Select the vCenter Server that manages the virtual
machines in the pool.
Desktop Pool ID The unique name that identifies the pool in View
Administrator.
If multiple View Connection Server configurations are
running in your environment, make sure that another View
Connection Server configuration is not using the same pool
ID.
A View Connection Server configuration can be a
standalone View Connection Server instance or a pod of
replicated instances that share a common View LDAP
configuration.
Display name The pool name that users see when they log in from a client
device. If you do not specify a display name, the pool ID is
displayed to users.
Access group Select an access group in which to place the pool or leave
the pool in the default root access group.
If you use an access group, you can delegate managing the
pool to an administrator who has a specific role. For details,
see the role-based delegated administration chapter in the
View Administration document.
Note Access groups are different from vCenter Server
folders that store virtual machines that are used as
desktops. You select a vCenter Server folder later in the
wizard with other vCenter Server settings.
VMware, Inc. 81
Page 82

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Delete or refresh machine on
logoff
Desktop Pool Settings Settings that determine the machine state, power status
Stop provisioning on error You can direct View to stop provisioning or continue to
Virtual machine naming Choose whether to provision machines by manually
If you select floating user assignment, choose whether to
refresh machines, delete machines, or do nothing after
users log off.
Note You set this option on the Desktop Pool Settings
page.
when a virtual machine is not in use, display protocol,
Adobe Flash quality, and so on.
For descriptions, see Desktop Pool Settings for All Desktop
Pool Types.
For a list of the settings that apply to linked-clone pools, see
Desktop Pool Settings for Linked-Clone Desktop Pools.
For more information about power policies and automated
pools, see Setting Power Policies for Desktop Pools.
provision virtual machines in a desktop pool after an error
occurs during the provisioning of a virtual machine. If you
leave this setting selected, you can prevent a provisioning
error from recurring on multiple virtual machines.
specifying a list of machine names or by providing a naming
pattern and the total number of machines.
For details, see Naming Machines Manually or Providing a
Naming Pattern.
Specify names manually If you specify names manually, prepare a list of machine
names and, optionally, the associated user names.
Naming pattern If you use this naming method, provide the pattern.
The pattern you specify is used as a prefix in all the
machine names, followed by a unique number to identify
each machine.
For details, see Using a Naming Pattern for Automated
Desktop Pools.
Max number of machines If you use a naming pattern, specify the total number of
machines in the pool.
You can also specify a minimum number of machines to
provision when you first create the pool.
Number of spare (powered on)
machines
If you specify names manually or use a naming pattern,
specify a number of machines to keep available and
powered on for new users. For details, see Naming
Machines Manually or Providing a Naming Pattern.
When you specify names manually, this option is called #
Unassigned machines kept powered on.
VMware, Inc. 82
Page 83

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Minimum number of ready
(provisioned) machines during
View Composer maintenance
operations
Provision machines on demand
or
Provision all machines up front
If you specify names manually or use a naming pattern,
specify a minimum number of machines that are
provisioned for use in remote desktop sessions while View
Composer maintenance operations take place.
This setting allows users to maintain existing connections or
make new connection requests while View Composer
refreshes, recomposes, or rebalances the machines in the
pool. The setting does not distinguish between spare
machines that are ready to accept new connections and
machines that are already connected in existing desktop
sessions.
This value must be smaller than the Max number of
machines, which you specify if you provision machines on
demand.
See Keeping Linked-Clone Machines Provisioned for Use in
Remote Desktop Sessions During View Composer
Operations.
If you use a naming pattern, choose whether to provision all
machines when the pool is created or provision machines
as they are needed.
n
Provision all machines up front. When the pool is
created, the system provisions the number of machines
you specify in Max number of machines.
n
Provision machines on demand. When the pool is
created, the system creates the number of machines
that you specify in Min number of machines.
Additional machines are created as users connect to
the pool for the first time or as you assign machines to
users.
Min number of machines If you use a naming pattern and provision desktops on
demand, specify a minimum number of machines in the
pool.
The system creates the minimum number of machines
when you create the pool. This number is maintained even
when other settings such as Delete or refresh machine on
logoff cause machines to be deleted.
VMware, Inc. 83
Page 84

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Redirect Windows profile to a
persistent disk
Disk size and drive letter for
persistent disk
Disposable File Redirection Choose whether to redirect the guest OS's paging and temp
If you select dedicated user assignments, choose whether
to store Windows user-profile data on a separate View
Composer persistent disk or the same disk as the OS data.
Separate persistent disks let you preserve user data and
settings. View Composer refresh, recompose, and
rebalance operations do not affect persistent disks. You can
detach a persistent disk from a linked clone and recreate
the linked-clone virtual machine from the detached disk. For
example, when a machine or pool is deleted, you can
detach the persistent disk and recreate the desktop,
preserving the original user data and settings.
If you store the Windows profile in the OS disk, user data
and settings are removed during refresh, recompose, and
rebalance operations.
If you store user profile data on a separate View Composer
persistent disk, provide the disk size in megabytes and the
drive letter.
Note Do not select a drive letter that already exists on the
parent virtual machine or that conflicts with a drive letter that
is used for a network-mounted drive.
files to a separate, nonpersistent disk. If you do, provide the
disk size in megabytes.
With this configuration, when a linked clone is powered off,
the disposable-file disk is replaced with a copy of the
original disk that was created with the linked-clone pool.
Linked clones can increase in size as users interact with
their desktops. Disposable file redirection can save storage
space by slowing the growth of linked clones.
Disk size and drive letter for
disposable file disk
VMware, Inc. 84
If you redirect disposable files to a nonpersistent disk,
provide the disk size in megabytes and the drive letter.
The disk size should be larger than page-file size of the
guest OS. To determine the page-file size, see Record the
Paging File Size of a View Composer Parent Virtual
Machine.
When you configure the disposable file disk size, consider
that the actual size of a formatted disk partition is slightly
smaller than the value you provide in View Administrator.
You can select a drive letter for the disposable file disk. The
default value, Auto, directs View to assign the drive letter.
Note Do not select a drive letter that already exists on the
parent virtual machine or that conflicts with a drive letter that
is used for a network-mounted drive.
Page 85

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Use vSphere Virtual SAN Specify whether to use VMware Virtual SAN, if available.
Virtual SAN is a software-defined storage tier that virtualizes
the local physical storage disks available on a cluster of
ESXi hosts. For more information, see Using Virtual SAN for
High-Performance Storage and Policy-Based Management.
Select separate datastores for
persistent and OS disks
Select separate datastores for
replica and OS disks
Parent VM Select the parent virtual machine for the pool.
Snapshot (default image) Select the snapshot of the parent virtual machine to use as
(Available only if you do not use Virtual SAN) If you redirect
user profiles to separate persistent disks, you can store the
persistent disks and OS disks on different datastores.
(Available only if you do not use Virtual SAN or Virtual
Volumes) You can store the replica (master) virtual machine
disk on a high performance datastore and the linked clones
on separate datastores.
For details, see Storing Replicas and Clones on Separate
Datastores for Instant Clones and View Composer Linked
Clones.
If you store replicas and OS disks on separate datastores,
native NFS snapshots cannot be used. Native cloning on a
NAS device can only take place if the replica and OS disks
are stored on the same datastores.
the base image for the pool.
Do not delete the snapshot and parent virtual machine from
vCenter Server, unless no linked clones in the pool use the
default image, and no more linked clones will be created
from this default image. The system requires the parent
virtual machine and snapshot to provision new linked clones
in the pool, according to pool policies. The parent virtual
machine and snapshot are also required for View Composer
maintenance operations.
VM folder location Select the folder in vCenter Server in which the desktop
pool resides.
VMware, Inc. 85
Page 86

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Host or cluster Select the ESXi host or cluster on which the desktop virtual
machines run.
With Virtual SAN datastores (a vSphere 5.5 Update 1
feature), you can select a cluster with up to 20 ESXi hosts.
With Virtual Volumes datastores (a vSphere 6.0 feature),
you can select a cluster with up to 32 ESXi hosts.
In vSphere 5.1 or later, you can select a cluster with up to
32 ESXi hosts if the replicas are stored on VMFS5 or later
datastores or NFS datastores. If you store replicas on a
VMFS version earlier than VMFS5, a cluster can have at
most eight hosts.
In vSphere 5.0, you can select a cluster with more than
eight ESXi hosts if the replicas are stored on NFS
datastores. If you store replicas on VMFS datastores, a
cluster can have at most eight hosts. See Configuring
Desktop Pools on Clusters With More Than Eight Hosts.
Resource pool Select the vCenter Server resource pool in which the
desktop pool resides.
Datastores Select one or more datastores on which to store the
desktop pool.
A table on the Select Linked Clone Datastores page of
the Add Desktop Pool wizard provides high-level guidelines
for estimating the pool's storage requirements. These
guidelines can help you determine which datastores are
large enough to store the linked-clone disks. For details,
see Storage Sizing for Instant-Clone and View Composer
Linked-Clone Desktop Pools.
You can use shared or local datastores for an individual
ESXi host or for ESXi clusters. If you use local datastores in
an ESXi cluster, you must consider the vSphere
infrastructure constraints that are imposed on your desktop
deployment. See Storing View Composer Linked Clones on
Local Datastores.
With Virtual SAN datastores (a vSphere 5.5 Update 1
feature), you can select a cluster with up to 20 ESXi hosts.
With Virtual Volumes datastores (a vSphere 6.0 feature),
you can select a cluster with up to 32 ESXi hosts.
In vSphere 5.1 or later, a cluster can have more than eight
ESXi hosts if the replicas are stored on datastores that are
VMFS5 or later or NFS. In vSphere 5.0, a cluster can have
more than eight ESXi hosts only if the replicas are stored on
NFS datastores. See Configuring Desktop Pools on
Clusters With More Than Eight Hosts.
For more information about the disks that are created for
linked clones, see View Composer Linked-Clone Data
Disks.
Note If you use Virtual SAN, select only one datastore.
VMware, Inc. 86
Page 87

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Storage Overcommit Determine the storage-overcommit level at which linked-
clones are created on each datastore.
As the level increases, more linked clones fit on the
datastore and less space is reserved to let individual clones
grow. A high storage-overcommit level lets you create linked
clones that have a total logical size larger than the physical
storage limit of the datastore. For details, see Set the
Storage Overcommit Level for Linked-Clone Virtual
Machines.
Note This setting has no effect if you use Virtual SAN.
Use View Storage Accelerator Determine whether to use View Storage Accelerator, which
allows ESXi hosts to cache common virtual machine disk
data. View Storage Accelerator can improve performance
and reduce the need for extra storage I/O bandwidth to
manage boot storms and anti-virus scanning I/O storms.
This feature is supported on vSphere 5.0 and later.
This feature is enabled by default.
For details, see Configure View Storage Accelerator for
View Composer Linked Clones.
Use native NFS snapshots
(VAAI)
Reclaim VM disk space (Available only if you do not use Virtual SAN or Virtual
(Available only if you do not use Virtual SAN) If your
deployment includes NAS devices that support the vStorage
APIs for Array Integration (VAAI), you can use native
snapshot technology to clone virtual machines.
You can use this feature only if you select datastores that
reside on NAS devices that support native cloning
operations through VAAI.
You cannot use this feature if you store replicas and OS
disks on separate datastores. You cannot use this feature
on virtual machines with space-efficient disks.
This feature is supported on vSphere 5.0 and later.
For details, see Using VAAI Storage for View Composer
Linked Clones.
Volumes) Determine whether to allow ESXi hosts to reclaim
unused disk space on linked clones that are created in
space-efficient disk format. The space reclamation feature
reduces the total storage space required for linked-clone
desktops.
This feature is supported on vSphere 5.1 and later. The
linked-clone virtual machines must be virtual hardware
version 9 or later.
For details, see Reclaim Disk Space on View Composer
Linked Clones.
VMware, Inc. 87
Page 88

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Initiate reclamation when
unused space on VM exceeds:
Blackout Times Configure days and times during which View Storage
Transparent Page Sharing
Scope
(Available only if you do not use Virtual SAN or Virtual
Volumes) Type the minimum amount of unused disk space,
in gigabytes, that must accumulate on a linked-clone OS
disk to trigger space reclamation. When the unused disk
space exceeds this threshold, View initiates the operation
that directs the ESXi host to reclaim space on the OS disk.
This value is measured per virtual machine. The unused
disk space must exceed the specified threshold on an
individual virtual machine before View starts the space
reclamation process on that machine.
For example: 2 GB.
The default value is 1 GB.
Accelerator regeneration and the reclamation of virtual
machine disk space do not take place.
To ensure that ESXi resources are dedicated to foreground
tasks when necessary, you can prevent the ESXi hosts from
performing these operations during specified periods of time
on specified days.
For details, see Set Storage Accelerator and Space
Reclamation Blackout Times for View Composer Linked
Clones.
Select the level at which to allow transparent page sharing
(TPS). The choices are Virtual Machine (the default), Pool,
Pod, or Global. If you turn on TPS for all the machines in
the pool, pod, or globally, the ESXi host eliminates
redundant copies of memory pages that result if the
machines use the same guest operating system or
applications.
Page sharing happens on the ESXi host. For example, if
you enable TPS at the pool level but the pool is spread
across multiple ESXi hosts, only virtual machines on the
same host and within the same pool will share pages. At the
global level, all machines managed by Horizon 7 on the
same ESXi host can share memory pages, regardless of
which pool the machines reside in.
Note The default setting is not to share memory pages
among machines because TPS can pose a security risk.
Research indicates that TPS could possibly be abused to
gain unauthorized access to data in very limited
configuration scenarios.
VMware, Inc. 88
Page 89

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Domain Select the Active Directory domain and user name.
View Composer requires certain user privileges to create a
linked-clone pool. The domain and user account are used
by QuickPrep or Sysprep to customize the linked-clone
machines.
You specify this user when you configure View Composer
settings for vCenter Server. You can specify multiple
domains and users when you configure View Composer
settings. When you use the Add Desktop Pool wizard to
create a pool, you must select one domain and user from
the list.
For information about configuring View Composer, see the
View Administration document.
AD container Provide the Active Directory container relative distinguished
name.
For example: CN=Computers
When you run the Add Desktop Pool wizard, you can
browse your Active Directory tree for the container.
Allow reuse of pre-existing
computer accounts
Use QuickPrep or a
customization specification
(Sysprep)
Select this option to use existing computer accounts in
Active Directory for linked clones that are provisioned by
View Composer. This option lets you control the computer
accounts that are created in Active Directory.
When a linked clone is provisioned, if an existing AD
computer account name matches the linked clone machine
name, View Composer uses the existing computer account.
Otherwise, a new computer account is created.
The existing computer accounts must be located in the
Active Directory container that you specify with the Active
Directory container setting.
When this option is disabled, a new AD computer account is
created when View Composer provisions a linked clone.
This option is disabled by default.
For details, see Use Existing Active Directory Computer
Accounts for Linked Clones.
Choose whether to use QuickPrep or select a customization
specification (Sysprep) to configure licensing, domain
attachment, DHCP settings, and other properties on the
machines.
Sysprep is supported for linked clones only on vSphere 4.1
or later software.
After you use QuickPrep or Sysprep when you create a
pool, you cannot switch to the other customization method
later on, when you create or recompose machines in the
pool.
For details, see Choosing QuickPrep or Sysprep to
Customize Linked-Clone Machines.
VMware, Inc. 89
Page 90

Setting Up Virtual Desktops in Horizon 7
Table 6‑1. Worksheet: Configuration Options for Creating a Linked-Clone Desktop Pool
(Continued)
Option Description Fill In Your Value Here
Power-off script QuickPrep can run a customization script on linked-clone
machines before they are powered off.
Provide the path to the script on the parent virtual machine
and the script parameters.
Post-synchronization script QuickPrep can run a customization script on linked-clone
machines after they are created, recomposed, and
refreshed.
Provide the path to the script on the parent virtual machine
and the script parameters.
Create a Linked-Clone Desktop Pool
You can create an automated, linked-clone desktop pool based on a parent virtual machine that you
select. The View Composer service dynamically creates a new linked-clone virtual machine in vCenter
Server for each desktop.
To create an automated pool that contains full virtual machines, see Automated Pools That Contain Full
Virtual Machines.
Prerequisites
n
Verify that the View Composer service is installed, either on the same host as vCenter Server or on a
separate host, and that a View Composer database is configured. See the View Installation
document.
n
Verify that View Composer settings for vCenter Server are configured in View Administrator. See the
View Administration document.
n
Verify that you have a sufficient number of ports on the ESXi virtual switch that is used for the virtual
machines that are used as remote desktops. The default value might not be sufficient if you create
large desktop pools. The number of virtual switch ports on the ESXi host must equal or exceed the
number of virtual machines multiplied by the number of virtual NICs per virtual machine.
n
Verify that you prepared a parent virtual machine. Horizon Agent must be installed on the parent
virtual machine. See Chapter 3 Creating and Preparing a Virtual Machine for Cloning.
n
Take a snapshot of the parent virtual machine in vCenter Server. You must shut down the parent
virtual machine before you take the snapshot. View Composer uses the snapshot as the base image
from which the clones are created.
Note You cannot create a linked-clone pool from a virtual machine template.
n
Gather the configuration information you must provide to create the pool. See Worksheet for Creating
a Linked-Clone Desktop Pool.
n
Decide how to configure power settings, display protocol, Adobe Flash quality, and other settings.
See Desktop Pool Settings for All Desktop Pool Types.
VMware, Inc. 90
Page 91

Setting Up Virtual Desktops in Horizon 7
n
If you intend to provide access to your desktops and applications through VMware Identity Manager,
verify that you create the desktop and application pools as a user who has the Administrators role on
the root access group in Horizon Administrator. If you give the user the Administrators role on an
access group other than the root access group, VMware Identity Manager will not recognize the
SAML authenticator you configure in Horizon 7, and you cannot configure the pool in
VMware Identity Manager.
Important While a linked-clone pool is created, do not modify the parent virtual machine in vCenter
Server. For example, do not convert the parent virtual machine to a template. The View Composer service
requires that the parent virtual machine remain in a static, unaltered state during pool creation.
Procedure
1 In View Administrator, select Catalog > Desktop Pools.
2 Click Add.
3 Select Automated Desktop Pool.
4 On the vCenter Server page, choose View Composer linked clones.
5 Follow the prompts in the wizard to create the pool.
Use the configuration information you gathered in the worksheet. You can go directly back to any
wizard page you completed by clicking the page name in the navigation panel.
On the vCenter Settings page, you must click Browse and select the vCenter Server settings in
sequence. You cannot skip a vCenter Server setting:
a Parent VM
b Snapshot
c VM folder location
d Host or cluster
e Resource pool
f Datastores
In View Administrator, you can view the machines as they are added to the pool by selecting Catalog >
Desktop Pools.
The linked clones might restart one or more times while they are provisioned. If a linked clone is in an
error state, the View automatic recovery mechanism attempts to power on, or shut down and restart, the
linked clone. If repeated recovery attempts fail, the linked clone is deleted.
View Composer also creates a replica virtual machine that serves as the master image for provisioning
the linked clones. To reduce space consumption, the replica is created as a thin disk. If all the virtual
machines are recomposed or deleted, and no clones are linked to the replica, the replica virtual machine
is deleted from vCenter Server.
VMware, Inc. 91
Page 92

Setting Up Virtual Desktops in Horizon 7
If you do not store the replica on a separate datastore, View Composer creates a replica on each
datastore on which linked clones are created.
If you store the replica on a separate datastore, one replica is created for the entire pool, even when
linked clones are created on multiple datastores.
What to do next
Entitle users to access the pool. See Add Entitlements to a Desktop or Application Pool.
Clone an Automated Desktop Pool
You can clone an automated desktop pool from an existing pool. When you clone a pool, the existing
desktop pool's settings are copied into the Add Desktop Pool wizard, allowing you to create a new pool
without having to fill in each setting manually.
With this feature, you can streamline pool creation because you do not have to type every option in the
Add Desktop Pool wizard. You can ensure that desktop pool attributes are standardized by using the
pre-filled values in the wizard.
You can clone automated desktop pools that contain full virtual machines or View Composer linked
clones. You cannot clone automated desktop pools of instant clones, manual desktop pools, or RDS
desktop pools.
When you clone a desktop pool, you cannot change certain settings:
n
Desktop pool type
n
Clone type, either linked clone or full virtual machine
n
User assignment, either dedicated or floating
n
vCenter Server instance
Prerequisites
n
Verify that the prerequisites for creating the original desktop pool are still valid.
For example, for a pool that contains full virtual machines, verify that a virtual machine template was
prepared.
For a linked-clone pool, verify that a parent virtual machine was prepared and a snapshot was taken
after the virtual machine was powered off.
When you clone a pool, you can use the same virtual machine template or parent virtual machine, or
you can select another one.
n
For prerequisites for cloning an automated, full-clone pool, see Create an Automated Pool That
Contains Full Virtual Machines.
n
For prerequisites for cloning a linked-cone pool, see Create a Linked-Clone Desktop Pool.
Procedure
1 In Horizon Administrator, select Catalog > Desktop Pools.
VMware, Inc. 92
Page 93

Setting Up Virtual Desktops in Horizon 7
2 Select the desktop pool that you want to clone and click Clone.
The Add Desktop Pool wizard appears.
3 On the Add Desktop Pool page, type a unique pool ID.
4 On the Provisioning Settings page, provide unique names for the virtual machines.
Option Description
Use a naming pattern Type a virtual machine naming pattern.
Specify names manually Provide a list of unique names for the virtual machines.
5 Follow the other prompts in the wizard to create the pool.
Change desktop pool settings and values as needed.
In Horizon Administrator, you can view the machines as they are added to the pool by selecting Catalog
> Desktop Pools.
What to do next
Entitle users to access the pool. See Add Entitlements to a Desktop or Application Pool.
Desktop Pool Settings for Linked-Clone Desktop Pools
You must specify machine and desktop pool settings when you configure automated pools that contain
linked clones created by View Composer. Different settings apply to pools with dedicated user
assignments and floating user assignments.
Table 6‑2 lists the settings that apply to linked-clone pools with dedicated assignments and floating
assignments.
For descriptions of each setting, see Desktop Pool Settings for All Desktop Pool Types.
Table 6‑2. Settings for Automated, Linked-Clone Desktop Pools
Linked-Clone Pool, Dedicated
Setting
State Yes Yes
Connection Server restrictions Yes Yes
Category Folder Yes Yes
Remote machine power policy Yes Yes
Automatically logoff after disconnect Yes Yes
Assignment
Linked-Clone Pool, Floating
Assignment
Allow users to reset/restart their machines Yes Yes
Allow user to initiate separate sessions
from different client devices
Delete or refresh machine on logoff Yes
Refresh OS disk after logoff Yes
Default display protocol Yes Yes
VMware, Inc. 93
Yes
Page 94

Setting Up Virtual Desktops in Horizon 7
Table 6‑2. Settings for Automated, Linked-Clone Desktop Pools (Continued)
Linked-Clone Pool, Dedicated
Setting
Allow users to choose protocol Yes Yes
3D Renderer Yes Yes
Max number of monitors Yes Yes
Max resolution of any one monitor Yes Yes
Adobe Flash quality Yes Yes
Adobe Flash throttling Yes Yes
Override global Mirage settings Yes Yes
Mirage Server configuration Yes Yes
Assignment
Linked-Clone Pool, Floating
Assignment
View Composer Support for Linked-Clone SIDs and ThirdParty Applications
View Composer can generate and preserve local computer security identifiers (SIDs) for linked-clone
virtual machines in some situations. View Composer can preserve globally unique identifiers (GUIDs) of
third-party applications, depending on the way that the applications generate GUIDs.
To understand how View Composer operations affect SIDs and application GUIDs, you should
understand how linked-clone machines are created and provisioned:
1 View Composer creates a linked clone by taking these actions:
a Creates the replica by cloning the parent virtual-machine snapshot.
b Creates the linked clone to refer to the replica as its parent disk.
2 View Composer and View customize the linked clone with QuickPrep or a Sysprep customization
specification, depending on which customization tool you select when you create the pool.
n
If you use Sysprep, a unique SID is generated for each clone.
n
If you use QuickPrep, no new SID is generated. The parent virtual machine's SID is replicated on
all provisioned linked-clone machines in the pool.
n
Some applications generate a GUID during customization.
3 View creates a snapshot of the linked clone.
The snapshot contains the unique SID generated with Sysprep or common SID generated with
QuickPrep.
4 View powers on the machine according to the settings you select when you create the pool.
Some applications generate a GUID the first time the machine is powered on.
For a comparison of QuickPrep and Sysprep customization, see Choosing QuickPrep or Sysprep to
Customize Linked-Clone Machines.
VMware, Inc. 94
Page 95

Setting Up Virtual Desktops in Horizon 7
When you refresh the linked clone, View Composer uses the snapshot to restore the clone to its initial
state. Its SID is preserved.
If you use QuickPrep, when you recompose the linked clone, the parent virtual machine's SID is
preserved on the linked clone as long as you select the same parent virtual machine for the recompose
operation. If you select a different parent virtual machine for the recomposition, the new parent's SID is
replicated on the clone.
If you use Sysprep, a new SID is always generated on the clone. For details, see Recomposing Linked
Clones Customized with Sysprep.
Table 6‑3 shows the effect of View Composer operations on linked-clone SIDs and third-party application
GUIDs.
Table 6‑3. View Composer Operations, Linked-Clone SIDs, and Application GUIDs
Support for SIDs or GUIDs Clone Creation Refresh Recompose
Sysprep: Unique SIDs for
linked clones
QuickPrep: Common SIDs for
linked clones
Third-party application GUIDs Each application behaves
With Sysprep customization,
unique SIDs are generated
for linked clones.
With QuickPrep
customization, a common SID
is generated for all clones in a
pool.
differently.
Note Sysprep and
QuickPrep have the same
effect on GUID preservation.
Unique SIDs are preserved. Unique SIDS are not
preserved.
Common SID is preserved. Common SID is preserved.
The GUID is preserved if an
application generates the
GUID before the initial
snapshot is taken.
The GUID is not preserved if
an application generates the
GUID after the initial snapshot
is taken.
Recompose operations do not
preserve an application GUID
unless the application writes
the GUID on the drive specified
as a View Composer persistent
disk.
Choosing QuickPrep or Sysprep to Customize Linked-Clone
Machines
QuickPrep and Microsoft Sysprep provide different approaches to customizing linked-clone machines.
QuickPrep is designed to work efficiently with View Composer. Microsoft Sysprep offers standard
customization tools.
When you create linked-clone machines, you must modify each virtual machine so that it can function as
a unique computer on the network. View and View Composer provide two methods for personalizing
linked-clone machines.
Table 6‑4 compares QuickPrep with customization specifications that are created with Microsoft Sysprep.
VMware, Inc. 95
Page 96

Setting Up Virtual Desktops in Horizon 7
Table 6‑4. Comparing QuickPrep and Microsoft Sysprep
QuickPrep Customization Specification (Sysprep)
Designed to work with View Composer.
For details, see Customizing Linked-Clone Machines with
QuickPrep.
Uses the same local computer security identifier (SID) for all
linked clones in the pool.
Can run additional customization scripts before linked clones are
powered off and after linked clones are created, refreshed, or
recomposed.
Joins the linked clone computer to the Active Directory domain. Joins the linked-clone computer to the Active Directory domain.
For each linked clone, adds a unique ID to the Active Directory
domain account.
Does not generate a new SID after linked clones are refreshed.
The common SID is preserved.
Does not generate a new SID after linked clones are
recomposed. The common SID is preserved.
Can be created with the standard Microsoft Sysprep tools.
Generates a unique local computer SID for each linked clone in
the pool.
Can run an additional script when the user first logs in.
The domain and administrator information in the Sysprep
customization specification is not used. The virtual machine is
joined to the domain using the guest customization information
that you enter in View Administrator when you create the pool.
For each linked clone, adds a unique ID to the Active Directory
domain account.
Generates a new SID when each linked clone is customized.
Preserves the unique SIDs during a refresh operation, but not
during a recompose or rebalance operation.
Runs again after linked clones are recomposed, generating new
SIDs for the virtual machines.
For details, see Recomposing Linked Clones Customized with
Sysprep.
Runs faster than Sysprep. Can take longer than QuickPrep.
After you customize a linked-clone pool with QuickPrep or Sysprep, you cannot switch to the other
customization method when you create or recompose machines in the pool.
Customizing Linked-Clone Machines with QuickPrep
You can personalize the linked-clone machines that are created from a parent virtual machine by using
the QuickPrep system tool. View Composer executes QuickPrep when a linked-clone machine is created
or recomposed.
QuickPrep customizes a linked-clone machine in several ways:
n
Gives the computer a name that you specify when you create the linked-clone pool.
n
Creates a computer account in Active Directory, joining the computer to the appropriate domain.
n
Mounts the View Composer persistent disk. The Windows user profile is redirected to this disk.
n
Redirects temp and paging files to a separate disk.
These steps might require the linked clones to restart one or more times.
QuickPrep uses KMS volume license keys to activate Windows linked-clone machines. For details, see
the View Administration document.
VMware, Inc. 96
Page 97

Setting Up Virtual Desktops in Horizon 7
You can create your own scripts to further customize the linked clones. QuickPrep can run two types of
scripts at predefined times:
n
After linked clones are created or recomposed
n
Immediately before linked clones are powered off
For guidelines and rules for using QuickPrep customization scripts, see Running QuickPrep
Customization Scripts.
Note View Composer requires domain user credentials to join linked-clone machines to an Active
Directory domain. For details, see the View Administration document.
Running QuickPrep Customization Scripts
With the QuickPrep tool, you can create scripts to customize the linked-clone machines in a pool. You can
configure QuickPrep to run customization scripts at two predefined times.
When QuickPrep Scripts Run
The post-synchronization script runs after linked clones are created, recomposed, or rebalanced, and the
clones' status is Ready. The power-off script runs before linked clones are powered off. The scripts run in
the guest operating systems of the linked clones.
How QuickPrep Executes Scripts
The QuickPrep process uses the Windows CreateProcess API call to execute scripts. Your script can
invoke any process that can be created with the CreateProcess API. For example, cmd, vbscript, exe,
and batch-file processes work with the API.
In particular, QuickPrep passes the path that is specified for the script as the second parameter to the
CreateProcess API and sets the first parameter to NULL.
For example, if the script path is c:\myscript.cmd, the path appears as the second parameter in the
function in the View Composer log file: CreateProcess(NULL,c:\myscript.cmd,...).
Providing Paths to QuickPrep Scripts
You provide paths to the QuickPrep customization scripts when you create a linked-clone machine pool or
when you edit a pool's guest customization settings. The scripts must reside on the parent virtual
machine. You cannot use a UNC path to a network share.
If you use a scripting language that needs an interpreter to execute the script, the script path must start
with the interpreter binary.
For example, if you specify the path C:\script\myvb.vbs as a QuickPrep customization script, View
Composer Agent cannot execute the script. You must specify a path that starts with the interpreter binary
path:
VMware, Inc. 97
Page 98

Setting Up Virtual Desktops in Horizon 7
C:\windows\system32\cscript.exe c:\script\myvb.vbs
Important Protect QuickPrep customization scripts from access by ordinary users. Place the scripts in a
secure folder.
QuickPrep Script Timeout Limit
View Composer terminates a post-synchronization or power-off script that takes longer than 20 seconds.
If your script takes longer than 20 seconds, you can increase the timeout limit. For details, see Increase
the Timeout Limit for ClonePrep and QuickPrep Customization Scripts.
Alternatively, you can use your script to launch another script or process that performs the long-running
task.
QuickPrep Script Account
QuickPrep runs the scripts under the account under which the VMware View Composer Guest Agent
Server service is configured to run. By default, this account is Local System.
Do not change this log on account. If you do, the linked clones do not start.
QuickPrep Process Privileges
For security reasons, certain Windows operating system privileges are removed from the View Composer
Guest Agent process that invokes QuickPrep customization scripts.
A QuickPrep customization script cannot perform any action that requires a privilege that is removed from
the View Composer Guest Agent process.
The following privileges are removed from the process that invokes QuickPrep scripts:
SeCreateTokenPrivilege
SeTakeOwnershipPrivilege
SeSecurityPrivilege
SeSystemEnvironmentPrivilege
SeLoadDriverPrivilege
SeSystemtimePrivilege
SeUndockPrivilege
SeManageVolumePrivilege
SeLockMemoryPrivilege
SeIncreaseBasePriorityPrivilege
SeCreatePermanentPrivilege
SeDebugPrivilege
SeAuditPrivilege
QuickPrep Script Logs
View Composer logs contain information about QuickPrep script execution. The log records the start and
end of execution and logs output or error messages. The log is located in the Windows temp directory:
C:\Windows\Temp\vmware-viewcomposer-ga-new.log
VMware, Inc. 98
Page 99

Setting Up Virtual Desktops in Horizon 7
Recomposing Linked Clones Customized with Sysprep
If you recompose a linked-clone machine that was customized with Sysprep, View runs the Sysprep
customization specification again after the OS disk is recomposed. This operation generates a new SID
for the linked-clone virtual machine.
If a new SID is generated, the recomposed linked clone functions as a new computer on the network.
Some software programs such as system-management tools depend on the SID to identify the computers
under their management. These programs might not be able to identify or locate the linked-clone virtual
machine.
Also, if third-party software is installed on the system disk, the customization specification might
regenerate the GUIDs for that software after the recomposition.
A recomposition restores the linked clone to its original state, before the customization specification was
run the first time. In this state, the linked clone does not have a local computer SID or the GUID of any
third-party software installed in the system drive. View must run the Sysprep customization specification
after the linked clone is recomposed.
Keeping Linked-Clone Machines Provisioned for Use in
Remote Desktop Sessions During View Composer
Operations
If your users must be able to access remote desktops at all times, you must maintain a certain number of
machines that are provisioned for use in remote desktop sessions even when View Composer
maintenance operations take place. You can set a minimum number of machines that are not placed in
maintenance mode while View Composer refreshes, recomposes, or rebalances the linked-clone virtual
machines in a pool.
When you set a Minimum number of ready (provisioned) machines during View Composer
maintenance operations, View ensures that the specified number of machines stay provisioned, and are
not placed in maintenance mode, while View Composer proceeds through the maintenance operation.
This setting lets users maintain existing connections or make new connection requests during the View
Composer maintenance operation. The setting does not distinguish between spare machines that are
ready to accept new connections and machines that are already connected in existing desktop sessions.
You can specify this setting when you create or edit a linked-clone pool.
The following guidelines apply to this setting:
n
To allow a number of users to maintain their existing desktop connections and keep a minimum
number of spare (powered on) machines that can accept new connection requests, set the Minimum
number of ready (provisioned) machines during View Composer maintenance operations to a
large enough value to include both sets of machines.
VMware, Inc. 99
Page 100

Setting Up Virtual Desktops in Horizon 7
n
If you use a naming pattern to provision machines and provision machines on demand, set the
number of provisioned machines during View Composer operations to a smaller value than the
specified Max number of machines. If the maximum number were smaller, your pool could end up
with fewer total machines than the minimum number you want to keep provisioned during View
Composer operations. In this case, View Composer maintenance operations could not take place.
n
If you provision machines by manually specifying a list of machine names, do not reduce the total
pool size (by removing machine names) to a lower number than the minimum number of provisioned
machines. In this case, View Composer maintenance operations could not take place.
n
If you set a large minimum number of provisioned machines in relation to the pool size, View
Composer maintenance operations might take longer to complete. While View maintains the
minimum number of provisioned machines during a maintenance operation, the operation might not
reach the concurrency limit that is specified in the Max concurrent View Composer maintenance
operations setting.
For example, if a pool contains 20 machines and the minimum number of provisioned machines is 15,
View Composer can operate on at most five machines at a time. If the concurrency limit for View
Composer maintenance operations is 12, the concurrency limit is never reached.
n
In this setting name, the term "ready" applies to the state of the linked-clone virtual machine, not the
machine status that is displayed in View Administrator. A virtual machine is ready when it is
provisioned and ready to be powered on. The machine status reflects the View-managed condition of
the machine. For example, a machine can have a status of Connected, Disconnected, Agent
Unreachable, Deleting, and so on, and still be considered "ready".
Use Existing Active Directory Computer Accounts for
Linked Clones
When you create or edit a desktop pool or an automated farm, you can configure View Composer to use
existing computer accounts in Active Directory for newly provisioned linked clones.
By default, View Composer generates a new Active Directory computer account for each linked clone that
it provisions. The Allow reuse of pre-existing computer accounts option lets you control the computer
accounts that are created in Active Directory by ensuring that View Composer uses existing AD computer
accounts.
With this option enabled, when a linked clone is provisioned, View Composer checks if an existing AD
computer account name matches the linked clone machine name. If a match exists, View Composer uses
the existing AD computer account. If View Composer does not find a matching AD computer account
name, View Composer generates a new AD computer account for the linked clone.
You can set the Allow reuse of pre-existing computer accounts option when you create or edit a
desktop pool or an automated farm. If you edit a pool or a farm and set this option, the setting affects
linked-clone machines that are provisioned in the future. Linked clones that are already provisioned are
not affected.
VMware, Inc. 100