Modernise workloads using AWS ECS or AWS EKS
Modernization with AWS EKS and AWS ECS
Saketh Gaddam
Amazon Employee
Published Apr 1, 2025
Modernizing applications with containers and serverless improves agility, so you can innovate faster, while saving on infrastructure costs by improving utilization. Containers are not only a tool to modernize your applications, but they’re also the instigators of improvements to your development practices. Containers disrupt the traditional development cycle by driving developers to assume ownership of quality control for the apps and code developed. Where developers used to only be focused on building the application, with containers, now the success of packaging and deploying shifts to them.
→ Orchestration:
Scale and manage Docker or Kubernetes containers
Scale and manage Docker or Kubernetes containers
- Adopt Amazon Elastic Kubernetes Service (EKS) to orchestrate Kubernetes containers.
- Adopt Amazon Elastic Containers Service (ECS) to orchestrate docker containers.
- Leverage Amazon Elastic Container Registry to store and manage Docker Images.
Refer this blog for EKS v/s ECS :- https://aws.amazon.com/blogs/containers/amazon-ecs-vs-amazon-eks-making-sense-of-aws-container-services/
→ Compute Engines:
Seamlessly provision the underlying infrastructure and resources. To run containers, the underlying infrastructure has to be provisioned. AWS offers two different solutions based on the extent of management or automation desired.
Seamlessly provision the underlying infrastructure and resources. To run containers, the underlying infrastructure has to be provisioned. AWS offers two different solutions based on the extent of management or automation desired.
- Use AWS Fargate to automate the provisioning of the underlying infrastructure.
- Use Amazon EC2 instances to define compute, storage, and network capabilities of the infrastructure.
AWS Container Landscape
→ Security:
Secure, scan, and detect vulnerabilities in containers
Secure, scan, and detect vulnerabilities in containers
- Amazon IAM and tagging, security groups for EC2 instances, and Virtual Private Cloud (VPC) enable securing the containers.
- Image scanning solutions detect vulnerabilities of Docker container images.
- EKS Security Best Practices :- https://docs.aws.amazon.com/eks/latest/userguide/security-best-practices.html
- ECS Security Best Practices :- https://docs.aws.amazon.com/config/latest/developerguide/security-best-practices-for-ECS.html
→ Automation:
Deploy code automatically with CI/CD
Deploy code automatically with CI/CD
- Create a source code repository.
- Configure a CI/CD pipeline using AWS CodePipeline.
- Deploy AWS CodeBuild to build your container image.
→ Observation and monitoring
Ensure services running on containers are healthy and communicate with each other as expected
Ensure services running on containers are healthy and communicate with each other as expected
- Deploy App Mesh to provide visibility into logging, metrics, and tracing and to enable load balancing and traffic shaping.
- Run Health check of Docker container images to confirm your containers are running and your app is working.
Any opinions in this post are those of the individual author and may not reflect the opinions of AWS.