Start of Main Content

At Velir, we’re well-versed in upgrading Sitecore for our clients. But a recent client upgrade to Sitecore 9.3, required us to customize a number of features and perform a dive deep into their Sitecore installation. So, we wanted to share what we learned to make it easier for anyone else who wants to tweak a stock Sitecore system. 

Sitecore offers documentation on setting up an environment for the upgrade process, but there are gaps in it. One gap is the networking layout of a default scaled Sitecore instance on Azure. Many clients have their own infrastructure teams that need this information so that they can properly configure the network after Sitecore’s installation. That’s why we created the following network diagrams for Sitecore 9.3 single and scaled installations.

Get help with your Sitecore upgrade. Learn about our Sitecore experience.

We’ll ensure a smooth transition to the latest version of Sitecore, so you can take advantage of all the latest features for your website.

Application Diagram 

Sitecore 9.3 Single

A network diagram showing how a single installation of Sitecore 9.3 connects to Solr via port 8983 and to users on the Internet via port 443.
In a single Sitecore 9.3 installation Redis connects to CD/CM via port 6379 and CD/CM, xConnect, and Identity connect to Azure SQL Pools via port 1433.

Sitecore 9.3 Scaled

A network diagram showing how a scaled installation of Sitecore 9.3 connects to Solr via port 8983 and to users on the Internet via port 443.
In a scaled Sitecore 9.3 installation Redis connects to CM via port 6379 and Content Authoring, Content Delivery, Cortex, xConnect, and Marketing Automation servers connect to Azure SQL Pools via port 1433.

License Files 

When either your license file expires or you need to swap your partner license with the client license, you’ll need to update all the locations where the license file lives. There are quite a few locations where it lives and it’s not always obvious how many licenses exist or where they’re located. Here’s a list: 

Sitecore Single

  • CM App Service:
    • /site/wwwroot/App_Data 
  • CD App Service:
    • /site/wwwroot/App_Data 
  • Identity App Service:
    • /site/wwwroot/sitecoreruntime 
  • xConnect App Service
    • /site/wwwroot/App_Data 
    • /site/wwwroot/App_Data/jobs/continuous/AutomationEngine/App_Data 
    • /site/wwwroot/App_Data/jobs/continuous/IndexWorker/App_Data 
    • /site/wwwroot/App_Data/jobs/continuous/ProcessingEngine/App_Data 

Sitecore Scaled

  • CM App Service:
    • /site/wwwroot/App_Data 
  • CD App Service:
    • /site/wwwroot/App_Data 
  • Identity App Service:
    • /site/wwwroot/sitecoreruntime 
  • Cortex Processing App Service
    • /site/wwwroot/App_Data 
    • /site/wwwroot/App_Data/jobs/continuous/ProcessingEngine/App_Data 
  • Cortex Reporting App Service
    • /site/wwwroot/App_Data 
  • Marketing Automation Operations App Service
    • /site/wwwroot/App_Data 
    • /site/wwwroot/App_Data/jobs/continuous/AutomationEngine/App_Data 
  • Marketing Automation Reporting App Service
    • /site/wwwroot/App_Data 
  • Processing App Service
    • /site/wwwroot/App_Data 
  • Reporting App Service
    • /site/wwwroot/App_Data 
  • xConnect Collect App Service
    • /site/wwwroot/App_Data 
  • xConnect RefData App Service
    • /site/wwwroot/App_Data 
  • xConnect Search App Service
    • /site/wwwroot/App_Data 
    • /site/wwwroot/App_Data/jobs/continuous/IndexWorker/App_Data/ 

Rule-Based Configuration 

With Sitecore’s new rule-based configuration and server roles you can make one set of patch configuration files to rule them all. 

While we were familiar with top-level roles, we didn’t realize there was an ‘Indexing’ sub-role until our recent client upgrade. The Indexing sub-role is for when you have more than one CD or CM instance. Indexing should only be enabled on one of the instances.  

The available server roles and sub-roles are:  

  • Standalone 
  • ContentManagement
    • Indexing 
  • ContentDelivery
    • Indexing 
  • Processing 
  • Reporting 

More specific documentation can be found on Sitecore’s website.

App Service Connections 

When Sitecore is installed, there are a series of web application services that are created to communicate with each other. Some of these connections use client certificates to make secure connections. Sitecore also makes other requests through direct URL API requests. Here are the applications from a scaled environment and some details about how the domains are structured, which apps they connect to, and how they connect. 

App Service URLs 

  • Content Delivery – https://<azuregroupname>-cd.azurewebsites.net 
  • Content Management – https://<azuregroupname>-cm.azurewebsites.net
  • Cortex Processing – https://<azuregroupname>-cortex-processing.azurewebsites.net 
  • Cortex Reporting – https://<azuregroupname>-cortex-reporting.azurewebsites.net 
  • Marketing Automation Operations – https://<azuregroupname>-ma-ops.azurewebsites.net
  • Marketing Automation Reporting – https://<azuregroupname>-ma-rep.azurewebsites.net
  • Processing – https://<azuregroupname>-prc.azurewebsites.net 
  • Reporting – https://<azuregroupname>-rep.azurewebsites.net 
  • Identity Server – https://<azuregroupname>-si.azurewebsites.net 
  • xConnect Collection – https://<azuregroupname>-xc-collect.azurewebsites.net
  • xConnect RefData – https://<azuregroupname>-xc-refdata.azurewebsites.net
  • xConnect Search – https://<azuregroupname>-xc-search.azurewebsites.net

CLIENT CERTIFICATES 

Client certificates are generated upon installation and provide security for transactions between app services. They generally don’t require modifications but occasionally you’ll either need to disable them or identify where they’re located if they’re causing errors. The client certificates are stored in the AppSettings.config files of the application being sent data and are referenced in the ConnectionString.config files of the application sending data. You can disable their requirement in the AppSettings.config by setting “AllowInvalidClientCertificates” to “false”. Here is a listing of the applications that make requests, and the sub-bullets are the app services they connect to. 

  • Content Delivery
    • Marketing Automation Operations 
    • xConnect Collection 
    • xConnect Refdata 
  • Content Management
    • Cortex Reporting 
    • Marketing Automation Operations 
    • Marketing Automation Reporting 
    • xConnect Collection 
    • xConnect Refdata 
    • xConnect Search 
  • Cortex Processing – Processing Engine
    • Cortex Processing (yes it contacts itself) 
    • xConnect Collection 
    • xConnect Search 
  • Marketing Automation Operations
    • xConnect Collection 
    • xConnect Search 
  • Marketing Automation Operations – Automation Engine
    • xConnect Collection 
    • xConnect Search 
  • Processing
    • xConnect Collection 
  • xConnect Search
    • xConnect Collection 

API Connections 

Along with certificate secured connections, Sitecore makes other requests to the applications within a deployment instance through direct API requests. Here’s a list of the applications and the sub-bullets are the app services they make requests to. 

  • Content Delivery
    • Content Management 
    • Search App (Solr, Coveo, or Azure) 
  • Content Management
    • Processing 
    • Reporting 
    • Search App (Solr, Coveo, or Azure) 
  • xConnect Search
    • Search App (Solr, Coveo, or Azure) 

There’s more to Sitecore 9.3 architecture and Azure installation than this, including Solr and Azure SQL. We’ll be publishing our guide to those installations and connections later this summer.

Learn more about our Sitecore expertise or contact us to learn how we can help with your next Sitecore upgrade or project.


Published:

Latest Ideas

Take advantage of our expertise with your next project.