Citrix Provisioning

Provisioning Services product infrastructure

The graphic below provides a high-level view of a basic Provisioning Services infrastructure and shows how Provisioning Services components might appear within that implementation.

The rest of the article provides a brief introduction to Provisioning Services components.


License Server

The product license server is installed within the shared infrastructure or you can use an existing Citrix license server.


The license server is selected when the Configuration Wizard is run on a Provisioning Server. All Provisioning Servers within the farm must be able to communicate with the license server.

Provisioning Services Database

The database stores all system configuration settings that exist within a farm. Only one database can exist within a farm and all Provisioning Servers in that farm must be able to communicate with that database. You may choose to leverage an existing SQL Server database or install SQL Server Express, which is free and available from Microsoft.


The database server is selected when the Configuration Wizard is run on a Provisioning Server.


The Console is a utility that is used to manage your Provisioning Services implementation. After logging on to the Console, you select the farm that you want to connect to. Your administrative role determines what you can view in the Console and manage in the farm.


The Console is installed as a separate component and is available from the product installation media. The Provisioning Services Console is an MMC (Microsoft Management Console) snap-in. MMC specific console features are not described in this document. Refer to Microsoft’s MMC documentation for detailed information.

Network Services

Network services include a DHCP service, Preboot Execution Environment (PXE) service, and a TFTP service. These service options can be used during the boot process to retrieve IP addresses, and locate then download the boot program from the Provisioning Server to the target device. Alternative boot options are also available.


Network services can be installed with the product installation, and then configured when the Configuration Wizard is run. Existing network services within your infrastructure can also be leveraged.


A farm represents the top level of a Provisioning Services infrastructure. The farm is created when the Configuration Wizard is run on the first Provisioning Server that will be added to that farm.

All sites within a farm share that farm’s Microsoft SQL database.

The Console does not need to be directly associated with the farm because remote administration is supported on any Console that can communicate with that farm’s network.


A farm contains one or more stores. A store is a logical name for a physical or virtual vDisk storage location. The store name is the common name used by all Provisioning Servers within the farm.

Example One

The physical vDisk for Windows 10 resides on a Provisioning Server local to a site. The logical name that is given to this physical location is the store.

Store name (logical name): bostonwin10

Physical path to the vDisk is: C:\vDisks\

Example Two

The physical vDisk for Windows 10 resides on a network share (FinanceVdisks) at the farm level.

Store name (logical name): financevdisks

Physical path to the vDisk for all Provisioning Servers in the farm is: \\\\financeserver\\financevdisks\\


One or more sites can exist within a farm. The first site is created with the Configuration Wizard and is run on the first Provisioning Server in the farm.

Sites are represented in the Console as follows:

Provisioning site

Provisioning Servers

A Provisioning Server is any server that has Stream Services installed. Stream Services is used to stream software from vDisks to target devices. In some implementations, vDisks reside directly on the Provisioning Server. In larger implementations, Provisioning Servers may get the vDisk from a shared-storage location on the network.

Provisioning Servers also exchange configuration information with the Provisioning Services database. Provisioning Server configuration options are available to ensure high availability and load balancing of target device connections.

vDisk Pools

vDisk pools are the collection of all vDisks available to a site. There is only one vDisk pool per site.

vDisk Update Management

The vDisk Update Management feature is used to configure the automation of vDisk updates using virtual machines. Automated vDisk updates can occur on a scheduled basis, or can be invoked directly from the Console. This feature supports updates detected and delivered from Electronic Software Delivery (ESD) servers, Windows updates, or other pushed updates.

Device Collections

Device collections are logical groups of target devices. A target device is a device, such as a desktop computer or a server, that boots and gets software from a vDisk on the network. A device collection could represent a physical location, a subnet range, or a logical grouping of target devices. Creating device collections simplifies device management by enabling you to perform actions at the collection level rather than at the target-device level.

A target device can be a member of only one device collection.


vDisks exist as disk image files on a Provisioning Server or on a shared storage device. A vDisk consists of a .vhdx base image file, any associated properties files (.pvp), and if applicable, a chain of referenced VHD differencing disks (.avhdx).

vDisks are assigned to target devices. Target devices boot from and stream software from an assigned vDisk image.

vDisk Modes

vDisk images are configured to be in Private Image mode (for use by a single device, read/write) or Standard Image mode (for use by multiple devices, read-only with various caching options).

vDisk Chain

Any updates to a vDisk base image can be captured in a versioned differencing disk, leaving the original base disk image unchanged. The following illustrates the basic relationship between a base disk and versions that reference that base disk.

Each time a vDisk is to be updated, a new version of the VHDX differencing disk can be created and the file name is numerically incremented, as shown in the following table:

  VHDX Filename
Base Image win7dev.avhdx
Version 1 win7dev.1.avhdx
Version 2 win7dev.2.avhdx
Version N win7dev.N.avhdx

Booting a vDisk

The method used to locate and boot from a vDisk on a server share is illustrated in the following graphic:

vDisk pool

  1. The target device begins the boot process by communicating with a Provisioning Server and acquiring a license.
  2. The Provisioning Server checks the vDisk pool for vDisk information, which includes identifying the Provisioning Server(s) that can provide the vDisk to the target device and the path information that server should use to get to the vDisk. In this example, the vDisk shows that only one Provisioning Server in this site can provide the target device with the vDisk and that the vDisk physically resides on the Finance Server (shared storage at the farm level).
  3. The Provisioning Server locates the vDisk on Finance Server, then streams that vDisk, on demand, to the target device.


Views allow you to quickly manage a group of target devices. Views are typically created according to business needs. For example, a view can represent a physical location, such as a building, or a user type. A target device can be a member of any number of views, although it can be a member of only one device collection.

Views are represented in the Console as follows:

Console view

Farm views can include any target device that exists in the farm. Site views can include only target devices that exist within a site.

Provisioning Services product infrastructure