Skip to main content

Microsoft

Sitecore in Windows Azure

What is Sitecore Azure?

In simple words, it is your Sitecore implementation running in Windows Azure, a popular cloud computing platform from Microsoft. Sitecore Azure provides development and deployment tools to support Sitecore CMS and DMS(Digital Marketing System)  in Windows Azure.
Windows Azure: As you may already know, Windows Azure services are available both as IaaS (Infrastructure as a service) and PaaS(Platform as a service). To be precise it offers four execution models for your application:

  1. Virtual machines(IaaS)
  2. Cloud Services(PaaS)
  3. Web sites
  4. Mobile services

Please see Window Azure page to know more of various execution models and other information.

Sitecore – PaaS and IaaS

Sitecore Azure – PaaS: Your Sitecore environment in Azure is maintained and patched automatically, instead of you working with virtual machines directly and managing them. Your implementation can be scaled out by adding large building blocks such as instances, web roles and farms.
Sitecore in Windows Azure – IaaS: You can get a virtual machine, created out of a standard disk image or your own disk image and you are responsible for patching, installing updates and maintaining it. It offers you more control, with added maintenance liability though.

Subscription Options

Sitecore Azure subscription – It is a PaaS offering where your Sitecore installations were managed by automated Sitecore features.  You can also use your existing Windows Azure subscription for Sitecore Azure installation.
Windows Azure subscription: You could choose to subscribe to Windows Azure directly and manage Sitecore on your own. You can still use deployment tools that Sitecore Azure uses.

Content Editing Farm Content Delivery Farm
  • Content Authors use this farm to author or modify content
  • Has Sitecore Master and Core databases
  • Only one farm can be designated as Editing farm in the cloud
  • Has Sitecore Web and Core databases
  • There could be several Delivery farms
  • Content is served from this farm.

Deployment Topologies

Following three topologies are currently possible with Sitecore Azure module 3.0:
On-premise content editing; delivery from cloud
In this topology, “Content Editing” farm (or “Editing” farm) is placed on premise, usually behind corporate firewall and one or more “Content Delivery” farm(s) (or “Delivery” farm(s)) are hosted in Windows Azure.
OnPremiseCE
Content authors have access to Editing farm and content is authored and edited in this farm. When content is ready to be pushed, it is published to one or several Delivery farms. Deployment is taken care by Sitecore Azure. You will see in a moment how it is accomplished.
Live mode: Content editing and delivery from same farm in the cloud
A single farm is used as editing and delivery farm. It is called live mode as changes made by content authors are immediately available for delivery.
Livemode
Editing and delivery from different farms in the cloud
Editing farm in cloud is different than the Delivery farm. Content is published from this farm to one or more Delivery farms in the cloud.
CE/CD in cloud

DMS and Sitecore Azure

Module 3.0 supports DMS inside Azure now. Earlier versions didn’t support DMS as it requires subsequent user requests to be directed to the same server which first served the request and this means a sticky session. Unfortunately Windows Azure doesn’t support sticky sessions to utilize resources better by allocating them uniformly to ensure optimal performance. One can obtain a hotfix from Sitecore to support DMS with module 2.0.
You may have to consolidate analytics from various farms if your Sitecore Azure implementation has more than one delivery farms. Alternatively, you can configure all your delivery farms to gather analytics at single location. For instance, there are three delivery farms, one in Europe, another in east coast of USA and third in west coast of USA. You could configure all three farms to store analytics information at one location, for instance, in east coast USA farm.

DMS, Caching and Scalability

Windows Azure  allows applications including Sitecore applications to persist state data into SQL Azure, Tables and/or BLOBs. However sometimes quicker lookup is necessary and that is where caching helps. Windows Azure support:

  1. Co-located role caching – A cache shared by multiple instances making up a web role.
  2. Dedicated role caching – Dedicated worker role instances are used exclusively for caching

More instances should be added to a web role to scale computing resources while more web roles needs to be added to scale cache if co-located role caching is used. It is advised to add a content delivery farm to database throughput needs to be scaled.

Development and Test Environments

Windows Azure charges you based on the data usage so it is not cost effective to have your test environment hosted inside Windows Azure. Instead you can use local emulator for Windows Azure to test your deployment. Not only it is free but also faster as deploying to Azure could take 15-20 minutes easily.
You also need to have an on premise environment to support Sitecore development typically with Visual Studio and other development tools installed.

Limitations and Considerations

  1. Sitecore Azure permits only one Content Editing farm in the cloud.
  2. Sitecore Azure can support up to 99 Content Delivery farms per location.
  3. You can create up to 149 SQL databases in each database server inside SQL Azure.
  4. Each database in SQL Azure can grow up to maximum 150 GB.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Parshva Vora

Parshva Vora is a Technical Architect at Perficient since 2009 and has extensive experience building enterprise solutions, portals and software products using Microsoft technologies.

More from this Author

Categories
Follow Us