Kooboo CMS on Azure

From Kooboo document
Jump to: navigation, search

There are many advantages in Azure platform, of which can be fully made used by users if they deploy Kooboo CMS on Windows Azure. Users can deploy Kooboo CMS either as a standalone instance or a load balance server cluster (i.e. shared-instance) on Windows Azure.

Standalone instance

Standalone instance means the data does't be required to share between different servers. Deploying the Kooboo CMS as default configurations, all the following elements in the file system.

  • The pages.
  • The html blocks.
  • The media files.
  • The attachments for text content.

It means you do not need to change anything except text content provider. You can use all of the text content database providers on Windows Azure. It is highly recommend to use SQLAzure on Windows Azure for higher performance. See Change database provider to learn more.

See #Install Kooboo CMS on Windows Azure to learn how to install the Kooboo CMS on Windows Azure.

Shared instances

The common load balance solution is deploying the program files in the multiple servers but share the database and content files via another common db/file server. On Windows Azure, the storage service can be used to share the media files and pages:

  • The media files and attachments of text content are stored in the Blob storage service.
  • The Pages/Html blocks/Labels are stored in the Table storage service.
  • The text content database using the SQLAzure.

Setup the Blob storage provider for media files

  • Copy the "Kooboo.CMS.Content.Persistence.AzureBlobService.dll", "Microsoft.WindowsAzure.StorageClient.dll" and "AzureBlobSettings.config" into the BIN folder of Kooboo CMS.
  • Edit the service Endpoint and account info in the "AzureBlobSettings.config"
<AzureBlobServiceSettings xmlns="http://schemas.datacontract.org/2004/07/Kooboo.CMS.Content.Persistence.AzureBlobService" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">

Setup the Table storage provider for Pages/Html blocks/Labels

  • Copy the "Kooboo.CMS.Sites.Providers.AzureTable.dll", "Microsoft.WindowsAzure.StorageClient.dll" and "AzureTableSettings.config" into the BIN folder of Kooboo CMS.
  • Edit the service Endpoint and account info in the "AzureTableSettings.config".
<SiteOnAzureTableSettings xmlns="http://schemas.datacontract.org/2004/07/Kooboo.CMS.Sites.Providers.AzureTable" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">

Sync the memory cache between azure instances

To sync the memory cache in different azure instances, you just need to copy the two files (In Caching_Sync.zip) into the BIN folder: "Kooboo.CMS.Caching.AzureSync.dll" and "Microsoft.WindowsAzure.ServiceRuntime.dll".

Install Kooboo CMS on Windows Azure

This link is a introduction to show you how to deploy the web site into Windows Azure. The brief is we need two files to create the azure host services.

Pack the installation package

  1. Install the Windows Azure SDK.
  2. Download the packing tool File:Kooboo CMS Azure pack tool.zip.
  3. Computer speed
  4. Copy the Kooboo CMS web site files into "Kooboo_CMS" folder.
  5. Run the "Pack.bat" file.
  6. Will generate a file called "Kooboo_CMS.cspkg" after the command finished.


  1. Install RemoteDesktop.cer into you system.
  2. Add the certificate:RemoteDesktop.pfx on the Azure host.(password: kooboo)
  3. Create a host service using the "Kooboo_CMS.cspkg" and "ServiceConfiguration.Cloud.cscfg"
  4. The default remote desktop account in "ServiceConfiguration.Cloud.cscfg" is: admin/Kooboocms!@# (NOTE: you can custom the remote desktop account using Azure VS tool,and override the AccountEncryptedPassword setting in ServiceConfiguration.Cloud.cscfg)

See also

Deploying and Updating Windows Azure Applications