What is Citrix Provisioning (aka PVS) and How PVS communicates


Citrix Provisioning (formerly known as Citrix Provisioning Services or PVS) is a software provisioning technology owned by Citrix. PVS allows one shared image to be used by multiple virtual desktop endpoints. Desktop OS and Server OS virtual machines can be deployed to large number of users from one single image also known as vDisk.

The PVS software is a Server-Client based solution. The server side composes of a console and several services. The PVS console communicates with the SOAP service over TCP port 54321 and 54322

Other important services include

  1. PXE Service
  2. TFTP Service
  3. Login Service
  4. Streaming Service

For mnemonics purpose let’s call it PT-LS services (1st letter of each one of the 4 services above)

Each one of the services has a unique function or role as follows:

  • PVS Server role # 1  PXE SERVER, the 1st responder
  • – This is the server that first responds to the PXE broadcast with the boot strap file location
  • PVS Server role #2 TFTP Server – The Bootstrap provider
  • This delivers the bootstrap file to the target devices over a network
  • PVS Server role #3 The Login Server – The Gatekeeper
  • Helps target device find a PVS server and port to use for streaming its assigned vDisk
  • PVS Server role #4 The Streaming Server – The Workhorse
  • Actively streams vDISK contents to target  devices during OS boot and steady-state operations

Like other Citrix software products like WEM and Virtual Apps and Desktops, PVS has its own database to store configuration and properties settings

DATABASE

PVS leverages a Microsoft SQL database to store its data

The account that performs the initial farm installation requires the following permissions:

If the database was created via Citrix Configuration Wizard:

  • DB Creator – To create the SQL database
  • Security Admin – To create the SQL logins for both Stream and SOAP services

If the database was created prior by  a SQL admin

  • DB Owner
  • View any definition

The account used by the Stream and SOAP services during normal PVS operations (and assigned during farm creation)

DB_DataReader role

DB_DataWriter role

Execute Permissions on Stored procedures

What does the database holds?

The database holds all of the configuration, runtime, and optionally auditing data for the PVS farm. The DB usually doesn’t grow to a large size. For example when provisioning a large number of desktops. let’s say 25,00 desktops, It rarely grow above 1 Gb. An average DB is anywhere between 200 to 300 mb

To be continued…

 

 

Leave a comment