Need advice about which tool to choose?Ask the StackShare community!

Amazon EKS

912
472
+ 1
3
Docker for AWS

94
159
+ 1
0
Add tool

Amazon EKS vs Docker for AWS: What are the differences?

Introduction

Here we will discuss the key differences between Amazon EKS (Elastic Kubernetes Service) and Docker for AWS.

  1. Managed vs Self-Managed: Amazon EKS is a managed service that abstracts the underlying infrastructure and allows users to focus on deploying and managing their applications, without worrying about managing the control plane. On the other hand, Docker for AWS provides a self-managed environment where users have full control over the Kubernetes cluster, including managing the control plane.

  2. Scalability: With Amazon EKS, the cluster can easily scale up and down based on the workload demands. The underlying infrastructure is automatically managed by AWS, allowing for seamless scalability. In the case of Docker for AWS, users need to manually manage the infrastructure and scaling, which can require more effort and resources.

  3. High Availability: Amazon EKS provides redundancy at multiple levels to ensure high availability, such as multiple availability zones for worker nodes and automatic replacement of unhealthy control plane nodes. Docker for AWS requires users to configure high availability manually, which can be complex and time-consuming.

  4. Integration with AWS Services: One of the major advantages of Amazon EKS is its tight integration with other AWS services. It seamlessly integrates with services like Elastic Load Balancing, AWS Identity and Access Management (IAM), Amazon CloudWatch, and AWS App Mesh, making it easier to build and manage applications on AWS infrastructure. Docker for AWS may require additional configuration and integration efforts to use these AWS services.

  5. Updates and Maintenance: Amazon EKS takes care of updating and patching the Kubernetes control plane components. Users only need to manage the lifecycle of worker nodes. With Docker for AWS, users are responsible for managing the updates and maintenance of both the control plane components and worker nodes, which can be time-consuming and prone to errors.

  6. Cost: Amazon EKS offers a pay-as-you-go pricing model, where users only pay for the resources they use, making it cost-effective for smaller workloads. Docker for AWS requires users to manage and provision the infrastructure themselves, which may entail additional costs for managing resources and infrastructure overhead.

In Summary, Amazon EKS is a managed service that offers scalability, high availability, tight integration with AWS services, automated updates, and a cost-effective pricing model. Docker for AWS, on the other hand, provides a self-managed environment with more control but requires manual management of scalability, high availability, updates, and integration with AWS services.

Decisions about Amazon EKS and Docker for AWS
Andres Paredes
Lead Senior Software Engineer at InTouch Technology · | 3 upvotes · 83.8K views

If you want to integrate your cluster and control end to end your pipeline with AWS tools like ECR and Code Pipeline your best option is ECS using a EC2 instance. There are pros and cons but it's easier to integrate using cloud formation templates and visual UI for approvals, etc. ECS is free, you need to pay only for the EC2 instance but unfortunately, it is not standard then you cannot use standard tools to see and manage your Kubernetes. EKS in the other hand uses standard Kubernates definitions but you need to pay for the service and also for the EC2 instance(s) you have in your cluster.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Amazon EKS
Pros of Docker for AWS
  • 1
    Better control
  • 1
    Possibility to log in into the pods
  • 1
    Broad package manager using helm
    Be the first to leave a pro

    Sign up to add or upvote prosMake informed product decisions

    What is Amazon EKS?

    Amazon Elastic Container Service for Kubernetes (Amazon EKS) is a managed service that makes it easy for you to run Kubernetes on AWS without needing to install and operate your own Kubernetes clusters.

    What is Docker for AWS?

    An integrated, easy-to-deploy environment for building, assembling, and shipping applications on AWS, Docker for AWS is a native AWS application optimized to take optimal advantage of the underlying AWS IaaS services while giving you a modern Docker platform that you can use to deploy portable apps.

    Need advice about which tool to choose?Ask the StackShare community!

    Jobs that mention Amazon EKS and Docker for AWS as a desired skillset
    What companies use Amazon EKS?
    What companies use Docker for AWS?
    See which teams inside your own company are using Amazon EKS or Docker for AWS.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Amazon EKS?
    What tools integrate with Docker for AWS?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    Blog Posts

    May 21 2020 at 12:02AM

    Rancher Labs

    KubernetesAmazon EC2Grafana+12
    5
    1496
    DockerAmazon EC2Scala+8
    6
    2710
    What are some alternatives to Amazon EKS and Docker for AWS?
    kops
    It helps you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes clusters from the command line. AWS (Amazon Web Services) is currently officially supported, with GCE in beta support , and VMware vSphere in alpha, and other platforms planned.
    Kubernetes
    Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
    Rancher
    Rancher is an open source container management platform that includes full distributions of Kubernetes, Apache Mesos and Docker Swarm, and makes it simple to operate container clusters on any cloud or infrastructure platform.
    Amazon EC2 Container Service
    Amazon EC2 Container Service lets you launch and stop container-enabled applications with simple API calls, allows you to query the state of your cluster from a centralized service, and gives you access to many familiar Amazon EC2 features like security groups, EBS volumes and IAM roles.
    Google Kubernetes Engine
    Container Engine takes care of provisioning and maintaining the underlying virtual machine cluster, scaling your application, and operational logistics like logging, monitoring, and health management.
    See all alternatives