Deploying on Additional Content Managers

If your setup has more than one content manager, 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 at least one content manager for a scaled environment. See Prepare the 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 Downloads).

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

  3. Open the file.

  4. In the compressed folder, copy the content of the files folder to Local Disk\inetpub\wwwroot\<SITECORE_INSTANCE>\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 (December 2016)

Coveo for Sitecore creates a Coveo directory in the Sitecore instance Data directory to store configuration encryption keys (ConfigurationEncryptionKeys\IndexingEncryptionKeys). These keys must be the same on all the Sitecore instances to be able to decrypt the encrypted configuration elements.

  1. Navigate to Local Disk\inetpub\wwwroot\<SITECORE_INSTANCE>\Data\.

  2. Copy the folder Coveo to each content delivery server in their Data folder.

Coveo for Sitecore (December 2016)

As of December 2016, 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.

  • 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 additional Sitecore instances App_Config\Include\Coveo folder.

  2. In your CM1 instance, copy the App_Config\Include\Coveo folder from the CM1 Sitecore instance to all the additional Sitecore instances.

What’s Next?

Now that you deployed Coveo for Sitecore on your additional Content Managers, you may proceed to deploying the package to your Content Delivery servers (see Deploying Coveo for Sitecore on the Content Delivery Servers).