Deploying Kentico CMS to Windows Azure is an excellent way to expand your site’s availability and scalability by leveraging a world-wide network of system and resources for minimal cost. Microsoft’s cloud platform consists of an integrated architecture of load-balanced web resources, redundant SQL Azure databases, and a globally dispersed Content Delivery Network (CDN). Utilizing these components within your Kentico CMS application allows your site to be hosted on multiple servers, with a redundant SQL backend, for minimal investment and effort. Wen configuring your site within Windows Azure, there are several aspects of the platform you will want to take advantage of to ensure your site is as responsive as possible and always available. Here is a quick list of some of the top things you will want to configure.
1. Configuring the AppFabric for Session
When an application is hosted in a web farm, all session information needs to be configured for global access by all the web servers. Windows Azure provides the AppFabric cache for this functionality and works great with Kentico CMS. The process involves setting up the cache within Windows Azure, then configuring the site to use it for session storage. Be sure to set this up prior to deploying your site to make sure all of your session information is handled properly.
Azure AppFabric Configuration
2. Media Libraries stored in Windows Azure Storage
One of the greatest benefits of an Azure-hosted site is the scalability and flexibility that you can leverage within the application. Hosted your media library within Windows Azure storage allows you persist any file changes as the servers recycle to ensure all of your files are up to date. Additionally, using Windows Azure storage enables you to utilize the Windows Azure CDN for delivery to ensure a quick, responsive user experience. Once you deploy your files to Windows Azure storage, you can use 3rd part programs to browse them quickly and update them when you need.
Storage Account Configuration
This configuration will require your Azure storage container to be “public” meaning anyone has access to any file inside of it. Be sure to check out #3 below for setting permissions correctly to ensure your content is safe!
3. CMS Azure Storage Root Container
When configuring Kentico to use Windows Azure storage, you may want to change the “root” container name. This setting allows you to separate your Windows Azure hosted files (media libraries, etc.) from the normal Kentico files. This helps you manage the files easier, and also allows you to keep better security on the site. As noted in #2, the Windows Azure storage account container has to be marked “public” in order to host media library files and have them display. Configuring the “root” directory within Kentico CMS allows you to only set your media library folder as publically available and keep your Kentico files safe and secure.
Kentico CMS Azure App Settings
4. Azure CDN
A Content Delivery Network (CDN) copies content to multiple data centers behind the scenes for faster delivery. This allows requests for the content to be routed to closest data center to the user, often resulting in much faster display and response. Windows Azure’s built-in CDN support is a great resource to leverage when deploying Kentico CMS. Once you have the site configured for Windows Azure storage, just enable CDN support on the account and set the correct web.config to use this functionality.
Configuring the Azure CDN
5. SMTP Configuration
With all of its great features, perhaps the only thing missing is solid SMTP support. Currently, your only option is relay your email off an existing SMPT server when deploying to Windows Azure. Kentico has a great UI for setting this value and you will definitely want ot do this to ensure your mail is sent properly. Additionally, you can enter an account for exception emails to be informed immediately when one occurs. This is a great way to keep track of the health of the site and identify and resolve errors quickly.
Kentico CMS SMTP Server Configuration
Kentico has a great document detailing the entire Azure deployment process. It steps you through the entire process of migrating a new or existing application to Windows Azure and all the settings along the way. You can check out the full document here:
Kentico CMS Azure Guide
Kentico CMS and the Windows Azure platform are evolving rapidly and new features are constantly being average. Deploying these systems is a never ending process as new functionality is being created. You will want to review the latest releases of both platforms as they are announced to make sure you have your site running optimally.