Setting Up eSync

This chapter explains how to install and set up eSync. For full details about the feature, see Using eSync.

eSync requirements

eSync Requirements

  • Ektron Software and Files
    • Ektron version 8.5 or higher

      WARNING! The version of Ektron on every server in the sync configuration must match. You cannot upgrade nor downgrade Ektron using eSync.

    • An Ektron base installation file (for example, cms400Base8x.exe). Use to install a second site with which to sync your current site.
    • Ektron licenses that support Enterprise or Professional with eSync on every server being synched
    • Matching security certificates on every server being synched See Also: ManagingeSync Security Certificates
  • Microsoft Software
    • See Server Requirements
    • Microsoft Sync Framework 2.1

      NOTE: It is not a problem if your templates were created using the 2.0 Framework.

    • Destination and source database servers do not need the same SQL server version. (For example, your development server uses SQL 2008 Express, and your production server uses SQL Server 2008 R2.)

  • User Permissions
    • You are a member of the Ektron Administrators group or assigned the Synchronization Admin role See Also: Defining Roles
    • The user performing the sync has either a db_ddladmin or dbowner role for the SQL database
  • Server
    • GMT time on each server’s clock must be within 5 minutes of each other
Scenario 1: Synching 2 sites on the same server

Scenario 1: Synching 2 Sites on the Same Server

It is unlikely that you will use this configuration in “real-life” situations, but this scenario provides the simplest way to begin testing and learning eSync.

IMPORTANT: Only use this scenario in a test environment. For a live environment, use either Scenario 2: Synching a Local Server with a Remote Server or Scenario 3: Setting up a Development > Staging > Production Environment.

  1. Install the first site. See Also: Installing Ektron.
  2. Near the end of the installation, the following dialog appears. Click Yes.

  3. Install a second site on the same server.

    IMPORTANT: Install both sites to a physical folder relative to the root folder. Do not install one site to a physical folder relative to the root folder and the other site to a virtual directory.

  4. Near the end of the installation, the same dialog appears. Click Yes.

Both sites’ security certificates have been set up and configured. Continue from Part 3: Connect the Local and Remote Servers.

Scenario 2: Synching a local server with a remote server

Scenario 2: Synching a Local Server with a Remote Server

To sync a local to a remote server, install a minimal Ektron site to a new, remote server. Next, use eSync to upload your Ektron site from the local to the remote server. After the you complete the initial and template syncs explained in this chapter, the 2 sites are mirror images of each other.

Follow these steps to configure 2 servers to sync with each other.

Prerequisite: See eSync Requirements

1. Set up a min site on the remote server

Part 1: Set up a Min Site on the Remote Server

  1. Upgrade the local server to the latest version of Ektron if necessary.
  2. On the remote server, install a minimum Ektron site whose version matches the local server by running the Ektron base installation file (CMS400Base8x.exe). For more information, see Installing Ektron.

    IMPORTANT: Install both sites to a physical folder relative to the root folder. Do not install one site to a physical folder relative to the root folder and the other site to a virtual directory.

  3. If the local site is pre-compiled, you must also pre-compile the remote site.
2. Generate and copy security certificates

Part 2: Generate and Copy Security Certificates

Security certificates authorize file synchronization between servers. In this part, you generate security certificates on the local server, then copy them to the remote.

  1. Sign on to the local server.
  2. Click the Windows Start button > All programs > Ektron > CMS400 v8x > Utilities > Security Configurator. Right click and choose Run As Administrator. The following screen appears.

  3. At the Web Site Description field, select the Web site on the local server.
  4. Click Generate.
  5. Click Yes. The certificates are created on the local server.

    NOTE: Ektron Windows Services stop and restart at this point.

  6. Close the dialog.
  7. Open 2 Windows Explorer windows side-by-side: one showing the local server’s file system, and the other showing the remote server’s file system.
  8. In the remote server window, create a folder underneath the root folder. Name the folder local security certificate.

    WARNING! Do not create the new folder under the Web root, C:\inetpub\wwwroot.

  9. In the local server window, open the following folder:
    32-bit:
    C:\ProgramFiles\Ektron\CMS400v8x\Utilities\Software\SecurityConfigurator
    64-bit:
    C:\ProgramFiles (x86)\Ektron\CMS400v8x\Utilities\Software\SecurityConfigurator
  10. From that folder, copy these files.
    • servername_SyncClient.pfx
    • servername_SyncClient.pvk
    • servername_SyncClient.cer
    • servername_SyncServer.pfx
    • servername_SyncServer.pvk
    • servername_SyncServer.cer
  11. Paste the files into the remote folder you created in Step 8. Make sure there are no other security files in the folder.
  12. Close both windows you opened in Step 7.

    NOTE: After copying security certificates to the remote folder, they need to be registered and moved to the correct folders. The Security Configurator screen does this.

  13. Sign on to the remote server.
  14. Click the Windows Start button > All programs > Ektron > CMS400 v8x > Utilities > Security Configurator. Right click and choose Run As Administrator. The security configurator screen appears.

  15. Click Apply Remote Server Certificates.
  16. Click Browse next to that field.
  17. Browse to the local security certificate folder where you pasted the security certificates in Step 11.
  18. Click Apply.

    NOTE: Ektron Windows Services stop and restart at this point.

  19. Click Yes to continue.
  20. The security configurator copies the certificates you pasted in Step 11 to the correct folder, and configures them for the remote server.
  21. Click OK when you see All sites are now configured for eSync.
  22. Next, generate security certificates on the remote server, then copy them to the local.

    To accomplish this, repeat the steps in Part 2: Generate and Copy Security Certificates, but this time, treat the remote server as the local server and vice versa.

3. Connect the local and remote servers

Part 3: Connect the Local and Remote Servers

WARNING! Back up your database before beginning this procedure.

  1. On the local server, sign on to Ektron.
  2. In the Ektron Workarea, go to Settings > Configuration > Synchronization. The View All Synchronization Configurations screen appears.

  3. Click Create Synchronization Server Relationship. The screen appears.

  4. At the Remote Server field, enter the remote server name. The remote server appears in the Choose Certificate field.
  5. Click Connect.
  6. A screen shows the remote server's databases. Click the database with which you want to sync then Next.

  7. A screen appears, showing both servers. Click Switch Synchronization Direction.
  8. The screen indicates that the database will be uploaded from your local server to the remote server. Click Create. This action connects the local and remote servers.
4. Upload the local server's database and resources to the remote server

Part 4: Upload the Local Server’s Database and Resources to the Remote Server

NOTE: If your Ektron has a very large database or number of assets, and you want to reduce the time required to complete the initial sync, see Minimizing the Time of the Initial Sync.

  1. From the View All Synchronization Configurations screen, click Start Initial Sync ().

  2. The initial sync uploads the local server’s database and resources to the remote server. A screen tracks the progress.

  3. When the sync is finished, Synchronization is Complete appears.

    The initial sync creates a default database profile. The profile remembers sync information, such as source and destination databases, sync direction, and items to synchronize. You can reuse this profile to sync database/resource files in the future.

4a. Minimizing the time of the initial sync

Minimizing the Time of the Initial Sync

Use the following procedures if you have a large database or number of assets and want to minimize the time to complete an initial sync. In both cases, you use a tool other than eSync for the initial copy. From then on, use eSync to maintain the transfer of data among servers in a sync relationship.

Copying the initial database

Copying the Initial Database

To quickly copy a database between servers:

  1. On your Ektron server, open the folder C:\Program Files (x86)\Ektron\EktronWindowsService40.
  2. Open Ektron.ASM.Services40.exe.config.
  3. Set the <add key="skipDataSyncChanges"> element to true.
  4. Restart the Ektron Windows Service.
  5. Back up the database of the local server.
  6. Restore that backup to the remote server.
  7. Run an initial sync.
  8. Restart the Ektron Windows Service.
  9. Update your license key.
    For example, if the original database is backed up from staging and restored on production, the license key in the database may be for the Staging.abc.com domain. But, on the production server, you need a production domain key, such as abc.com. See Also: License Keys
  10. Change the <add key="skipDataSyncChanges"> element to false.
Copying initial assets

Copying Initial Assets

Assets consist of files in these folders:

  • siteroot/assets
  • siteroot/privateassets
  • siteroot/uploadedfiles
  • siteroot/uploadedimages
  • C:/assetlibrary

If your Ektron has a large number of assets, you may want to reduce the initial sync time. To copy asset files between servers quickly:

  1. On your Ektron server, open C:\Program Files (x86)\Ektron\EktronWindowsService40\Ektron.ASM.Services40.exe.config.
  2. Set the <add key="skipFileSyncChanges"> element to true.
  3. Restart the Ektron Windows Service.
  4. Using Windows Explorer, copy the folders listed above from the local to the corresponding folders on the remote server.
  5. Run an initial sync.
  6. Change the <add key="skipFileSyncChanges"> element back to false.
  7. Restart the Ektron Windows Service.
5. Upload the local server's templates to the remote server

Part 5: Upload the Local Server’s Templates to the Remote Server

  1. From the View All Synchronization Configurations screen, click Add Sync Profile (). The Add Synchronization Profile screen appears.

  2. At the Synchronization name field, give this profile a name, such as Local - Remote Template Sync.
  3. At the Items to Synchronize field, select Template.
  4. Check bin to include dlls and assembly changes.
  5. For Synchronization Direction, choose Upload.
  6. For Schedule, choose None.
  7. Save the profile.
  8. Click Sync () to the right of the template profile.

  9. A screen tracks the sync’s progress. When it is complete, Synchronization is Complete appears. You can reuse the template profile to sync templates in the future.
Scenario 3: Setting up a development > staging > production environment

Scenario 3: Setting up a Development > Staging > Production Environment

Before

>After

In this scenario, Ektron initially resides on one server. Consider that your production server and use it to initialize the staging and development servers.

WARNING! In this scenario, you cannot sync between the development and production servers. The sync can only be run between Development and Staging or Staging and Production.

Prerequisite: See eSync Requirements

1. Set up min site on the staging and development servers

Part 1: Set up Min Site on the Staging and Development Servers

  1. Upgrade your server to the current version of Ektron if necessary.
  2. Install a minimum site on the staging and development servers by running the Ektron base installation file (CMS400Base8x.exe). See System Requirements.

    IMPORTANT: Install both sites to a physical folder relative to the root folder. Do not install one site to a physical folder relative to root and the other sites to virtual directories.

2. Generate and copy security certificates

Part 2: Generate and Copy Security Certificates

Security certificates authorize synchronization between servers. In an eSync configuration, every server needs a security certificate from every other server, as shown below.

To generate and copy these certificates:

2a. Generate certificates on production and copy to staging and development

2a. Generate Certificates on Production and Copy to Staging and Development

  1. Sign on to the production server.
  2. Click the Windows Start button > All programs > Ektron > CMS400 v8x > Utilities > Security Configurator. Right click and choose Run As Administrator. The following screen appears.

  3. At the Web Site Description field, select the production server Web site.
  4. Click Generate. The certificates are created on the production server.
  5. Open 2 Windows Explorer windows: one showing the production server’s file system, and the other showing the staging server’s file system.
  6. In the staging server window, create a folder underneath the root folder. Name the folder Prod security certificates.

    WARNING! Do not create the new folder under the Web root, C:\inetpub\wwwroot.

  7. In the production server window, open the following folder: C:\ProgramFiles\Ektron\CMS400v8x\Utilities\Software\SecurityConfigurator.
  8. From that folder, copy these files.
    • servername_SyncClient.pfx
    • servername_SyncClient.pvk
    • servername_SyncClient.cer
    • servername_SyncServer.pfx
    • servername_SyncServer.pvk
    • servername_SyncServer.cer
  9. Paste the files into the folder you created in Step 6. Make sure there are no other security files in the folder.
  10. Close both windows.

    After copying security certificate files to the staging folder, they need to be registered and moved to the correct folders. The Security Configurator screen does this.

  11. Sign on to the staging server.
  12. Click the Windows Start button > All programs > Ektron > CMS400 v8x > Utilities > Security Configurator. Right click and choose Run As Administrator. The security configurator screen appears.
  13. Click Apply Remote Server Certificates.
  14. Click the browse button next to that field.
  15. Browse to the folder to which you pasted the security certificates in Step 9.
  16. Click Apply. The security configurator copies the certificates you pasted in Step 9 to the correct folder, and configures them for the staging server.
  17. Follow the same procedure to move production certificates to the development server. To do this, begin at Step 6 and follow all steps. Wherever the instructions mention a staging server, substitute the development server.
2b. Generate certificates on staging and copy to development and production

2b. Generate Certificates on Staging and Copy to Development and Production

  1. Sign on to the staging server.
  2. Click the Windows Start button > All programs > Ektron > CMS400 v8x > Utilities > Security Configurator. Right click and choose Run As Administrator. The following screen appears.

  3. At the Web Site Description field, select the staging server Web site.
  4. Click Generate. The certificates are created on the staging server.
  5. Open 2 Windows Explorer windows: one showing the staging server’s file system, and the other showing the production server’s file system.
  6. In the production server window, create a folder underneath the root folder. Name the folder staging security certificates.

    WARNING! Do not create the new folder under C:\inetpub\wwwroot.

  7. In the staging server window, open the following folder: C:\ProgramFiles\Ektron\CMS400v8x\Utilities\Software\SecurityConfigurator.
  8. Copy these files.
    • servername_SyncClient.pfx
    • servername_SyncClient.pvk
    • servername_SyncClient.cer
    • servername_SyncServer.pfx
    • servername_SyncServer.pvk
    • servername_SyncServer.cer
  9. Paste the files into the folder you created in Step 6. Make sure there are no other security files in the folder.
  10. Close both windows opened in Step 5.

    NOTE: After copying the security certificate files to the production folder, they need to be registered and moved to the correct folders. The Security Configurator screen does this.

  11. Sign on to the production server.
  12. Click the Windows Start button > All programs > Ektron > CMS400 v8x > Utilities > Security Configurator. Right click and choose Run As Administrator. The security configurator screen appears.
  13. Click Apply Remote Server Certificates.
  14. Click the browse button next to that field.
  15. Browse to the folder to which you pasted the security certificates in Step 9.
  16. Click Apply. The security configurator copies the certificates you pasted in Step 9 to the correct folder, and configures them for the production server.
  17. Follow the same procedure to move staging certificates to the development server. To do this, begin at Step 6 and follow all steps. Where the instructions mention a production server, substitute the development server.
2c. Generate certificates on development and copy to staging and production

2c. Generate Certificates on Development and Copy to Staging and Production

  1. Sign on to the development server.
  2. Click the Windows Start button > All programs > Ektron > CMS400 v8x > Utilities > Security Configurator. Right click and choose Run As Administrator. The following screen appears.

  3. At the Web Site Description field, select the Web site on the development server.
  4. Click Generate. The certificates are created on the development server.
  5. Open 2 Windows Explorer windows: one showing the development server’s file system, and the other showing the staging server’s file system.
  6. In the staging server window, create a folder underneath the root folder. Name the folder Dev security certificates.

    WARNING! Do not create the new folder under C:\inetpub\wwwroot.

  7. In the development server window, open the following folder: C:\ProgramFiles\Ektron\CMS400v8x\Utilities\Software\SecurityConfigurator.
  8. Copy these files.
    • servername_SyncClient.pfx
    • servername_SyncClient.pvk
    • servername_SyncClient.cer
    • servername_SyncServer.pfx
    • servername_SyncServer.pvk
    • servername_SyncServer.cer
  9. Paste the files into the staging server folder you created in Step 6. Make sure there are no other security files in the folder.
  10. Close both windows you opened in Step 5.
  11. After copying the security certificate files to the staging folder, they need to be registered and moved to the correct folders. The Security Configurator screen does this.
  12. Sign on to the staging server.
  13. Click the Windows Start button > All programs > Ektron > CMS400 v8x > Utilities > Security Configurator. Right click and choose Run As Administrator. The following screen appears.
  14. Click Apply Remote Server Certificates.
  15. Click the browse button next to that field.
  16. Browse to the folder you created in Step 6.
  17. Click Apply.
  18. The security configurator copies the certificates you pasted in Step 9 to the correct folder, and configures them for the staging server.
  19. Follow the same procedure to move development certificates to the production server. To do this, begin at Step 6 and follow all steps. Wherever the instructions mention a staging server, substitute the production server.
3. Connect staging and production servers

Part 3: Connect Staging and Production Servers

WARNING! Back up your database before beginning this procedure!

  1. On the staging server, sign on to Ektron.
  2. In the Workarea, go to Settings > Configuration > Synchronization. The View All Synchronization Configurations screen appears.

  3. Click Create Synchronization Server Relationship. That screen appears.

  4. In the Remote Server field, enter the production server.
  5. In the Choose Certificate field, the name of the production server appears.
  6. Click Connect. This action connects the staging with the production server.
  7. A new screen appears showing the production server's database.

  8. Click Next. A new screen appears, showing both servers.

  9. Click Create. This action connects the staging and production servers.
4. Download the production server database to the staging server

Part 4: Download the Production Server Database to the Staging Server

NOTE: If your Ektron has a very large database or number of assets, and you want to reduce the initial sync time, see Minimizing the Time of the Initial Sync

  1. From the View All Synchronization Configurations screen, click Start Initial Sync ().

  2. The initial sync downloads the production server’s database and resources to the staging server. A screen tracks progress.

  3. Synchronization is Complete appears.

    The initial sync creates a default database profile. The profile remembers information about the sync, such as the: source and destination databases, sync direction, the database and resource files are synched. You can use the profile to run database/resource syncs in the future.

5. Download the production server's template to staging

Part 5: Download the Production Server’s Templates to Staging

  1. From the View All Synchronization Configurations screen, click Add Sync Profile (). The Add Synchronization Profile screen appears.
  2. At the Synchronization name field, give this profile a name, such as Prod - Staging Template Sync.
  3. At the Items to Synchronize field, select Template.
  4. Check bin to include dlls and assembly changes.
  5. For Direction, choose Download.
  6. For Schedule, choose None.

  7. Save the profile.
  8. Click Sync () to the right of the profile. A screen tracks the sync’s progress.

  9. When the sync is complete, Synchronization is Complete appears. You can reuse the template sync profile in the future.
6. Connect the development and staging servers

Part 6: Connect the Development and Staging Servers

  1. Sign on to Ektron development server.
  2. In the Ektron Workarea, go to Settings > Configuration > Synchronization. The View All Synchronization Configurations screen appears.

  3. Click Add (). The Create Synchronization Server Relationship screen appears.

  4. At the Remote Server field, enter the name of the staging server.
  5. At the Choose Certificate field, the name of the staging server appears.
  6. Click Connect. This action connects the development with the staging server. After you connect to the staging server, a new screen appears showing its database.

  7. Click Next. A new screen appears, showing both servers.

  8. Click Create. This action connects the development and staging servers.
7. Download the staging server database to the development server

Part 7: Download the Staging Server Database to the Development Server

NOTE: If your Ektron has a very large database or number of assets, and you want to reduce the initial sync time, see Minimizing the Time of the Initial Sync.

  1. From the View All Synchronization Configurations screen, click Start Initial Sync.

    The initial sync downloads the staging server’s database and resources to the development server. A screen tracks the sync’s progress.

  2. When the sync is complete, Synchronization is Complete appears.

    The initial sync also creates a default database profile. The profile remembers information about the sync, such as the source and destination databases, sync direction, and the fact that it syncs the database and resource files (see example below). You can reuse this profile to sync the database/resources between these 2 servers at any time in the future.

8. Download the staging server templates to development

Part 8: Download the Staging Server Templates to Development

  1. From the View All Synchronization Configurations screen, click AddProfile (). The Add Synchronization Profile screen appears.
  2. At the Name field, give this profile a name, such as Staging-Dev Template Sync.
  3. At the Items to Synchronize field, select Template.
  4. Check bin to include dlls and assembly changes.
  5. For Direction, choose Download.
  6. For Schedule, choose None.

  7. Save the profile.
  8. Click Sync () to the right of the profile. A screen tracks the sync’s progress.

  9. When the sync is complete, Synchronization is Complete appears. You can reuse the profile to sync templates in the future.