In order to remove single point of failure StoreFront can be configured as a multiple server deployment. When you add a a new server to the server group, the new server is automatically configured with all information about user application subscriptions. If for any reason one StoreFront Server becomes unavailable, the remaining servers will continue to serve incoming user requests and users will not experience an interruption of the service. In this article I will provide you with an instruction how to add a new StoreFront server to the server group.

Assumptions

  • All servers hosting StoreFront are members of the same Active Directory domain
  • All servers hosting StoreFront are running the same operating system version with the same locale settings. StoreFront server groups containing mixtures of operating system versions and locales are not supported
  • The new server which will be added to server group is “the fresh installation” or was removed from previous deployment with full reset to a factory default state. For more information see section How to remove server from the server group below.
  • StoreFront Server group can contain a maximum of five servers
  • The configuration of IIS instance on all servers is the same – with particular reference to relative path to StoreFront in IIS

Used abbreviations

  • Server A – the first server with StoreFront already installed and fully configured
  • Server B – the new server which will be added to existing StoreFront deployment

 

How to add a new server to an exisitng server group

Important note: When you add a new server to a server group, StoreFront service accounts are added as members of the local administrators group on the new server. These services require local administrator permissions to join and synchronize with the server group. If you use Group Policy to prevent addition of new members to the local administrator group or if you restrict the permissions of the local administrator group on your servers, StoreFront cannot join a server group.

1. Launch Citrix StoreFront Console on Server A, select Server Group in the left pane and click Add Server in the Actions pane.

SF2_0

Figure 1

2. The authorization server and code will be displayed.

SF2_2

Figure 2

3. Launch Citrix StoreFront Console on Server B, select Citrix StoreFront in the left pane and click Join exisitng server group in the middle pane.

SF2_1

Figure 3

4. Enter authorization details displayed in step 2 and press Join to continue.

SF2_3

Figure 4

5. Progress bar will show the current status as it is shown in Figure 5 below.

SF2_4

Figure 5

6. When finished the completed status is displayed. (Remember that we are still on Server B)

SF2_7

Figure 6

7. In the same time on Server A similar message is displayed as it is shown in Figure 7 below.

SF2_5

Figure 7

8. In Citrix StoreFront Console on Server A, in the middle pane information about new StoreFront configuration is displayed

SF2_8

Figure 8

9. In Citrix StoreFront Console on Server B, in the middle pane you can find additional information as it is shown in Figure 9

SF2_6

Figure 9

10. In the Actions pane you can find tasks which can be performed in the multiple server StoreFront deployment. The available options are the following:

  • Add server – use the option to obtain an authorization code to join an existing deployment. A server group can contain a maximum of five servers.
  • Remove server – use this option to delete servers from a multiple server StoreFront deployment. You can remove any server in the group apart from the server on which you are running the task. Before removing a server from a multiple server deployment, first remove the server from the load balancing environment.
  • Propagate changes – use this option to update the configuration of all the other servers in a multiple server StoreFront deployment to match the configuration of the current server. Any changes made on other servers in the group are discarded. While running this task, you cannot make any further changes until all the servers in the group have been updated.
  • Change Base URL – use this option to modify the URL that is used as the root of the URLs for the stores and other StoreFront services hosted on a deployment. For multiple server deployments, specify the load-balanced URL. You can also use this task to change from HTTP to HTTPS.
  • Generate Security Keys – use this task to generate new security keys for self-signed certificates used by a server group. As part of security best practice, Citrix recommends that you periodically generate new security keys for self-signed certificates generated by StoreFront. When you generate new security keys, any users that are currently logged on will need to reauthenticate to their stores. As a result, this task is best carried out during periods of low user activity.

To change the base url click Change Base URL in Actions pane

SF2_9

Figure 10

11. Specify the load-balanced URL and click OK to continue.

SF2_10

Figure 11

12. When finished, new configuration details are displayed in Server Group middle pane. See Figure 12 section 1. In section 2 you see the time when last synchronization with second server was completed. As the final step click Propagate Changes in the Actions pane.

SF2_11

Figure 12

13. When completed you will see the current time in the synchronization details as it is shown in Figure 13.

SF2_12

Figure 13

 

How to remove server from an existing server group

1. Launch Citrix StoreFront Console on Server A, select Server Group in the left pane and click Remove Server in the Actions pane.

sf2_r1

Figure 14

2. Select the server you want to remove and press Remove to continue.

sf2_r2

Figure 15

3. Press Yes to confirm removal.

sf2_r3

Figure 16

4. If you have more than 2 server, click propagate changes to update the configuration on the remaining servers. In my case I had only 2 servers and current configuration with 1 server is shown in Figure 4 below.

sf2_r4

Figure 17

5. Reset the disconnected server to a factory default state. Until you do the reset the disconnected server is not aware that it is no longer a member of the group. The current configuration stored on Server B is shown in the Figure 18 below.

sf2_r5

Figure 18

5a. Close the administration console on server B, open PowerShell console and import the StoreFront PowerShell modules using the following command:

& “$Env:PROGRAMFILES\Citrix\Receiver StoreFront\Scripts\ImportModules.ps1”

sf2_r6

Figure 19

5b. Run the Clear-DSConfiguration command to reset the server to default settings.

sf2_r7

Figure 20

6. Open the StoreFront administration console and server B is reset and ready to be added to another server group.

sf2_r8

Figure 21