Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between Kubernetes and Amazon ECS

What is the difference between Amazon ECS and Kubernetes implementation architecture?

I need to decide to pick a technology for container management in cloud. What is the deciding factor while picking any of these technology?

I am using Docker for container creation and execution.

like image 628
prashant sindhu Avatar asked Dec 30 '15 09:12

prashant sindhu


2 Answers

I had a huge experience working with containers and different container solutions, including Amazon ECS and Kubernetes, and I have found, that Kubernetes as one of the most useful solutions for managing containers in the different environments.

The main benefit of Kubernetes - that it is a mature solution, originally developed by Google, but it is completely open-source! That means that anyone may look under the hood and (if necessary), modify and update the source code up to his purposes.

Another huge benefit of Kubernetes - it is completely free. That mean that you may install it and run on your own infrastructure, without paying any additional costs for Kubernetes itself.

You may run Kubernetes on the huge amount of different providers. It doesn't matter on what environment do you run the Kubernetes cluster - you should only take care of the Kubernetes cluster itself. That allows you to run, for example, the development cluster locally on Vagrant, as make the distributed production environment on the public cloud like AWS or GCE and the private cloud like OpenStack or simply using some libvirt solutions (using CoreOS for example). Again, from the point of view of Kubernetes - it doesn't matter what infrastructure solution do you use - the only one requirement for it - to be Kubernetes-enabled.

Speaking about the Amazon ECS - that is a proprietary and vendor-locked solution. It also may give you the same performance as Kubernetes, but it won't give you the same flexibility.

So, globally one may compare both Amazon ECS and Kubernetes, but Kubernetes is much more flexible and ready-to-customize solution.

like image 82
ihor_dvoretskyi Avatar answered Oct 20 '22 17:10

ihor_dvoretskyi


I'm sorry, your question makes no sense. It's like asking

What is better? A rental car or a Ford?

AWS provides IaaS, Kubernetes is system to manage distributed containers. You can run Kubernetes on various platforms, including AWS-provided infrastructure.

Do you want to pay Amazon to host your Docker containers? You can do that.

Or do you want to create your own "cloud" where you run your Docker containers? Then get yourself some bare metal and use (for example) CoreOS and Kubernetes on top.

like image 45
Hank Avatar answered Oct 20 '22 18:10

Hank