Configuring for high availability with shared storage

Citrix Provisioning servers are configured to access your shared-storage location, and supports various shared-storage configurations. The configuration steps for highly available storage in the network vary depending on shared-storage configurations.


Installing Citrix Provisioning affects the following registry key: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MRXSmb\Parameters\OplocksDisabled. Changing this registry key disables Windows Opportunity Locking, which provides the fastest possible failover time when contact with the active Citrix Provisioning server is lost. Without this change, failover times can take up to one minute. During this time, Windows does not allow access to the virtual disk file that was in use by the failed server. By disabling Windows Opportunity Locking on Citrix Provisioning servers, the Stream Service can have immediate access to virtual disk files. However, Windows Opportunity Locking reduces caching of remote virtual disk data for the entire server.

Windows shared-storage configuration

When using a Windows shared storage location, service account credentials (user account name and password) must be a domain account that is configured on each Citrix Provisioning server. This method is used to access the Stream Service and the shared storage system.

Creating stream service account credentials on the domain controller

The stream service runs under the user account. When the stream service accesses a virtual disk stored locally on the server, the local user rights provide full access. However, when the database or virtual disk is on a remote storage device, the streaming server must use a domain account with rights to both the provisioning server and the remote storage location. An administrator must assign full control rights to the stream service account in order for it to read and write to the remote storage location.

An administrator creates service account credentials in Active Directory and assigns the credentials to the stream service on all Citrix Provisioning servers that participate in high availability. Alternatively, an existing domain user account can be given full control rights to the network share and be assigned to the Stream Service.

Consider the following when creating service account credentials:

  • You must be logged on as an administrator or a member of the Administrator group to create a domain account.
  • Clear the User must change password at next logon check box.

Assigning stream service account credentials manually

When running the Configuration Wizard on a provisioning server, you are prompted to enter an account name and password for the Stream Service to use. This account must have access permissions for any stores it is given access to, in addition to permissions in SQL Server for database access. If necessary, credentials can be assigned manually.

To assign the Service account credentials to the Stream Service:

  1. Open the Windows Control Panel.
  2. Go to Administrative Tools > Services.
  3. Double-click on the first Citrix Provisioning Stream Service name in the Services list.
  4. On the Log On tab, select This Account, then click Browse.
  5. Click Locations, select the domain node, then click OK.
  6. Type the name of the Stream Service user account, then click Check Names.
  7. Click OK to close the Select User dialog.
  8. On the Log On tab, enter and confirm the Stream Service account password, then click OK.
  9. After assigning the Service account credentials to the Stream Service, restart the Stream Service.

Configuring storage access

The stores that contain the vDisks must be shared, and the Service account credentials need to have access to remote storage for vDisks, with the appropriate permissions.

To share your virtual disk’s stores folders, and grant access permissions to your Service account credentials:

  1. In Windows Explorer, right-click on the folder that contains the database and virtual disk folders. For example, if the database and virtual disk files are stored in the default C:\Program Files\Citrix\Provisioning Services folder, right-click on that folder.
  2. Select Sharing and Security from the shortcut menu.
  3. Enable the Share this folder radio button, then optionally enter a share name, and comment.
  4. Click Permissions.
  5. If the Service account credentials user name does not appear in the Group or user names list, click Add. Enter the user name of the Service account credentials, and click Check Names to verify.
  6. Click OK.
  7. Select the service account credentials user name.
  8. Enable the Full Control check box (the Full Control check box and all additional check boxes are selected).
  9. Click Apply.
  10. Select the Security tab.
  11. If the Service account credentials user name does not appear in the Group or user names list, click Add. Enter the user name of the Service account credentials, then click Check Names to verify.
  12. Click OK.
  13. Select the Service account credentials as the user name.
  14. Enable the Full Control check box, then click Apply.
  15. Click OK.

SAN configuration

If you are storing the database and vDisks on a SAN, use local system accounts for the Stream Service. Unlike a Windows network share, creating special Service Account Credentials to guarantee access to your data is not necessary to guarantee access to your data.

Usually, a SAN configuration allows setting up as if the database and vDisks were stored locally on the Citrix Provisioning server.