Container services in AWS
Tags: aws, eks, containers, kubernetes
Published: 2024-05-01 18:43:19

> Containerization has become the go-to way for deploying modern applications. It is so important for us to know how the containers are deployed. In this blog we will see the services that are used to deploy our containers in AWS and in the upcoming blogs we will see the demo part of it. 

One thing I want to mention here is that choosing the right services is based on your project's needs, so please carefully review all the services before using them.

**_1. Amazon EKS (Elastic Kubernetes Service)_**

If you are familiar with the concepts of Kubernetes, someone who knows in and out of Kubernetes will choose this service. Amazon EKS is managed by Kubernetes service you don't manage the control plane, your job is to run the worker node on either EC2 or Fargate. Be careful with cost, Amazon EKS costs are heavier, Before creating any cluster in the EKS view the cost of EKS Service in the [AWS Pricing calculator.](https://calculator.aws)

**_2. Lambda_**

We are also familiar with the concept of serverless, Lambda is one of the serverless services in AWS. There is a new pattern that is evolving like running the container in serverless services like lambda. I am not yet done with it, but I am interested in testing this. There are quite problems we have in lambda like cold start and also lambda will not be efficient when you want to run ML workloads and batch services.

**_3. APP Runner_**

APP Runner is the new serverless service released recently. App runner is useful when you don't want to control anything like network, scaling, or upgrading. You just simply need to give your image URL, App Runner takes care of everything. If you are someone who needs complete control this service is not for you.

**_4. Lightsail_**

When talking about Lightsail I want to mention, that Lightsail is the Simplest UI in the Universe. I recommend everyone to view this service, it will completely blow your mind. You can run anything in the Lightsail service, even you can even run your LAMP Stack there.


**_5. Amazon Elastic Container Service(ECS)_**

Some people will confuse ECS With EKS, both services are different. They will be used in the different use cases. Both are container orchestrators only. ECS is AWS's native container orchestration service with its orchestration engine, while EKS is a managed Kubernetes service providing compatibility with the popular open-source Kubernetes platform. ECS offers more simplicity than EKS. In ECS you don't pay for the Master node. If you don't need a complex Kubernetes setup you may prefer ECS.

          
**_You Need to consider a few services that you don't need to prefer for running Container workloads in AWS._**

**_1. Amazon EC2_**

From my perspective, I am suggesting don't use Amazon EC2 alone for running containers in AWS. You may use Amazon EC2 as a worker node setup in either ECS or EKS. But do not run in standalone.

**_2. Amazon ElasticBeanstalk_**

Since We have AppRunner for managing our container as a PAAS, we don't need ElasticBeanstalk for running our container workloads.


We reached the end of the blog, if you are someone using AWS, share your experience with how you deploy containers in AWS in the comment section. See you in the next blog. 
Happy Learning 😎