Deploy on additional content managers
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: Copy the package to an additional CM
The Coveo for Sitecore installation package contains several files that are added to the Sitecore website directory.
-
Locate the installation package you used for the content manager (see Releases and downloads).
-
Unzip the
Coveo for Sitecore X.Y <BUILD_NUMBER>.zip
. -
Open the
package.zip
file. -
In the
package.zip
compressed folder, copy the content of thefiles
folder to<SITECORE_INSTANCE_ROOT>\Website\
on the additional CM.
The files
folder mimics the folder structure found in the Sitecore website.
Step 2: Ensure 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 <SITECORE_INSTANCE_ROOT>\App_Config\Modules\Coveo.SearchProvider.config
file determines the encryption keys storage database.
Note
The default storage location for the encryption keys is the |
|
Step 3: Disable indexing on additional CMs and CDs
Only the main content manager should index content. You must update configurations accordingly.
To disable indexing on all your additional CMs and CDs, you must patch delete the database
parameter from your coveoSyncMaster
and coveoOnPublishEndAsync
index update strategies.
This is easier to accomplish on Sitecore 9.2+ versions which support the indexing sub-role).
However, the general idea remains the same on Sitecore 9.1 instances.
For example, you can use a rule-based configuration.
Sitecore 9.2+
-
Ensure your main content manager, and only your main content manager, has the
Indexing
sub-role enabled. -
On you main CM, open file
<SITECORE_INSTANCE_ROOT>\App_Config\Include\Coveo\Coveo.SearchProvider.Custom.config
in a text editor. -
Add the following
<indexConfigurations>
element as a child of the<contentSearch>
element.<indexConfigurations> <indexUpdateStrategies> <coveoSyncMaster role:require="ContentDelivery or !Indexing" name="CoveoSyncMaster" type="Sitecore.ContentSearch.Maintenance.Strategies.ManualStrategy, Sitecore.ContentSearch"> <param desc="database"> <patch:delete /> </param> </coveoSyncMaster> <coveoOnPublishEndAsync role:require="ContentDelivery or !Indexing" name="CoveoOnPublishEndAsync" type="Sitecore.ContentSearch.Maintenance.Strategies.ManualStrategy, Sitecore.ContentSearch"> <param desc="database"> <patch:delete /> </param> <CheckForThreshold> <patch:delete /> </CheckForThreshold> </coveoOnPublishEndAsync> </indexUpdateStrategies> </indexConfigurations>
-
Save your changes.
Step 4: Copy 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:
-
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. -
Copy the configuration files folder(s) of the
CM1
instance to each additional Sitecore instance.-
Copy the
Coveo
base configuration files folder located in the<SITECORE_INSTANCE_ROOT>\App_Config\Modules\
folder of yourCM1
instance. Paste it into the<SITECORE_INSTANCE_ROOT>\App_Config\Modules\
folder of your other instances. -
Copy the
Coveo
custom configuration files folder located in the<SITECORE_INSTANCE_ROOT>\App_Config\Include\
folder of yourCM1
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 servers (see Deployment on the content delivery servers).