This post has already been read 20502 times!
I was recently asked to provide some information about a specific use case for Citrix StoreFront. Essentially there are 2 Datacenters (Primary and Failover) with a Citrix StoreFront Cluster in both Datacenters. These are both fronted with a Citrix NetScaler Virtual Server and have been set up as Server Groups in the StoreFront Management Console. The issue was application subscription between the primary and failover datacenter.
The issue is that the primary servers will replicate the app subscriptions as they are part of a server group however in the event of a disaster and the users being redirected to the failover cluster they would need to re-subscribe to all their applications.
Lets Assume the following
- StoreFront Cluster Virtual Server Address: 192.168.1.10
- StoreFront Server 1: brettySF1
- StoreFront Server 2: brettySF2
- StoreFront Cluster Virtual Server Address: 192.168.2.10
- StoreFront Server 1: brettyFailSF1
- StoreFront Server 2: brettyFailSF2
There are a few options to replicate the application subscriptions but one I have had work for me is to stagger the replication across the 2 Servers to pull the application subscriptions to the fail over StoreFront Cluster.
Lets assume that I want to replicate the applications to the Failover cluster every hour.
Log into the first server in your failover cluster and open Windows Powershell as an Administrator. You will want to tell this StoreFront Server to pull the app subscription to BOTH remote servers on the hour every hour.
Run the following (changing the names to your servers obviously)
Import-Module "C:\Program Files\Citrix\Receiver StoreFront\Management\Cmdlets\SubscriptionSyncModule.psm1"
Add-DSSubscriptionsRemoteSyncCluster –clusterName brettySF1 –clusterAddress brettysf1.bretty.me.uk
Add-DSSubscriptionsRemoteSyncCluster –clusterName brettySF2 –clusterAddress brettysf2.bretty.me.uk
Add-DSSubscriptionsRemoteSyncStore –clusterName brettySF1 –storeName Bupa
Add-DSSubscriptionsRemoteSyncStore –clusterName brettySF2 –storeName Bupa
Add-DSSubscriptionsSyncSchedule –scheduleName BrettySync –startTime 01:00 -repeatMinutes 30
Add-DSSubscriptionsSyncReoccuringSchedule –scheduleName BrettySync –startTime 01:00:00 -repeatMinutes 30
Run the same script as above except change the start time to 01:15
This will allow the servers to sync the apps at a 15 minute window round the clock.
Hope this helps some of you out.