ARCHIVED This content is retired and no longer maintained. See the version selector for other versions of this topic.
Deploying Commerce to Amazon
Recommended reading
This topic describes how to set up an Episerver Commerce site to run on Amazon Web Services (AWS). In this scenario, a Commerce core website is installed, and most steps can be applied through NuGet packages.
Note: This document does not describe how to create/update a working Episerver Commerce website, which is required for the Amazon deployment. See Installing Episerver updates to do this.
A specific cloud-enabled license. See the Episerver License Center to add this license to the Commerce website.
All deployed applications and modules are designed for the cloud.
For the website to work properly with Amazon, create databases with collation SQL_Latin1_General_CP1_CI_AS. When you create a new Commerce site, first create the databases with the correct collation. Then, when you create the site using Deployment Center, use the Install site without database option and make sure to point to these databases instead of creating new ones.
Cloud website setup
Like an Episerver CMS website on Amazon, you can run the Commerce website in an AWS Elastic Beanstalk environment with caching and multiple instances. The website instances share the same Amazon SQL instance, and the S3 storage in Amazon stores the file binary data. Load balancing is applied, and the Amazon SNS manages events between the Commerce websites.
Using Auto Scaling, you can scale automatically through configuration.
Follow these steps to create an Episerver Commerce website running in an Amazon environment.
Open the AWS management console and select Services > EC2.
Select Network & Security > Security Groups in the left menu.
Click Create Security Group, provide a name and a description, and click Create.
In the list, select the created group and select the Inbound tab in the lower panel.
Select MS SQL from the rule dropdown, click Add Rule, then Apply Rule Changes.
Upgrade and prepare the website.
See Installing Episerver to install a Commerce website. When you have a project with a working website, continue with the following steps.
Open the Episerver Commerce front-end site project using Visual Studio.
Upgrade the Commerce site to the latest version (minimum version 8.0).
Install the EPiServer.Packaging.UI Nuget package.
Run Move-EPiServerProtectedModules in the Package Manager Console.
Install the EPiServer.Amazon NuGet package to the project.
Note: If you are installing Commerce Manager besides the Episerver Commerce Core, continue with the following steps; otherwise, skip to C. Configure updates.
Install the EPiServer.Commerce.UI.ManagerIntegration NuGet package to the front-end site.
Open the Mediachase.ConsoleManagerUpdate project, and upgrade it to the latest version (or 8.0 at least; see Installing Episerver updates).
Install the EPiServer.Amazon NuGet package to the Mediachase.ConsoleManagerUpdate project.
Configure updates.
Map BLOB and Event providers.
Open EPiServerFramework.config and note the configuration under the episerver.framework section to map Blob/Event providers to Amazon.
Note: When hosting in Amazon, use a scalable search solution such as Episerver Find. Because this is also a hosted service that you connect to, it works the same way as when your site runs on-premises. See the Configuring Episerver Find search provider to install and configure Episerver Find for Commerce.
The Commerce website is ready for deployment to Amazon.
Deploy the Commerce website.
Migrate the database to Amazon RDS SQL instance.
Note: In EPiServer Commerce, you need to migrate two databases, and you need to change the connectionStrings.config in the front-end and back-end sites. See Migrating Commerce databases to Amazon.
Open connectionStrings.config, change the connection string for EPiServerDB, EcfSqlConnection to the connection string from Amazone RDS SQL Database. Keep the setting MultipleActiveResultSets=true.
Rebuild the catalog index. Go to Commerce Manager >Administration > System Settings > Search Index. Click Rebuild Index. The catalog index is restored on your Episerver Find indexes.