Sitecore with Azure SQL PaaS Part 1
1 ? Overview
Sitecore s Customer Engagement Platform (Sitecore) is an enterprise class web content management system that provides an elegant, integrated solution for content management for websites, engagement automation and analytics. Microsoft Azure is cloud computing platform and Infrastructure for building, deploying and managing applications and services through a global network of managed data centers.
This blog discusses design considerations and techniques for deploying Sitecore on Microsoft Azure with Azure SQL (PaaS). Following areas are covered:
- General Sitecore architecture
- Microsoft Azure Sitecore architecture
- Additional Microsoft Azure considerations
- Estimating Microsoft Azure cost
Following areas have been left out from this blog:
- Build and change management
- Disaster Recovery
- Active Directory integration
- VPN connectivity and configuration with internal network
- Multi-Region Replication
2 ? General Sitecore Architecture
2.1 Basic Sitecore Setup using Azure SQL (PaaS)
A basic highly available Sitecore setup has multiple servers, at least two sitecore servers, at least one MongoDB server and at least two database servers. As we will be using Azure SQL we will only need two Sitecore servers and a single server for MongoDB.
-
Web servers (application servers)
-
Windows Server running IIS
-
IIS runs Sitecore content delivery (CD) server the actual website
-
One server also runs Sitecore content management (CM) server the content authoring environment
-
MongoDB servers (xDB servers)
-
Linux Server running MongoDB
-
Azure SQL Database running following databases
-
Master The Master database is the authoring database it contains all versions of any content or assets
-
Core The Core database contains Sitecore application items and settings, as well as the tables containing the .Net membership provider (i.e. users/roles contained in the Sitecore repository)
-
Web - The Web database is only the latest published version of the content that is driving the live web site. Therefore, it is a subset of the master database, optimized for size and speed. When content is published, or goes through the publishing task of a workflow, the latest content version is copied from the master to the web database.
-
Analytics The Analytics database holds all information related to Sitecore Digital Marketing Suite analytics, personalization, etc.
The minimum recommended hardware requirements for the server is:
- 4 core processor
- 4 GB of RAM
Azure SQL Databases can be priced individually or as a shared pool. A shared pool is the most cost effective method when you have multiple databases that have widely varying and unpredictable usage patterns. For Sitecore, we have chosen to go with a shared pool with 100 eDTUs.
- The Microsoft Azure setup assumes the web servers and Azure SQL Database Pool are setup in a single region and availability zone.
- The overall environment is setup as a virtual network.
- Not covered in this post, but any connectivity to client network can be done using VPN
- An Azure Load Balancer is used for handling any public traffic (generally to the CD servers over port 80 and 443)
- All Azure Virtual Machines instances will be backed-up to Azure Storage using Powershell scripts or 3rd-party tools
- Not covered in this post, but security and access can be configured using Access Control Lists (ACLs) and routing rules and tables
- This post assumes DNS is managed outside of Azure.
3 ? Pricing Azure Configuration
3.1 Elements Considered for Pricing
3.1.1 Azure Virtual Machines
- CD server (2 instances)
- MongoDB server (1 instance)
3.1.2 Azure Storage
- Storage 400 GB
3.1.3 Azure SQL (PaaS)
- 1 Elastic Database Pool
- 100 eDTU, 100 GB
3.1.4 Virtual Network
- 1 Virtual Network
- Data transfer out 100 GB/month
3.2 Price Breakdown
$ 901.72/month
Service
Quantity
Description
Price
Scenario Cost
VM D2 (2 cores, 7 GB RAM) Non-Windows
1 units
MongoDB
$ 114.58
$ 901.72
Page Blobs and Disks Locally Redundant
400 GB
Storage (LRS)
$ 20.00
Bandwidth
100 GB
Traffic
$ 8.26
Reserved IP Address Hours
1 IPs
IP Addresses
$ 0.00
VM A3 Large (4 cores, 7GB RAM)
2 units
SitecoreCD
$ 535.68
Elastic Database Standard
1 Elastic Pool
AzureSQL
$ 223.20
3.3 Elements not considered in pricing
- No anti-virus
- No IDS
- No offsite storage
- No DR site
- No multi-region setup