Deploy on Additional Content Managers

If your setup has more than one content management instance, you also need to copy the Coveo for Sitecore package and the Coveo data to the other CMs.

Make sure that you have already configured a Content Manager for a scaled environment (see Prepare the Main Sitecore Content Manager for a Scaled Environment).

Step 1: Copying the Package to an Additional CM

The Coveo for Sitecore installation package contains several files that are added to the Sitecore website directory.

  1. Locate the installation package you used for the content manager (see Releases and Downloads).

  2. Unzip the Coveo for Sitecore XX X.X (xxxx).zip.

  3. Open the package.zip file.

  4. In the package.zip compressed folder, copy the content of the files folder to <SITECORE_INSTANCE_ROOT>\Website\ on the additional CM.

The files folder mimics the folder structure found in the Sitecore website.

Step 2: Ensuring Access to the Encryption Keys

Coveo for Sitecore stores its encryption keys in the Properties table of a database. These encryption keys must be the same on all the Sitecore instances to be able to decrypt the encrypted configuration elements. The <Database> setting in the Coveo.SearchProvider.config file determines the encryption keys storage database.

Coveo for Sitecore (May 2019)

For versions of Sitecore up to Sitecore 9.0 inclusively, the default storage location for the encryption keys is the core database. For Sitecore 9.1 onwards, the default value for this setting is the web database.

See the How to validate the encryption key has switched to the core database mode after an upgrade of Coveo for Sitecore Coveo community article for more details on encryption key storage option configurations. This article also contains handy SQL queries to validate whether a database contains the encryption key and to copy the encryption key between core databases of separate Sitecore instances. For Sitecore 9.1+ instances which store the encryption key in the web database, replace _core with _web in the references to the database name of the provided SQL queries.

  • If your CMs and CDs are all set up to access the pub database, ensure that you patch the following settings accordingly:

    1. the <Database> element in the Coveo.SearchProvider.Custom.config file

    2. the <setting name="Coveo.Framework.DatabasePropertyName" element in the Coveo.Authentication.config file

  • If your CMs and CDs don’t all share a given database, make sure you have a database replication strategy in place.

Step 3: Copying the Configuration Files

Since the index is shared between all the Sitecore instances, you need to configure all the additional Sitecore instances (CMs and CDs) to use the same base configuration as the CM1 Sitecore instance:

  1. Delete the Coveo configuration files folder(s) in each additional Sitecore instance.

    Sitecore 7 and 8 In each additional Sitecore instance, delete the Coveo folder located in the <SITECORE_INSTANCE_ROOT>\Website\App_Config\Include\ folder.

    Sitecore 9 and 10 In each additional Sitecore instance, delete the Coveo folders located in the <SITECORE_INSTANCE_ROOT>\App_Config\Include\ and <SITECORE_INSTANCE_ROOT>\App_Config\Modules\ folders.

  2. Copy the configuration files folder(s) of the CM1 instance to each additional Sitecore instance.

    Sitecore 7 and 8 Copy the Coveo folder located in the <SITECORE_INSTANCE_ROOT>\Website\App_Config\Include\ folder of your CM1 instance. Paste it into your <SITECORE_INSTANCE_ROOT>\Website\App_Config\Include\ folder of your other instances.

    Sitecore 9 and 10 Copy the Coveo base configuration files folder located in the <SITECORE_INSTANCE_ROOT>\App_Config\Modules\ folder of your CM1 instance. Paste it into the <SITECORE_INSTANCE_ROOT>\App_Config\Modules\ folder of your other instances.

    Sitecore 9 and 10 Copy the Coveo custom configuration files folder located in the <SITECORE_INSTANCE_ROOT>\App_Config\Include\ folder of your CM1 instance. Paste it into the <SITECORE_INSTANCE_ROOT>\App_Config\Include\ folder of your other instances.

What’s Next?

Deploy Coveo for Sitecore on your content delivery server(s) (see Deploy Coveo for Sitecore on the Content Delivery Servers).

Recommended Articles