Why would I deploy to Fargate over EKS? I assume it's because with Fargate I don't have to write a k8s deployment spec?
Why would I deploy to Fargate over ECS?
Legitimately curious, and looking for clarification/correction.
Why would I deploy to Fargate over EKS? I assume it's because with Fargate I don't have to write a k8s deployment spec?
Why would I deploy to Fargate over ECS?
Legitimately curious, and looking for clarification/correction.
ECS and EKS are just two different schedulers for orchestrating the containerized services that you want to run. Fargate is the engine behind them that executes the containers for you without you needing to worry about servers.
ECS as a scheduler will always integrate much better with other AWS services. EKS will give you the advantage of being able to run the same scheduler on an on premise or on another cloud.
Fargate is a placement target for containers, just like EC2 instances in a cluster would be.
You use ECS and EKS to define and schedule tasks/containers on a placement target.
The primary difference between Fargate and EC2 is that with Fargate you don't need to manage physical instances and the software stack running on them (Docker daemon, etc). When you start a task, it runs...somewhere. In the AWS "cloud".
With Fargate, you get access to AWS-managed multi-tenant nodes. So, Fargate connects to either your ECS or EKS cluster and avoids the need for you to worry about managing the nodes as well.