Amazon Elastic Container Service for Kubernetes (EKS) allows you to deploy, manage, and scale containerized applications in the cloud using Kubernetes.
Use this blueprint to deploy a sample microservice-based application on EKS. The release template that the blueprint generates connects to an existing EKS cluster or provisions a new cluster and deploys the sample application to it.
If you're new to XebiaLabs blueprints, check out:
- XebiaLabs Release Orchestration and Deployment Automation up and running
- AWS Access Key and Secret Key for an account that can deploy the application
- A Jenkins server up and running for publishing your Docker images
- Fork the https://github.com/xebialabs/e-commerce-microservice repository
- Clone your fork of the repository
For more detailed instructions, see Deploy an app to AWS using a blueprint
To use this blueprint, run xl blueprint in the forked e-commerce-microservice directory of the repository you just cloned and select:
aws/microservice-ecommerce
This blueprint includes the following tools and technologies:
- Target:
- Tools:
- Application or framework:
This blueprint version requires at least the following versions of the specified tools to work properly:
- XL Release: Version 9.0
- XL Deploy: Version 9.0
- XL CLI: Version 9.0
- AWS Access Key (find it in
~/.aws/credentials) - AWS Secret Access Key (find it in
~/.aws/credentials) - An AWS region
- The Amazon EKS cluster endpoint (if deploying to an existing cluster)
- The Kubernetes namespace
- Release templates
- AWS CloudFormation templates
- Infrastructure:
- EKS cluster (master, workers, config map, namespace)
- Amazon S3 bucket for the application
- AWS Lambda artifacts for the application
- Networking infrastructure: Virtual Private Cloud (VPC), subnets, route table
- Security infrastructure: IAM role
- A docker-compose setup for XL Release, XL Deploy and Jenkins
- Before you run the
xl applycommand, define a Jenkins server as a shared configuration in XL Release and put its name in thexlr-pipeline-ci-cd.yamlfile. If you use the provided docker-compose files this will be automatically setup for you. - The YAML that the blueprint generates includes optional steps to remove the application and deprovision the cluster.
- Cloud
- AWS
- Kubernetes