Many organizations are starting to consider moving their applications to a cloud platform. For those interested in how to work in the Windows Azure cloud using web content management platform Sitecore, here's a look.

The concept of cloud computing has been around for quite some time. Cloud computing can be thought of as buying into, and using, a part of the whole. The “whole” being a powerful environment packed with leading edge technologies, multiple redundancies and failovers to preserve the performance and up-time of the environment, and lower total costs of ownership due to combined efficiencies of scale.

Think about your Gmail, Hotmail or AOL email account -- sound familiar? Even though you may not necessarily be buying into the use of your email account, each account is provisioned as a part of the total environment. That being said, the technologies used today are more sophisticated than early “cloud-like” offerings. Rather than one server being divided up into separate parts, think of an entire data center that operates as one environment, and by which can be configured with dedicated, shared or dynamic resources allocations as needed on demand.

What are Microsoft and SQL Azure?

Microsoft Azure is an edition of the Windows operating system that runs in the cloud. The Azure environment consists of hardware and software that when combined is used to manage the hardware instance. The environment supports web roles and worker roles. It is within the web roles where websites can be hosted, under the Internet Information Service (IIS) of Windows. The Sitecore Azure website would live here.

It’s important to mention that Microsoft applications are available in the Microsoft Azure cloud. If your hosting needs require non-Microsoft based products and/or offerings, you should consider different cloud offerings. mindSHIFT Technologies, Inc. offers a cloud-based solution called cloudSHIFT, which allows a greater variety of products and offerings to run on the cloud.

Microsoft SQL Azure can also be run within the Microsoft Azure cloud. This instance of SQL Server is a scaled back version compared to the traditional non-Azure hosted SQL Server. The SQL Server database Sitecore Azure would reference would be hosted within this SQL Azure environment.

Here is a list of the major limitations of SQL Azure compared to a traditional instance:

  • Only TCP/IP connection can be made to the database.
  • The SQL Server 2008 SQL Server Browser is not supported.
  • Attaching a database is not supported; however, SQL Server 2008 Integration Services and the bulk copy utility are supported.
  • SQL Server agent or jobs cannot be run in Azure, but you can run them on your local SQL Server, and connect to Azure.
  • Distributed transactions are not supported.
  • Database tables without clustered indexes are not supported.
  • SQL Azure supports up to 150 databases in each SQL Azure server.
  • Two SQL Server database editions are available: Web Edition (up to 5GBs in size) and Business Edition (up to 50GBs in size).

What is Sitecore Azure?

Sitecore Azure is design to allow your public facing website(s) to be hosted in the Azure cloud in a geographically distributed manner. Your Sitecore CMS environment, including Sitecore’s “content authoring” databases (Core and Master), would be hosted locally. A connection is made from your local CMS environment to the Azure environment for publishing purposes. The image below from Sitecore illustrates this environment.

Sitecore CMS Azure.jpg


Here a list of the major advantages of using Sitecore Azure:

  • It has unlimited scalability.
  • It significantly reduces the cost of providing geographically distributed load balancing and redundancy between various geographies.
  • It reduces the time needed to scale the environment (add or remove servers to meet performance and/or expected usage requirements).

Getting Started with Sitecore Azure

Here is a list of the high-level steps needed to get up and running with Sitecore Azure:

  1. Procure a Sitecore CMS license (if you have already done so).
  2. Setup your Microsoft Azure account (Windows and SQL Azure).
  3. Obtain a Sitecore Azure environment file from Sitecore.
  4. Install Sitecore Azure.
  5. Grant the proper security rights to your certificate.
  6. Analyze traffic and usage patterns geographically to determine how many geographic locations you need and where they should be located.
  7. Select the Windows Azure hosting locations that fits your organizations needs the best; more than one can be chosen.
  8. Create your Sitecore Azure content delivery environment.
  9. Publish to your Sitecore Azure content delivery environment.
  10. Deploy the necessary file to your Sitecore Azure content delivery environment.
  11. Start the instances in your Sitecore Azure content delivery environment.
  12. Pause to jump up for joy.
  13. Monitor, record and analyze your geographic locations to determine if adjustments need to be made to number or geographic selection of your locations.

Editor's Note: You may also be interested in reading: