Kooboo CMS on Azure
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.
- 1 Standalone instance
- 2 Shared instances
- 3 Install Kooboo CMS on Windows Azure
- 4 See also
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.
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"> <AccountKey>Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==</AccountKey> <AccountName>devstoreaccount1</AccountName> <Endpoint>http://127.0.0.1:10000/devstoreaccount1/</Endpoint> </AzureBlobServiceSettings>
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"> <AccountKey>Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==</AccountKey> <AccountName>devstoreaccount1</AccountName> <Endpoint>http://127.0.0.1:10002/devstoreaccount1/</Endpoint> </SiteOnAzureTableSettings>
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.
- *.cspkg, a file place the application code and files.
- *.cscfg, a file describe the configurations for the host services will be created. See:Windows Azure Service Configuration Schema
Pack the installation package
- Install the Windows Azure SDK.
- Download the packing tool File:Kooboo CMS Azure pack tool.zip.
- Computer speed
- Copy the Kooboo CMS web site files into "Kooboo_CMS" folder.
- Run the "Pack.bat" file.
- Will generate a file called "Kooboo_CMS.cspkg" after the command finished.
- Install RemoteDesktop.cer into you system.
- Add the certificate:RemoteDesktop.pfx on the Azure host.(password: kooboo)
- Create a host service using the "Kooboo_CMS.cspkg" and "ServiceConfiguration.Cloud.cscfg"
- 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)