After you install and configure provisioning components, a virtual disk is created from a device’s hard drive. This disk is created from a snapshot of the OS and application image, it then stores that image as a virtual disk file on the network. The device that is used during this process is seen as a master target device. The devices that use those vDisks are called target devices.
Configuring target devices that use virtual disks
Citrix Virtual Apps and Desktops with virtual disk technology is a high-performance enterprise desktop virtualization solution that makes VDI accessible to workers requiring personalized desktops using pooled, static virtual machines.
Target devices that use personal vDisks are created using the Citrix Virtual Apps and Desktop Setup Wizard. In a Citrix Provisioning farm, the wizard creates and adds target devices with personal vDisks to an existing site’s collection. It then assigns an existing shared-mode virtual disk to that device.
The wizard also creates virtual machines to associate with each device. A type of catalog in Citrix Studio allows you to preserve the assignment of users to desktops (static assignment). The same users are assigned the same desktop for later sessions. In addition, the wizard creates a dedicated storage disk (before logon) for each user so they can store all personalization’s to their desktop. Personalizations include changes to the virtual disk image or desktop that are not made as a result of an image update. These personalizations include application settings, adds, deletes, modifications, and documents.
Target devices that use personal vDisks can only inherit properties from another device that uses personal vDisks.
Use the Device with Personal vDisk Properties dialog to configure, view, or modify the properties of a target device using a Personal vDisk.
Target device operation and performance statistics
Use Citrix Provisioning to view target device operations and performance statistics, including:
- a WMI provider for static information about the target device.
- a performance counter provider for dynamic information about the target device.
- an external application running on the target device or the remote machine. This application queries objects using a WMI API to determine if they are running on a provisioned target and to gather information related to the configuration and state of the device.
As part of the standard Citrix Provisioning target device installation, a WMI provider DLL is installed and registered on each provisioned target device. This DLL obtains target device information from the BNIStack driver.
How it works
The provider creates the
PVS_VDisk WMI objects in the
root/Citrix/PVS namespace. Each provisioned target device has a single instance of the
PVS_Target object. The
PVS_Target object provides information about the installed Citrix Provisioning version, and statistics for the latest boot operation.
If no instance of
PVS_Target exists when the WMI provider queries the target device, either the device is not a Citrix Provision target device, or it is running an older Citrix Provisioning version of the target device software.
The PVS_Target object
The following table provides information about the
|Target_Software_Version||String||-||PVS target version|
|Boot_Time_In_Sec||Int||seconds||The number of seconds elapsed during the boot phases of the operating system|
|Boot_Retry_Count||Int||-||Retry count during boot|
|Boot_Bytes_Read_MB||Int||MB||Number of bytes read during boot|
|Boot_Retry_Written_MB||Int||MB||Number of bytes written during boot|
The PVS_VDisk object
One instance of the
PVS_VDisk object exists on the provisioned target device. This object contains information about the virtual disk, the write cache mode and cache disk size.
The table below provides information about the
|VDisk_Name||String||-||Virtual disk file name|
|Write_Cache_Type||String||-||Write cache type being used|
|Write_Cache_Volume_Size||Int||MB||Configured write cache volume size|
|Boot_From||String||-||Boot from virtual disk or local hard disk|
|Write_Cache_Volume_Drive_Letter||String||-||Write cache volume drive letter|
Updated performance counters
Citrix Provisioning includes a performance counter that is automatically installed and registered on each provisioned target device.
The BNIStack driver provides the following performance counters:
|UDP retry||perf_counter_counter||PVS UDP retry count|
|Server reconnect||perf_counter_counter||PVS server reconnect count|
Consider the following:
- The provisioned target device installer registers the WMI and performance counter providers. No additional installation options require configuration on the provisioned target device.
- The current
CVhdMpperformance counter provider only supports VHDX for target devices using Cache in device RAM with overflow on hard drive.
Performance counters provided by the CVhdMp driver
- use the Citrix Provisioning Imaging Wizard. In the Microsoft Volume Licensing screen, click the appropriate license management option for the virtual disk. Click the Key Management Service (KMS) radio button, then click the Accelerated Office Activation check box. Select Next to apply the configuration change to the virtual disk and continue configuring it.
|File bytes||perf_counter_large_rawcount||The VHDX file size|
|File reads/sec||perf_counter_counter||The rate of reads from VHDX file in operations per second|
|File writes/sec||perf_counter_counter||The rate of writes to VHDX file in operations per second|
|File read bytes/sec||perf_counter_bulk_count||The rate of reads from VHDX file in bytes per second|
|File write bytes/sec||perf_counter_bulk_count||The rate of writes from VHDX file in bytes per second|
|RAM cache types||perf_counter_large_rawcount||The amount of memory used by RAM cache|
|RAM reads/sec||perf_counter_counter||The rate of reads from RAM cache in operations per second|
|RAM writes/sec||perf_counter_counter||The rate of writes to RAM cache in operations per second|
|RAM read bytes/sec||perf_counter_bulk_count||The rate of reads from RAM cache in bytes per second|
|RAM write bytes/sec||perf_counter_bulk_count||The rate of writes to RAM cache in bytes per second|
|Parent reads/sec||perf_counter_counter||The rate of reads from parent in operations per second|
|Parent read bytes/sec||perf_counter_bulk_count||The rate of reads from parent in bytes per second|
Obtaining target device information
The following sections provide information about the Device with Personal vDisk Properties dialog.
When you update read-only fields, the device needs to be deleted and re-created with the Citrix Virtual Apps and Desktops Setup Wizard.
|Name||The name of the target device or the name of the person who uses the target device. The name can be up to 15 bytes in length. However, the target device name cannot be the same as the machine name being imaged. This field is read-only. If the target device is a domain member, it uses the same name as in the Windows domain, unless it is the same as the imaged machine name. When the target device boots from the virtual disk, the name displayed here becomes the target device machine name.|
|Description||Provides a description to associate with this target device.|
|MAC||The media access control (MAC) address of the NIC that is installed in the target device. This field is read-only.|
|Port||Displays the UDP port value. In most instances, you do not have to change this value. However, if target device software conflicts with any other IP/UDP software, that is, they share the same port, you must change this value.|
|Virtual disk||Name of the virtual disk that this device uses. This field is read-only.|
|Change||Use to change the virtual disk assignment for this device. The Assign vDisk dialog displays with the currently assigned virtual disk’s Store information. The virtual disk you select must be from the same virtual disk base image as the previous image.|
|Personal vDisk drive||Drive letter from which the Personal vDisk is accessed. Default is P: (range allowed is between E: to U: and W: to Z:). This field is read-only.|
|Name and string||There is no fixed limit to the number of names you can add. However, the maximum name length is 250 characters and the maximum value length is 1000 characters. Use any name for the field Name, but do not repeat a field name in the same target device. Field names are not case sensitive. The system interprets “FIELDNAME” and “fieldname” as the same name. Blank spaces entered before or after the field name are automatically removed. A personality name cannot start with a $. This symbol is used for reserved values such as $DiskName and $WriteCacheType.|
The following target device status information appears:
- Status: status of this device (active or inactive).
- IP Address: provides the IP Address or unknown.
- Server: the provisioning server communicating with this device.
- Retries: the number of retries to permit when connecting to this device.
- Virtual disk: provides the name of the virtual disk or displays as unknown.
- Virtual disk version: version of this virtual disk currently being accessed.
- Virtual disk full name: the full file name for the version currently being accessed.
- Virtual disk access: identifies that the version is in Production (it cannot be in Maintenance or Test).
- License information. Depending on the device vendor, this field displays product licensing information. It includes: n/a, Desktop License, data center License, XenApp License, or Citrix Virtual Apps and Desktops License.
Select the logging level or select Off to disable logging:
- Off — Logging is disabled for this provisioning server.
- Fatal— Logs information about an operation that the system might not recover from.
- Error— Logs information about an operation that produces an error condition.
- Warning— Logs information about an operation that completes successfully, but there are issues with the operation.
- Info— Default logging level. Logs information about workflow, which generally explains how operations occur.
- Debug— Logs details related to a specific operation and is the highest level of logging. If logging is set to DEBUG, all other levels of logging information are displayed in the log file.
- Trace— Logs all valid operations.
Personal vDisk test mode
Use the personal vDisks test device to test virtual disk updates for a device that uses personal vDisks within a test environment. Using the PvD production environment, you can then test for compatibility with your actual environment.
- Personal vDisk devices can be test or production devices.
- Citrix Provisioning displays an appropriate error message when trying to boot a private image or a maintenance version with a Personal vDisk device. Only devices without personal vDisks disk can boot a private image or maintenance version.
- You can change the virtual disk assignment in the Citrix Provisioning console with these methods:
- Change assignment with Target Device properties vDisk tab.
- Copy and paste target device properties.
- Drag a virtual disk to a collection or a view.
- Informational warning displays when changing virtual disk assignment for Personal vDisk devices.
- Changing Personal vDisk device type requires extra privileges for the soap/stream services user.
- Local administrator on the Citrix Provisioning server system.
- Citrix Virtual Apps and Desktops full administrator.
- Full permission to the Citrix Virtual Apps and Desktops database (a Citrix Virtual Apps and Desktops requirement).
- For merging, Citrix Provisioning automatically reboots devices and Personal vDisk runs inventory when needed.
- Citrix recommends that you dedicate a small group of Personal vDisk devices for test mode in their own catalog. Also, keep this desktop group in maintenance mode when not used. Otherwise, Citrix Virtual Apps and Desktops power management is in control and turns devices on and off. This configuration potentially interferes with merging.
- By default, Citrix Studio does not show the Personal vDisk stage.
- The personal vDisks test mode environment requires that two catalogs are available: one for Personal vDisk test devices and the other for Personal vDisk production devices. If you want to use this feature in an environment where both Personal vDisk test and production devices exist in one catalog, consider changing a production Personal vDisk device to test. This configuration causes all devices in that catalog to reboot. Change the production personal vDisks devices to test devices before creating any test version virtual disk.
When using SCCM and a provisioned device:
- Add the command C:\Program Files\Citrix\personal vDisk\Bin\CtxPvd.exe to the shutdown script
- Updates typically require numerous reboots, as a result, you must inventory all provisioned devices each time you reboot or shutdown a device.
About Personal vDisk test devices
Use the information in this section when using Personal vDisk devices in a provisioned environment:
- Personal vDisk devices are either be in test or production mode.
- Citrix Provisioning displays an error message when you try to boot a private or maintenance version with a Personal vDisk device. Only devices without a Personal vDisk disk can boot a private image or maintenance version.
- A virtual disk assignment can be changed in the Citrix Provisioning console using the following methods:
- Changing the assignment using the device’s properties.
- Copying and pasting the device’s properties.
- Dragging and dropping the virtual disk to a collection or a view.
- Citrix Provisioning displays an informational warning when you change the virtual disk assignment for a Personal vDisk device.
- Changing the Personal vDisk device type requires more privileges for the SOAP/Stream Service user:
- Local administrator privileges on the provisioning server system.
- Full administrator privileges on the Citrix Virtual Apps and Desktops system, including the database
- When merging, Citrix Provisioning automatically reboots devices. A Personal vDisk device runs an inventory, as needed.
- Citrix recommends that you allocate a small group of Personal vDisk devices for test mode. This group of Personal vDisk devices are kept in maintenance mode when not in use. Otherwise the Citrix Virtual Apps and Desktops power management feature initializes these devices, potentially interfering with the merge process.
- this environment is suitable when two catalogs are available, one for PVD test and another for Personal vDisk production devices. If you want to use this feature in an environment where both Personal vDisk test and production devices exist in the same catalog, change a production Personal vDisk device to test. This process causes all devices in that catalog to reboot.
- changing production Personal vDisk devices to test before creating any test versions of a virtual disk.
Assign or reassign a virtual disk to a target device that uses a Personal vDisk
You can assign a different virtual disk to a target device that uses a Personal vDisk if that virtual disk is from the same base (.vhdx) virtual disk lineage. For example, to update an existing virtual disk you can make a copy of the target device’s currently assigned virtual disk. Update the new virtual disk, then assign the updated virtual disk to the device.
To assign or reassign a virtual disk:
- On the Device with Personal vDisk Properties dialog’s General tab, click Change…. By default, the Assign vDisk dialog displays the current vDisks Store location. It also lists all vDisks available from that Store, except for the currently assigned virtual disk.
In the Filter section, optionally:
a. Change the Store location from which to select vDisks from.
b. Filter vDisks that display in the list based on the server’s that can deliver them.
- Select the virtual disk to assign to this target device.
Adding target devices to the database
To create target device entries in the Citrix Provisioning database, select one of the following methods:
- Using the console to Manually Create Target Device Entries
- Using Auto-add to Create Target Device Entries
- Importing Target Device Entries
After the target device exists in the database, you can assign a virtual disk to the device. See assign a virtual disk to the device for more details.
Using the console to manually create target device entries
- In the console, right-click on the Device Collection where this target device is to become a member, then select the Create Device menu option. The Create Device dialog appears.
- Type a name, description, and the MAC address for this target device in the appropriate text boxes.
If the target device is a domain member, use the same name as in the Windows domain. When the target device boots from the virtual disk, the machine name of the device becomes the name entered. For more information about target devices and Active Directory or NT 4.0 domains, see Enabling Automatic Password Management.
- Optionally, if a collection template exists for this collection, enable the check box next to Apply the collection template to this new device.
- Click the Add device button. The target device inherits all the template properties except for the target device name and MAC address.
- Click OK to close the dialog box. The target device is created and assigned to a virtual disk.
Importing target device entries
Target device entries can be imported into any device collection from a .csv file. The imported target devices can then inherit the properties of the template target device that is associated with that collection. For more details, see Importing Target Devices into Collections.
Using the auto-add wizard
The auto-add wizard automates the configuration of rules that automatically add new target devices to the Citrix Provisioning database using the auto-add feature.
The Auto-Add Wizard can be started at the Farm, Site, Collection, or Device level. When started at a level lower than farm, the wizard uses that choice as the default choice. For example, if it is started on a particular target device, it will:
- Select the Site for that device as the Default Site choice in the combo-box.
- Select the Collection for that device as the Default Collection choice in the combo-box.
- Select that device as the Template Device choice in the combo-box.
The wizard displays each page with choices pre-selected based on the location from which the auto-add wizard was started.
A provisioning farm administrator turns auto-add on or off and selects the default site.
A site administrator selects the default site if it is a site in which that administrator controls. If the site administrator is not the administrator of the currently selected default Site, then that administrator can only configure sites to which they have access.
To configure Auto-Add settings (the default collection of a site, template device for the default collection and target device naming rules):
On the console, right-click on the farm, then select the Auto-Add wizard. The Welcome to the Auto-Add Wizard page appears.
Click Next. The Enable Auto-Add dialog appears.
Only a farm administrator can change settings on this page.
Check the box next to Enable Auto-Add to enable this feature, then click Next. The Select Site page appears.
Site administrators can only select sites to which they have permissions.
From the Site menu, select the site where devices are added, then select Next. The Select Collection page displays with the default collection selected.
Accept the default collection or select a different collection from the Collection menu, then click Next. The Select Template Devices page appears.
Select the device to use as a template, so that new devices inherit the existing target device’s basic property settings, then click Next.
To view the selected device’s properties, click Properties. A read-only dialog displays the selected device’s properties. Close the dialog after reviewing the properties.
Click Next. The Device Name page displays.
Enter a static prefix that helps identify all devices that are being added to this collection. For example: ‘Boston’ to indicate devices located in Boston.
The prefix can be used with the suffix, but is not required if a suffix is provided. The entire device name can have a maximum of 15 characters (the prefix length + number length + suffix length). For example, the following device names are considered valid:
- Boston000Floor2 (prefix, incrementing number length, and suffix provided. The maximum of 15 characters has been reached)
- Boston000 (no suffix is provided)
- 000Floor2 (no prefix is provided)
The prefix cannot end with a digit.
Enter the length of the incrementing number to associate with the devices being added to this collection. This number is incremented as each device is added. For example, if the number length is set to 3, naming starts at 001 and stops naming or adding devices after the number reaches 999.
Enable the Zero fill option to automatically add the necessary number of preceding zeros to a numbers length. For example, if the numbers length is set to ‘4’, then the first target device number would be assigned as ‘0001’.
The number length must have a minimum of three digits and a maximum of 9 digits.
Enter a static suffix that helps to identify all devices being added to this collection. For example: Boston001Floor2 might be helpful to indicate the floor where these devices reside.
The suffix can be used with the prefix, but is not required if a prefix is provided.
The entire device name can have a maximum of 15 characters (the prefix length + number length + suffix length).
The suffix cannot start with a digit.
The prefix and suffix combination must be unique in each collection.
Click Next. The Finish dialog appears.
Review all Auto-Add wizard settings, then click Finish. Auto-Add is now configured.
Disabling a target device
The Disable Target Device feature prevents a new target device from booting. Each time a new target device boots with the auto-add option enabled, a new record is automatically created in the database. The following message appears on the target device:
This target device has been disabled. Please Contact your system administrator.
Once contacted, the system administrator can validate the target device. After the administrator disables the option, the target device can boot successfully.
To disable or enable a target device, in the console, right-click on the target device. Select the Disable or Enable menu option.
To disable all target devices added to a collection, enable the Disable target device option on the template target device.
Deleting a target device
To delete a target device:
- In the Console, right-click on the target devices you want to delete within the collection.Multiple selections can be made in the Details view. Select the Delete menu option.
- Click Yes to confirm the delete request. The target device is deleted from the collection and any associated views. However, the virtual disk image file for the target device still exists.
Improving performance with asynchronous I/O streaming
In Citrix Provisioning releases before version 1808, a target device served incoming operating system storage requests by traversing through three different layers: RAM cache, VHDX file, and network streaming. This process occurred sequentially to complete a request. This traversing led to less than optimal performance due to the latency introduced when waiting for sub-I/O completion, before submitting a new sub-I/O request.
Target devices support asynchronous I/O in all three layers of the provisioning model: RAM cache, the VHDX file, and network streaming, effectively improving performance.
Asynchronous I/O streaming provides better performance, but comes with higher, temporary memory consumption. Citrix recommends that you test this feature in a non-production environment to verify that the performance is favorable before deploying to production.
The following virtual disk cache modes support asynchronous I/O:
- Private or maintenance mode
- Cache in device RAM with overflow on hard drive
- Cache on server persistent
The Cache on hard disk feature option currently appears in the product but does not function.
Enable asynchronous I/O using the provisioning console
This release improves asynchronous I/O streaming functionality by allowing you to enable it for a virtual disk directly from the Provisioning Console. In the virtual disk properties screen, select Asynchronous IO.
In this article
- Configuring target devices that use virtual disks
- Target device operation and performance statistics
- Obtaining target device information
- Personal vDisk test mode
- Assign or reassign a virtual disk to a target device that uses a Personal vDisk
- Adding target devices to the database
- Using the console to manually create target device entries
- Importing target device entries
- Using the auto-add wizard
- Disabling a target device
- Deleting a target device
- Improving performance with asynchronous I/O streaming