CloudOps for Kubernetes provides a framework for building and deploying Elastic Path services and environments. It automates these tasks to a high degree. It is important to understand that CloudOps for Kubernetes does does not provide a turn-key production environment. A number of additional factors and steps must be considered before going live with an Elastic Path production environment.
This section described the high-level workflow of a CloudOps for Kubernetes project.
Before you begin this workflow, questions to consider include:
- What authoring and live relationships will exist between Elastic Path Commerce environments?
- Will some environments be separated from others for security considerations?
- Will some environments be separated from others for performance considerations?
- How will you size the Elastic Path Commerce environments?
- Does your organization intend to use Account Management functionality with Elastic Path Commerce?
We recommend reviewing the Multi-Cluster Architecture documentation. You might refer to the sample environment configuration, which is provided as a reference. It describes some options to consider when planning Elastic Path environments and is available in the Sample Configuration documentation.
For more information about the process of sizing Elastic Path Commerce environments, see the Elastic Path Commerce Sizing Guide.
Account Management functionality is now included in Elastic Path Commerce v8.1.x and later. If you are using Elastic Path Commerce v8.1.x or later, you do not need to deploy the Elastic Path Account Management services separately. If you are using Elastic Path Commerce v8.0.x or earlier and your organization intends to use Account Management functionality, you need to deploy the Elastic Path Account Management services separately.
For more information about deploying Account Management, see Account Management Overview.
Follow the steps in the Setup Overview section to set up and configure your CloudOps for Kubernetes implementation. That topic guides you through the steps required to complete the following tasks:
- Initializing CloudOps for Kubernetes in your cloud account
- Build Elastic Path Commerce container images from source code using infrastructure and Jenkins jobs deployed by CloudOps for Kubernetes
- Deploy Elastic Path environments using tools and Jenkins jobs provided by CloudOps for Kubernetes
After you complete the setup, you will have deployed the Elastic Path build infrastructure and one or more Elastic Path environments, all within your CloudOps for Kubernetes cloud account. Important post-setup tasks will remain.
Post Setup Tasks
After you have successfully created Elastic Path environments using CloudOps for Kubernetes, you also must implement some other functionality. The following list of tasks is included in a typical implementation, which is not implemented as a part of CloudOps for Kubernetes. You must complete these tasks before your Elastic Path environment is ready for testing and development cycles:
- Tagging and update strategy for Docker images to fill out the continuous integration pipeline
- Optionally, update or implement custom Jenkins pipeline jobs to support any custom pipeline requirements
- Configure an SMTP or email solution so that automated emails can be sent from Elastic Path environments
Azure has a recommended email solution.
- Configure the Data Import Export tool to synchronize data from external systems
- Set up and configure the Data Sync tool to sync data from Author to Live environments
- Configure monitoring and alerts for Production environments
Production Cut Over Considerations
To prepare for a production cut over of CloudOps for Kubernetes, ensure that you review the following list:
- Configure monitoring, alerts and backups for build and deploy systems to ensure you maintain the ability to deploy fixes and updates to your Elastic Path environments
- Identify tools or training required to identify, investigate, troubleshoot and resolve production support issues
- Improve and control security at the Kubernetes cluster level by tightening Kubernetes Ingress rules
- Develop and carry out a performance plan, to validate that performance and scaling requirements are met
- Update and tune scaling policies for your Kubernetes clusters
- Ensure that high availability and disaster recovery plans and solutions are in place for all production systems