Understanding Coveo for Sitecore Infrastructure With the Legacy Sitecore Azure Module

This article describes the recommended infrastructure to integrate Coveo for Sitecore with the Sitecore Azure module. The diagram below represents a simplified view of the components involved in an Azure deployment.

The infrastructure must provide a Sitecore instance acting as the Deployment Manager (DM). This instance can either be installed on-premises or on a virtual machine. The DM is responsible for creating and maintaining the editing and delivery farms in Windows Azure.

Creating a farm in Azure generates a cloud service inside of which is a web role to host the Sitecore instance. A cloud service containing web roles is often referred to as a PaaS (Platform as a Service) cloud service. The part of Coveo for Sitecore that’s embedded in Sitecore runs in the same PaaS cloud service as the Sitecore instance.

However, Coveo for Sitecore depends on many other components that must be installed on regular IaaS (Infrastructure as a Service) virtual machines. An IaaS cloud service is much like a subnet containing virtual machines. For small environments such as development or staging environments, this IaaS cloud service could only have one virtual machine with all standalone components installed on it. On the other hand, bigger staging and production environments will use several virtual machines to support fail-over and load balancing. In all cases, the same principle applies. The other cloud services only need to know how to connect to the standalone components such as Coveo Enterprise Search, Coveo Admin Service, Coveo Search API, and RabbitMQ.

Installing and configuring the standalone components in the IaaS cloud service is very similar to installing an on-premises environment. For more instructions on how to do that, see Installing Coveo Enterprise Search.

Communicate with Coveo Services

Since Coveo for Sitecore is embedded into the Deployment Manager and eventually in Content Delivery instances, it needs to be able to communicate with the standalone components installed in the IaaS cloud service. Here are the endpoints that need to be configured to provide what Coveo for Sitecore needs.

  • 52810: CES Search Service

  • 443: Admin Service and Sitecore instance using HTTPS (secured mode).

    You should always run the Coveo Admin Service in secure mode when deployed in a Windows Azure setup (see Securing the Admin Service - On-Premises).

  • 5986: PowerShell extensions

  • 5682: RabbitMQ

  • 3389: Remote Desktop

  • 8080: Coveo Search API, used by Coveo for Sitecore to perform search queries through the REST endpoint embedded in Sitecore.

  • Optionally:

    • 80: Admin Service and Sitecore instance when running in a non-secured mode.

    • 52800: CES

For more information on how to configure endpoints, see Set up endpoints on a virtual machine in Azure.

Coveo for Sitecore Cloud Editions are already configured to communicate with your Coveo organization which will process API calls it receives.

What’s Next?

Continue to the next step and proceed to the installation of the different components (see Configuring Coveo for Sitecore With the Legacy Sitecore Azure Module).

What's Next for Me?