This blog post describes EPiServer CMO installation and configuration in a load balanced environment where CMS editing interfaces and components are not available on the front-end web servers; additional editing server is set up and attached to the same database.
This kind of environment is described in this blog post as Option 2.
So let’s consider the following deployment model:
- Web site based on EPiServer CMS is installed on two or more front web servers. The site is available publicly through the load balancing system. CMS management UI is disabled on these public sites.
- Separate editing web server is set up behind the firewall. Web site is deployed on editing server with EPiServer CMS editor and admin UI and uses the same data and file shares as sites deployed on front-end servers. Editing server is available within internal network for editors and administrators.
- There is one back-end server which contains the one shared site database.
EPiServer CMO deployment should follow that schema.
CMO Core, Statistics handler and web services are installed on each front-end web server.
These components and also CMO UI are installed on separate editing server. Load balancing configuration with sticky sessions is not required by CMO UI in this case. Statistics gathering on editing server can be turned off to process only public site visits.
CMO database and Aggregation service are installed on the back-end server, where CMS database is hosted. One CMO database is shared between all front-end servers and editing server.
Thumbnail service must be accessible for CMO UI components. Since CMO UI is installed only on the editing server, there are at least 2 options where to deploy Thumbnail service: on the editing server or on the back-end server, as it was described in the previous blog post.
Keeping in mind that Thumbnail service needs to access web site and all site resources to make a screenshot, we can install Thumbnail service on the editing server, where we obviously need to have access to web site and its resources. In this case there is no need to enable access from back-end server to web site or Internet, which is good for the security. You can decide where to install Thumbnail service depending on your environment and configuration.
URL rewrite provider is used to resolve external page URL. Thumbnail service most likely will create screenshots on the site hosted on the editing server and will use the URL specified in siteUrl attribute of episerver/sites/site section as a base address when standard FURL provider is enabled on the site.
Please see the steps required to install and configure EPiServer CMO below.
Installing EPiServer CMO in load balancing environment with separate editing server
1. Install CMO module on the front-end servers and the editing server using EPiServerCMO.msi installer.
2. Deploy CMO on web site on the first front-end server using Deployment Center. Follow installation instructions.
Select only Statistics Handler in optional components list to install.
Select or enter the name of SQL Server instance on your back-end server on database settings installation step.
Enter the name of new CMO database to create. Enter the name and password of database user.
You can leave the default Thumbnail service URL (http://localhost:8731/IECaptWCF/Url2Image).
3. Deploy CMO on web site on all other front-end servers.
Do the same as you did on step 2, but don’t create new database this time. Select existing CMO database and enter the same user name and password that was created on the previous step.
4. Deploy CMO on web site on the editing server using Deployment Center.
Select Campaign Monitor and Optimization UI, Statistics Handler and Thumbnail Service in optional components list to install:
You can uncheck Statistics Handler option and don’t install it if visitors of web site on the editing server should not affect CMO statistics. However there is also another way of disabling statistics gathering which is described in the next installation step.
Choose SQL Server instance on your back-end server on database settings installation step.
Don’t create new database, select existing CMO database that was created on the previous steps. Enter the name and password of database user specified on the step 2.
5. Consider disabling of statistics gathering on the editing server if visitors of web site on the internal editing server should not affect CMO statistics.
Add the following setting to /configuration/appSettings node in web.config file to disable CMO statistics gathering on the site:
<add key="DisableCmoStatisticGathering" value="true" />
6. Update configuration of sites where CMO was installed to support .NET 4 if it is required. Do it on all front-end and editing servers.
9. Install and configure Aggregation service on the back-end server. Please look at the installation instructions.
Point the Aggregation service to the CMO database that is used on the web sites.
10. Consider after-installation steps and notes.
Verify that secretkey values in appSettings section are equal in Thumbnail service configuration file and in web.config files on the site where CMO UI is installed.
Verify Thumbnail service URL in CMO / Settings / Page Thumbnails section, make sure that Thumbnail service is available for CMO UI components on the editing server and that service can access web site and site resources to generate screenshots.
Verify that Statistics handler URL in CMO / Settings / General section is valid and handler is accessible for public site visitors.
Separate EPiServer CMO license is required on each site where CMO is installed.
Other deployment scenarios
Described deployment model can be changed depending on your environment and configuration. For example, you can consider installing Aggregation service on the editing server, if you don’t expect heavy loading on that machine. You can try to find better host for Thumbnail service in your network.
Initial environment can be more complex. Load balancing can be applied to internal database servers or editing servers. These options will affect CMO deployment.
Please see the following blog posts and documents for more information:
Please feel free to let us know about your case and how how things work in your environment. Your feedback is highly appreciated.