Walkthrough: Upgrading the DEF connector in Kubernetes
This topic explains how you can upgrade Data Exchange Frame Container (DEF) 7.0 to DEF 8.0. DEF 8.0 is compatible with Sitecore 10.3.
Before you upgrade DEF for container 7.0 to DEF for container 8.0, you must have an existing Sitecore 10.2 Kubernetes deployment with DEF connector. You must also back up your current mssql databases.
This walkthrough describes how to:
-
Build and push the mssql-upgrade image
-
Complete the upgrade
Build and push the mssql-upgrade image
To upgrade DEF you must build an mssql-upgrade image.
To build and push the mssql-upgrade image:
-
Build the images for DEF as explained in the Build the mssql-upgrade image section in Walkthrough: Upgrading Data Exchange Framework in Docker.
-
Open a PowerShell window, go to the same path as the Dockerfile, and run the following command:
RequestResponsedocker build. -t sitecore-def -xp1-cm:<imageVersionTag> $registry/sitecore-def-xp1-cm:<newTag> -
Check that the image has been created:
-
Run the following command to push the image you created to your Azure registry. For example:
RequestResponsedocker push $registry/sitecore-def-xp1-cm:<newTag>
Complete the upgrade
To complete the upgrade:
-
Download the Sitecore container deployment package for 10.3, and extract it to your local workstation with the folder structure intact.
-
Navigate to the upgrade folder for the Windows version and topology you are using, for example,
k8s\ltsc2019\upgrade\xp1. In thekustomization.yamlfile, update the images section withnewNameandnewTagof the custom mssql-upgrade image you created and pushed previously. -
In the
configurationfolder, update the secrets files. For more information on the secrets files, refer to the Installation Guide for Production Environment with Kubernetes guide available on the Sitecore download page. -
Download the DEF container deployment package for 8.0 package from the Sitecore download page. Extract it to your local workstation with the folder structure intact. Copy the
DEF.Asset\k8s\<windows version>\overridesfolder and paste it into the\k8s\<windows version>\folder in the SXP 10.3 deployment structure. -
In the
secretsfolder in the SXP 10.3 structure, for example,k8s\ltsc2019\overrides\xp1\secrets, update thesitecore-tenant-service-connection-string.txtsecret file. -
Log in to the Azure CLI and set a subscription:
RequestResponseaz login az account set --subscription "Your Subscription" -
Get the credentials for the Kubernetes cluster that was created with the AKS cluster by running this command:
RequestResponseaz aks get-credentials --resource-group <10.1 resource group>--name <10.1 cluster> -
To deploy the Sitecore upgrade job, go to the folder where the updated files are, for example,
k8s\ltsc2019\upgrade\xp1, and run this command:RequestResponsekubectl apply -k .\ -
To check if the job has completed, run this command:
RequestResponsekubectl get pod -
When the upgrade process is completed, you can delete the Kubernetes upgrade job and upgrade secrets. In the console, go to the folder you used in step 2, and run these commands:
RequestResponsekubectl delete -f .\ kubectl delete -k .\
If you are upgrading from DEF version 6.0 and earlier, you must clean up DEF items from the database because DEF version 7.0 and later use resources files. This requires rebuilding and upgrading the Sitecore role instances cm, xconnect, and xdbsearchworker.
For detailed instructions on how to build and deploy the Sitecore role instances refer to the Sitecore Upgrade Container Deployment Guide on the Sitecore download page.