Deployment on the content delivery servers
Deployment on the content delivery servers
The instructions below presume that you have a setup similar to the one in the Setting up the Sitecore Infrastructure article (see Sitecore infrastructure setup).
If your environment is different, read the steps carefully since you’ll need to tailor some of them to your environment.
Step 1: Copying the package to CDs
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 <SITECORE_VERSION> <BUILD_NUMBER>.zip
. -
Open the
package.zip
file. -
Copy the contents of the
files
folder to the<SITECORE_INSTANCE_ROOT>
folder on each CD. Thefiles
folder mimics the folder structure found in the Sitecore website.
Note
For Azure Web App deployments, consider using a tool like the Kudo console for file and folder manipulations (for example, browsing, uploading/downloading, copying, editing, renaming, deleting). Refer to this Microsoft blog article for more tips on tools designed for working with files in Azure. |
Copying Coveo for Sitecore SXA files to CDs
If you’re using SXA, copy the Coveo for Sitecore SXA package files to your CDs the same way you did above.
-
Locate the installation package you used for the content manager (see Releases and downloads).
-
Unzip the appropriate
Coveo for Sitecore SXA <SXA_VERSION(s)> <BUILD_NUMBER>.zip
file, based on the version of Sitecore you’re using. -
Open the
package.zip
file. -
Copy the contents of the
files
folder to the<SITECORE_INSTANCE_ROOT>
folder on each CD. Thefiles
folder mimics the folder structure found in the Sitecore website.
Step 2: Ensuring access to the encryption keys
Coveo for Sitecore stores the encryption keys in the Properties
table of the core
database.
These keys must be the same on all the Sitecore instances to be able to decrypt the encrypted configuration elements.
If your CMs and CDs don’t share the same core
database, make sure you have a database replication strategy in place.
Coveo for Sitecore stores the encryption keys in the web
database.
These encryption keys must be the same on all the Sitecore instances to be able to decrypt the encrypted configuration elements.
If your CMs and CDs don’t share the same core
/web
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 configuration as the CM1
Sitecore instance.
Note
Copying the |
-
In each additional Sitecore instance, delete the
Coveo
configuration files folder(s) 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.
-
Step 4: Preventing CDs from trying to write to the Property Store database
In certain circumstances, Coveo for Sitecore may try to write LASTCRITICALINDEXINGEXCEPTION
records to the Property Store.
This will cause errors if you have set the Property Store database to read-only mode.
To prevent these errors, you can set the Coveo for Sitecore CriticalExceptionsDisabled
setting to true
.
-
In the
<SITECORE_INSTANCE_ROOT>\App_Config\Include\Coveo\Coveo.SearchProvider.Custom.config
file, try to locate the<settings>
element, a child of the<sitecore>
element. If the<settings>
element is missing, add it.... <sitecore coveo:require="!disabled"> <settings> </settings> ...
-
In the
<settings>
element, add the following<setting>
child element:<setting role:require="ContentDelivery" name="Coveo.Framework.CriticalExceptionsDisabled" value="true" />
-
Save your changes.
What’s next?
You’re now done with deploying Coveo for Sitecore, and you should test your connection to make sure everything is working (see Validate connectivity of the new hosts).