Setup Site Sync with load balancing

Overview

The following video demonstrates the process of setting up SiteSync and promoting content between two Sitefinity CMS website environments, where the destination environment is running in a Load Balanced setup:

If you have configured your Sitefinity CMS website in a load balanced setup, the same steps for configuring the Site Sync module, listed in this article, apply with the following specifics:

Destination environment:

The recommended approach is to select one node from your load balanced setup (this can be any node; the requirement is to pick one) and use that node as destination for promoting content from the source environment. When in load balanced setup, you must not promote content to the load balanced URL of the site, but rather to a designated node. Once content is promoted to the designated node, the Sitefinity CMS Load Balancing module will ensure cache is invalidated on all nodes, and the promoted content is pulled from the updated database. 

SiteSync_NLB_Setup

If you are using AutoScaling, and you cannot select one node, due to the possibility of its IP address changing dynamically, you can use the load balanced URL instead. To ensure SiteSync will be able to promote content to the load balanced URL, you must enable Sticky session on your load balancer.

Source environment:

When configuring the SiteSync module settings, make sure to point to the designated node of the destination environment load balanced setup. Do not use the load balanced URL. The only exception, when you can use the load balanced URL of the destination environment, is if you have enabled AutoScaling on your load balancer, since this enables SiteSync to create the promoted content on the same node.

Configure Site Sync on target and source nodes

PREREQUISITES: Prior to configuring SiteSync in your load balanced setup, make sure your environments have been properly configured for load balancing. For more information see Configure Sitefinity CMS for load balancing.

RECOMMENDATION: We recommend to setup Site Sync between strictly selected nodes from the source and target environment.

  1. Log in to the backend on all nodes, both on the source and the target environments, and install the SiteSync module.
  2. For all of the nodes on the target environment, perform the following:
    1. Login to the backend and navigate to Administration » Settings » Global settings » Site Sync.
    2. Select Allow content from other sites to be published to this site checkbox.
    3. For all the nodes, set different Site key.
      For example, starting with 1 and incrementing.
  3. Restart all nodes of the target environment at the same time.
    Without browsing the sites, open the web.config files of all nodes and resave them.
  4. For all the servers of the source environment, perform the following:
    1. Log in to the backend of the site on and navigate to Administration » Settings » Global settings » Site Sync.
    2. Under Server(s) where to send data, click Add a server.
    3. Enter the IP address of one of the servers of the target environment. 
      Do not enter the load balancer URL, such as http://80.0.0.1/
      Use the same target server for all source servers.
  5. Restart all nodes of the source environment at the same time.
    Without browsing the sites, open the web.config files of all nodes and resave them.
  6. Test the site sync by logging in to the backend on one of the servers of the source environment explicitly. 
    Do not log in to the backend through the load balancer URL when performing a sync.

Was this article helpful?