Product Documentation

Configure subscription synchronization

Sep 12, 2014

To configure periodic pull synchronization of users' application subscriptions from stores in different StoreFront deployments, you execute Windows PowerShell commands.

Note: The StoreFront and PowerShell consoles cannot be open at the same time. Always close the StoreFront admin console before using the PowerShell console to administer your StoreFront configuration. Likewise, close all instances of PowerShell before opening the StoreFront console.
Important: In multiple server deployments, use only one server at a time to make changes to the configuration of the server group. Ensure that the Citrix StoreFront management console is not running on any of the other servers in the deployment. Once complete, propagate your configuration changes to the server group so that the other servers in the deployment are updated.

When establishing your subscription synchronization, note that the configured Delivery Controllers must be named identically between the synchronized Stores and that the Delivery Controller names are case sensitive. Failing to duplicate the Delivery Controller names exactly may lead to users having different subscriptions across the synchronized Stores.

  1. Use an account with local administrator permissions to start Windows PowerShell and, at a command prompt, type the following commands to import the StoreFront modules.
    Import-Module "installationlocation\Management\Cmdlets\UtilsModule.psm1" 
    Import-Module "installationlocation\Management\Cmdlets\ 
      SubscriptionSyncModule.psm1"

    Where installationlocation is the directory in which StoreFront is installed, typically C:\Program Files\Citrix\Receiver StoreFront\.

  2. To specify the remote StoreFront deployment containing the store to be synchronized, type the following command.
    Add-DSSubscriptionsRemoteSyncCluster –clusterName deploymentname 
      –clusterAddress deploymentaddress

    Where deploymentname is a name that helps you identify the remote deployment and deploymentaddress is the externally accessible address of the StoreFront server or load-balanced server group for the remote deployment.

  3. To specify the remote store with which to synchronize users' application subscriptions, type the following command.
    Add-DSSubscriptionsRemoteSyncStore –clusterName deploymentname 
      –storeName storename

    Where deploymentname is the name that you defined for the remote deployment in the previous step and storename is the name specified for both the local and remote stores when they were created. To synchronize application subscriptions between the stores, both stores must have the same name in their respective StoreFront deployments.

  4. To configure synchronization to occur at a particular time every day, type the following command.
    Add-DSSubscriptionsSyncSchedule –scheduleName 
      synchronizationname –startTime hh:mm

    Where synchronizationname is a name that helps you identify the schedule you are creating. Use the -startTime setting to specify a time of day at which you want to synchronize subscriptions between the stores. Configure further schedules to specify additional synchronization times throughout the day.

  5. Alternatively, to configure regular synchronization at a specific interval, type the following command.
    Add-DSSubscriptionsSyncReoccuringSchedule –scheduleName 
      synchronizationname –startTime hh:mm:ss -repeatMinutes interval

    Where synchronizationname is a name that helps you identify the schedule you are creating. Use the -startTime setting to specify the delay in hours, minutes, and seconds before the new schedule becomes active once created. For interval, specify the time in minutes between each synchronization.

  6. Add the Microsoft Active Directory domain machine accounts for each StoreFront server in the remote deployment to the local Windows user group CitrixSubscriptionSyncUsers on the current server.

    This will allow the servers in the remote deployment to access the subscription store service on the local deployment once you have configured a synchronization schedule on the remote deployment. The CitrixSubscriptionSyncUsers group is automatically created when you import the subscription synchronization module in Step 1. For more information about modifying local user groups, see http://technet.microsoft.com/en-us/library/cc772524.aspx.

  7. If your local StoreFront deployment consists of multiple servers, use the Citrix StoreFront management console to propagate the configuration changes to the other servers in the group.

    For more information about propagating changes in a multiple server StoreFront deployment, see Configure server groups.

  8. Repeat Steps 1 to 7 on the remote StoreFront deployment to configure a complementary subscription synchronization schedule from the remote deployment to the local deployment.

    When configuring the synchronization schedules for your StoreFront deployments, ensure that the schedules do not lead to a situation where the deployments are attempting to synchronize simultaneously.

  9. To start synchronizing users' application subscriptions between the stores, restart the subscription store service on both the local and remote deployments. At a Windows PowerShell command prompt on a server in each deployment, type the following command.
    Restart-DSSubscriptionsStoreSubscriptionService
  10. To remove an existing subscription synchronization schedule, type the following command. Then, propagate the configuration change to the other StoreFront servers in the deployment and restart the subscription store service.
    Remove-DSSubscriptionsSchedule –scheduleName synchronizationname  
    

    Where synchronizationname is the name that you specified for the schedule when you created it.

  11. To list the subscription synchronization schedules currently configured for your StoreFront deployment, type the following command.
    Get-DSSubscriptionsSyncScheduleSummary