What is Amazon Elastic Kubernetes Service (EKS)? |
What is Azure Kubernetes Service (AKS)? |
Amazon Elastic Kubernetes Service (EKS) offers cloud-based container orchestration. The service natively integrates with Kubernetes—a popular open-source container orchestrator.
EKS uses Kubernetes to automatically scale and manage clusters on AWS. EKS enables enterprises to use Kubernetes without having to install, manage, or operate the tool itself.
Learn more about EKS and related services in our detailed guides to:
|
Azure Kubernetes Service (AKS) offers cloud-based managed container orchestration based on Kubernetes.
AKS can handle critical tasks, including the deployment, scaling, and management of container-based applications and Docker containers. The service lets you build scalable applications with Kubernetes and Docker on top of the Azure cloud.
Learn more about AKS and related services in our detailed guides to:
|
In this article, you will learn:
AKS takes a very structured approach to supported versions and encourages customers to upgrade Kubernetes. The service quickly updates to new Kubernetes versions and also supports small patches. Upgrading typically requires some manual work.
A main advantage of AKS is that it offers an automatic repair feature for nodes, which can be paired with auto-scaling node pools. However, AKS is inferior in terms of uptime, requiring additional costs to achieve an uptime of 99.95% (free clusters only have guaranteed uptime of 99.5%).
EKS takes a more pragmatic approach to version control, continuing to support version 1.15, which is commonly used in production. Like AKS, upgrading requires some manual work.
EKS does not provide specialized node health monitoring or repair. Rather, the service lets you create custom health checks and automated replacements for EKS nodes. EKS provides 99.95% uptime by default for all clusters, with no additional costs.
AKS only charges for visible infrastructure—you pay regular on-demand, reserved, or spot instance prices for Kubernetes nodes. Services like master node, cluster management and other services are offered for free.
EKS also charges regular EC2 prices for nodes, but also charges $0.1 per hour per cluster for operating Kubernetes master nodes. This can quickly add up in large Kubernetes deployments.
Both services integrate with the respective serverless container platforms, which are priced differently from Azure VMs and EC2 instances.
AKS offers a serverless feature called Virtual Nodes, which can help you achieve faster and more granular scaling. The feature lets you run Kubernetes pods based on Azure Container Instances instead of full virtual machines (VMs). This means you can seamlessly run containers on serverless resources, without managing the underlying VMs.
Learn more in our detailed guides to:
EKS provides integration with Fargate, Amazon's serverless container platform. Similar to the Virtual Node feature in AKS, this option allows you to run pods as container instances instead of full VMs. However, Fargate requires the use of Amazon's Application Load Balancer (ALB), while the Azure Virtual Node implementation does not require a specific load balancer.
AKS makes it simple to create a Kubernetes cluster. The AKS CLI allows you to create, upgrade, or delete a cluster with a single command.
EKS offers a different process that typically involves several steps. It requires you to configure a web console, as well as other aspects of the cluster. For example, connecting worker nodes to the cluster via kubectl. This process can create a bottleneck if you need to create clusters on demand. However, the community has built solutions for automating these activities, most notably eksctl.
Related content: Read our guide to AWS EKS architecture
Both EKS and AKS can run 100 clusters in each region. Nodes are distributed across node pools and each node pool can run 100 nodes. Also, each node can run multiple pods.
EKS offers better quota limits, perhaps due to Amazon’s more extensive data center infrastructure:
In AKS, network policies must be enabled when creating a cluster. It also provides additional policy management capabilities through the Azure Policy service.
EKS provides two network policy options depending on the cluster network type, but support is only available when the cluster is created. EKS guarantees support for pod security policies using default permissive policies. EKS requires customers to install and manage Calico CNI, which improves network security.
Both services are deployed using Kubernetes RBAC by default, which maintains core Kubernetes security standards across all clusters.
NetApp Cloud Volumes ONTAP, the leading enterprise-grade storage management solution, delivers secure, proven storage management services on AWS, Azure and Google Cloud. Cloud Volumes ONTAP capacity can scale into the petabytes, and it supports various use cases such as file services, databases, DevOps or any other enterprise workload, with a strong set of features including high availability, data protection, storage efficiencies, Kubernetes integration, and more.
In particular, Cloud Volumes ONTAP supports Kubernetes Persistent Volume provisioning and management requirements of containerized workloads.
Learn more about how Cloud Volumes ONTAP helps to address the challenges of containerized applications in these Kubernetes Workloads with Cloud Volumes ONTAP Case Studies.