Deploying Kubernetes applications to EKS through CI/CD

0

User need to have an option to select one container image from list of latest 5 images from ECR and then deploy it to EKS.

What would be the best option to do this?

  • Are you using a CodePipeline with CodeBuild and Code Deploy to orchestrate this CI/CD pipeline? Are those users able to access the AWS Console or should they trigger the "deploy" action from outside of the AWS console?

  • @Jonathan_D The pipelines are not going to be aws native services, any suggestions on what other could be the better tools to use?

1 Answer
0

In a CI/CD pipeline, the user can use the AWS CLI or SDK to list the latest 5 container images from an ECR repository. They can then prompt the user to select one of the images, and use that image to deploy to an EKS cluster. This can be done by updating the container image in the Kubernetes deployment resource configuration and then using kubectl to apply the changes to the cluster. Ofcourse, this should be automated in your pipeline.

You can use GitLab CI/CD pipeline for EKS Cluster deployments using Terraform or CDK. Before you trigger the pipeline, user can choose which AMI to use for the worker nodes via a runtime variable.

Some useful links: Using Amazon ECR Images with Amazon EKS: https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_on_EKS.html

If you are familiar with CDK: https://github.com/aws-quickstart/cdk-eks-blueprints

If you are familiar with Terraform: https://github.com/hashicorp/terraform-provider-aws/tree/main/examples/eks-getting-started

AWS Workshop: https://catalog.workshops.aws/eks-blueprints-terraform/en-US

EXPERT
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions