Amazon Elastic Container Service (Amazon ECS) is a scalable, high performance container management service that supports Docker containers.
$0
per hour per GB
Google Kubernetes Engine
Score 9.2 out of 10
N/A
Google Kubernetes Engine supplies containerized application management powered by Kubernetes which includes Google Cloud services including load balancing, automatic scaling and upgrade, and other Google Cloud services.
There is no additional charge for Amazon ECS. You pay for AWS resources (e.g., Amazon EC2 instances or Amazon EBS volumes) you create to store and run your application. You only pay for what you use, as you use it; there are no minimum fees and no upfront commitments.
Chose Amazon Elastic Container Service (Amazon ECS)
We like Elastic Containers better because of the simplicity to create an application without losing control over it. It is simple, yet powerful, exposing only the parts that are needed without complicating the access to the nuts and bolts when more complicated adjustments are …
Google Kubernetes Engine has better upgrades and auto-scale management. Google Kubernetes Engine is also the cheapest option for managed Kubernetes, and Google is the principal contributor to the Kubernetes project.
Amazon Elastic Container Service (Amazon ECS) is well suited where you need the ease of managing the clusters by letting AWS do the stuff for you. Obviously, whenever you want to run the docker based workloads, it is always better to go for either AWS ECS or AWS EKS. If you are interested in staying at AWS only and don't want to be cloud-agnostic, then go for AWS ECS instead of AWS EKS. AWS ECS is cheaper than AWS EKS and also more managed by AWS and better integrated with other AWS services. If you want to run those workloads as serverless, then AWS ECS Fargate is the best option to go with. If you already have a Kubernetes based setup that you want to migrate to AWS, then go for AWS EKS instead of AWS ECS.
The Google Kubernetes Engine clusters are very good at being a managed cloud K8s platform - lots of documentation, features, and updates are available. It's also newbie-friendly - for both administrators and developers. Unfortunately, currently, it cannot reach true zero scale - thus, costs (rent for the service) are still involved even if you are barely using it. Thankfully, it's possible to have alternatives in Google Cloud:
Your own K8s cluster on Compute Engine VMs - you manage it completely; it will have access to a lot of Google Cloud services.
Cloud Run cluster - less documented but more flexible
Anthos clusters - you can use this service for a lot of types of K8s clusters - Google Kubernetes Engine, Cloud Run, on-prem, AWS, Azure
One of the biggest advantages is the flexibility to change underlying EC2 instances. As the traffic or demand increases, we can easily change EC2 instances without any issues.
Amazon ECS APIs are extremely robust and one can start and stop containers by firing one post request only. So, it is not mandatory to keep the demo solutions up for every time. Just at the time of demo fire the command - make the container up and running - do the demo - down the container with API. A simple portal can control every container which helps non-technical (sales, marketing) to do the demo without keeping the solutions up for the entire time frame.
Support is relatively good, although the documentation sometimes is lacking, as well as outdated in our experience, especially when we initiated the process of using this service. But once we found how to assemble things, we haven't really required support from anyone at AWS, the service works without problems so we haven't had the need to contact support, which speaks well of how ECS is built.
Very good Kubernetes distribution with a reasonable total price. Integration with storage and load balancer for ingress and services speed up every process deployment.
EKS is a Kubernetes technology and you need to learn Kubernetes and build a cluster before using it. So there's a learning curve here. ECS was easier to implement and simpler to have in our use case. It takes less time to run a workload and make it available.
GKE spins up new nodes a LOT faster than AKS. GKE's auto scaler runs a lot smoother than AKS. GKE has a lot more Kubernetes features baked in natively.
When issues came up, we reached out to some folks at GCP and they seemed to be very prompt and attentive to our needs. They were always willing to help and provide additional details or recommendations or links to resources. This kind of support is very helpful as it allows us to navigate GKE with more confidence.
The autoscaling kept the performance of the services great.
We saved money by running the workloads on AWS ECS in Fargate mode by having different settings for different services to save on the hardware configuration side as well as having scheduled tasks.
Positive: Allowed us to start and produce working software regardless of our experience level.
Positive: Integration with other Google Cloud services that we wanted to use anyway.
Negative: It's kinda clunky, and some scenarios seem Google Kubernetes Engine-specific instead of being more integrated with other Google Cloud services or the web UI.