Skip to main content
Version: 8.0.x

Self-Managed Commerce Deployment Solutions

System Requirements​

Elastic Path provides support if Self-Managed Commerce is deployed on supported platforms, such as certified and compatible platforms. For more information, see System Requirements.

Required Infrastructure​

Self-Managed Commerce is provided as source code. For many customers, a Self-Managed Commerce implementation project is essentially a software development project. Such customers implement Self-Managed Commerce custom code and have an implementation project team consisting of software developers, software testers and release engineers.

Local Development Environments​

Self-Managed Commerce developers on the implementation team use a local development environment for developing and testing Self-Managed Commerce code and tools. For more information, see the Developer Environment section of the Getting Started Guide.

Development Infrastructure​

The implementation team requires some or all of the following items during development:

  • Build and continuous-integration (CI) tools and jobs for performing Self-Managed Commerce code builds.
  • Self-Managed Commerce development and quality-assurance (QA) environments for functional validation and regression testing.
  • A Self-Managed Commerce staging environment where business users can validate that both custom and out-of-the-box features function as desired. The staging environment may consist of an authoring and live pair.
  • A Self-Managed Commerce performance environment where scalability, load and endurance testing and tuning can occur.
  • Deployment tools and jobs to regularly push updated Self-Managed Commerce code to development and QA environments.
  • Promotion pipelines to promote Self-Managed Commerce code changes from lower environments to higher environments.

Production Infrastructure​

The implementation team prepares and deploys highly scalable and highly available infrastructure suitable for production workloads. A Self-Managed Commerce production environment may consist of both an authoring environment and a live environment. The authoring environment is typically a smaller environment where data is prepared and validated before making it available to customers. The live environment is typically a highly-scalable and highly-available environment that serves production shopper traffic.

Available Infrastructure Solutions​

The first step of a Self-Managed Commerce project is evaluating and selecting the infrastructure options. Self-Managed Commerce supports and allows a variety of infrastructure solutions for standing up shared servers used for development, testing, staging and production. Each available solution requires investing time to design, implement and operate for the lifetime of your Self-Managed Commerce application.

While Elastic Path provides an asset called CloudOps for Kubernetes, some customers may choose to develop a custom infrastructure solution. Such customers find that investing in a custom solution better aligns with their corporate goals or better integrates with their existing DevOps practices and infrastructure. Some customers find that a custom-built solution that is tailored to their use cases will be easier to use and maintain over time when compared to a generic solution like Elastic Path CloudOps for Kubernetes.

Elastic Path CloudOps for Kubernetes​

Elastic Path CloudOps for Kubernetes is an Infrastructure-As-Code (IaC) asset that Self-Managed Commerce customers can use as the basis for their infrastructure development. This asset is a prescriptive tool but whose source code is made available for customers to modify or extend.

Many Self-Managed Commerce customers find that Elastic Path CloudOps for Kubernetes sufficiently aligns with their goals and requirements, and they choose to use it as a starting point for their infrastructure development. Other customers find that it does not sufficiently align with their goals or technology strategies and they choose to develop a custom solution.

For more information, see the Elastic Path CloudOps for Kubernetes documentation.

Custom Containerized​

Self-Managed Commerce customers may create a custom containerized solution using the Elastic Path Docker Git repository. This repository includes tools for building and running Self-Managed Commerce Docker container images and is provided as a component of Elastic Path CloudOps for Kubernetes. Examining the architectural choices and various artifacts in the Elastic Path CloudOps for Kubernetes code asset may be useful as well. This approach requires high levels of custom implementation.

Manual Install​

Self-Managed Commerce supports manual installation and deployment on bare-metal or virtual servers. For more information, see the manual installation documentation. This approach requires high levels of custom implementation.

note

For custom solutions, it is the responsibility of the team developing the solution to implement and verify proper deployment functionality.

important

Custom deployment solutions may impact Elastic Path’s ability to support Self-Managed Commerce.

Quick Comparison​

The matrix below provides a quick comparison of the described deployment solutions.

CharacteristicCloudOps for KubernetesCustom ContainerizedManual Install
Deployment ModelAWS Public Cloud (self-managed)Private or Public Cloud (self-managed)Private or Public Cloud (self-managed)
Technology Choicesprescriptiveflexibleflexible
Technical Architectureprescriptiveflexibleflexible
Self-Managed Commerce Build✓*custom
Docker image build✓*n/a
Docker image repository✓customn/a
Infrastructure as Code✓customcustom
Container orchestratorAmazon EKScustomn/a
Multiple AZ✓customcustom
Self-Managed Commerce Deploy✓*custom
Production MySQLAmazon Aurora MySQLcustomcustom
Containerized MySQL (non-production)✓*n/a
Service auto-scaling✓customn/a
HA Cortex✓customcustom
HA Active MQ✓customcustom
Application Performance Monitoring (APM)customcustomcustom
External Logging System Integrationcustomcustomcustom
Alerting & Monitoringcustomcustomcustom

Legend​

The below table explains terminology used in the comparison matrix.

EntryMeaning
✓Indicates that for the specified deployment model, that capability is available out of the box.
*Indicates that artifacts from Elastic Path CloudOps could be harvested and used in a custom solution.
customIndicates that for the specified deployment model, that capability is not available out of the box and must be custom implemented.
n/aIndicates that the concept does not apply to the specific deployment solution.
EKSElastic Kubernetes Service
AZAvailability Zone
AuroraAmazon Aurora is a database service provided by Amazon Web Services.
HAHigh Availability