Setting up Infrastructure with CloudOps
Overview
Elastic Path CloudOps for AWS (Amazon Web Service) creates and deploys Elastic Path Commerce environments on Amazon Web Services using Docker images and Amazon AWS CloudFormation templates. Elastic Path CloudOps for AWS uses AWS services to optimize stability, reliability, performance, and operations to minimize Elastic Path Commerce implementation and operating costs.
Elastic Path CloudOps for AWS is modularized into three components to make the configuration and deployment flexible. The components are:
- CloudCore: Creates and configures the network infrastructure, build server, configuration management server, and storage
- CloudTeam: Creates deployment packages from the Elastic Path Commerce source code repository
- CloudDeploy: Creates Amazon RDS (Relational Database Service) snapshots and Docker images from the deployment package, and deploys them into an environment
The CloudTeam component builds a deployment package from Elastic Path Commerce source code through the Jenkins server created by CloudCore by adding new jobs in the Jenkins folder Development.
The CloudTeam includes the following services:
- New Jenkins jobs for building deployment packages
- A Nexus server for mirroring the public Elastic Path Maven server
- An ECR (Elastic Container Registry) repository to hold Docker images to build deployment packages
To set up the team infrastructure with CloudOps, you must:
- Prepare Elastic Path Commerce Source Code
- Set up Elastic Path CloudOps for AWS
- Complete Elastic Path Commerce setup
For more information, see Elastic Path CloudOps for AWS documentation.
CloudOps for Kubernetes
Elastic Path CloudOps for Kubernetes is Elastic Path’s automated approach to run Elastic Path Commerce inside of a Kubernetes cluster in a cloud agnostic fashion. CloudOps for Kubernetes uses industry standard tooling, such as Terraform and Helm, to create highly scalable environments, built from Elastic Path Commerce code.
By utilizing CloudOps for Kubernetes, users are able to have the Elastic Path Commerce solution running in either Amazon Web Services (AWS) or Azure in a short period of time. With Kubernetes’ tooling, developers can quickly customize and deploy stacks. Given the broad adoption and standardization on Kubernetes, Ops teams have a solution to which they trust and that adapts to their needs.
For more information, see Elastic Path CloudOps for Kubernetes documentation.
Prepare Elastic Path Commerce Source Code
Prerequisities
Ensure that you have the following:
- Access to Elastic Path Commerce Source and Maven Repository
- A development branch created in your Git Repository
For more details, see the Getting Access to Elastic Path Commerce Source Code section.
Setup Elastic Path CloudOps for AWS
Set up CloudOps by following the instructions at Elastic Path CloudOps for AWS documentation.
Setup Elastic Path Cloudops for Kubernetes
Set up CloudOps by following the instructions at Elastic Path CloudOps for Kubernetes documentation.
Complete Elastic Path Commerce setup
This section provides instructions to complete setting up Elastic Path Commerce after setting up CloudOps for AWS.
To complete the setup, configure the extensions/maven/settings.xml
file to connect to the Maven repository of project that is set up by CloudOps.
- Checkout the development branch that you had created for your team/organization.
For more details, see the Getting Access to Elastic Path Commerce Source Code section.
- Replace the
PROJECT_REPOSITORY_GROUP_URL
placeholder with the CloudOps DNS name of the project’s Nexus server. To construct the value, prependnexus.ep-build
in front of your project’s DNS name. For example, if DNS of the project isexample.com
, the CloudOps DNS name of the project’s Nexus server isnexus.ep-build.example.com
. For more information, see DNS Configuration (Amazon Route53). - In the
settings.xml
file, make any other changes that are required by your project. - Commit and push the changes.
Setup Local Developer Environment
Follow the instructions at Setting up your Developer Environment to configure, build, and run Elastic Path Commerce in a command line environment.