Install Data Exchange Framework on-prem
This section describes how you install Data Exchange Framework (DEF) in an on-prem solution. You must install DEF on your Content Management and Content Delivery servers.
The Data Exchange Framework (DEF) installation also installs the Tenant Service. If you install DEF on several servers you must enable the Tenant Service to communicate across servers.
Prerequisites for on-prem installation
Data Exchange Framework 8.0 requires Sitecore 10.3. Download the Data Exchange Framework 7.0 software package.
If you want to install the Data Exchange Framework (DEF) on an earlier version of Sitecore, you can find all the DEF versions on the Sitecore download page.
You cannot install DEF on a Sitecore XM deployment topology.
Install on the content management role
Typically, data synchronization runs on a Content Management (CM) server. This requires the entire DEF product to be installed on your CM server.
To install the Data Exchange Framework on the CM server:
-
In Sitecore, open the Installation Wizard.
-
Install the Data Exchange Framework package.
-
Before you close the Installation Wizard, select the Restart Server check box.
NoteYou must restart the Sitecore Server to force Sitecore to build/convert the xDB Collection Model as Sitecore items.
-
To confirm the module was installed, open the Content Editor and verify that the /sitecore/system/Data Exchange item is present.
Install on the content delivery role
In most cases, you do not run data synchronization on your Sitecore Content Delivery (CD) servers. However, the CD servers use the data that is synchronized. You must therefore install parts of DEF on all your CD servers.
Before installing DEF on a CD server, you must install DEF on your Content Management server.
Because there is no installation interface on a CD server, to install DEF you must deploy the necessary .dat
files manually.
Starting with DEF 7.0, DEF items are provided as .dat
files, in line with Sitecore items as resources introduced in Sitecore 10.2.
To deploy the files:
-
On the content management (CM) instance, in the
sitecore modules/items/
folder, copy all database folders, that iscore
,master
, andweb
, and paste them to the content delivery (CD) instance, following the same folder structure.When you have copied the folders, on the CD instance, the
sitecore modules/items
folder contains three<db type>/items.<db type>.dat
files, one for each database type. For example:-
items/core/items.core.def.dat
-
items/master/items.master.def.dat
-
items/web/items.web.def.dat
-
-
Restart the CD server.
Enable Tenant Service to communicate on different servers
If you have DEF with the Tenant Service installed on a different server than your Sitecore content management server, you must enable communication between the two servers:
-
On your Sitecore Content Management server, in the
\App_Config\Sitecore\Services.Client\
folder, open theSitecore.Services.Client.config
file. -
Locate the following setting:
RequestResponse<setting name="Sitecore.Services.SecurityPolicy" value="Sitecore.Services.Infrastructure.Web.Http.Security.ServicesLocalOnlyPolicy,Sitecore.Services.Infrastructure"/>
Change the setting to:
RequestResponse<setting name="Sitecore.Services.SecurityPolicy" value="Sitecore.Services.Infrastructure.Web.Http.Security.ServicesOnPolicy,Sitecore.Services.Infrastructure"/>
The Sitecore ItemService service provides you with an API to read Sitecore items remotely. For example, the Tenant Service needs the ItemService to read the configuration.