- Why Change?
Discover the power of cloud cost intelligence.
Give your team a better cost platform.
Give engineering a cloud cost coach.
Learn more about CloudZero's pricing.
Request a demo to see CloudZero in action.
Learn more about CloudZero and who we are.
Got questions? We have answers.
Speak with our Cloud Cost Analysts and get the answers you need.Get in touch
How SeatGeek Decoded Its AWS Bill and Measured Cost Per CustomerRead customer story
Enable engineering to make cost-aware development decisions.
Give finance the context they need to make informed decisions.
Decentralize cloud cost and mature your FinOps program.
Discover the best cloud cost optimization content in the industry.
Compare pricing and get advice on AWS services including EC2, RDS, ElastiCache, and more.
Browse helpful webinars, ebooks, and other useful resources.
Gauge the health and maturity level of your cost management and optimization efforts.
Learn how we’ve helped happy customers like SeatGeek, Drift, Remitly, and more.
Guide: How To Overcome Tagging And Accelerate Cloud Cost AllocationSee guide
Amazon EKS allows customers to benefit from Kubernetes' scalability and resilience without doing the management work themselves. Here's how pricing works.
AWS did not intend to build Amazon EKS; it simply had to. Kubernetes adoption beamed light years ahead of AWS' own managed container orchestration service. This forced AWS to develop a managed service to accommodate customers who wanted to use upstream Kubernetes but did not want to do the management themselves.
As soon as AWS got around to it, it knocked the Kubernetes-based container management service out of the park. Not only is Amazon EKS more simplified than Kubernetes, but EKS pricing may also be worth it.
Yet, to understand Amazon EKS pricing, it is first necessary to understand what EKS is used for.
Table Of Contents
EKS is short for Elastic Kubernetes Service, a fully managed container service that helps run Kubernetes apps on-premises or in the AWS public cloud. Amazon EKS enables you to use Kubernetes without needing to install, run, or configure it.
Instead, AWS manages all Kubernetes control plane administration tasks, such as upgrades, patching, scaling across multiple AWS Availability Zones, security configurations, and replacing unhealthy instances. AWS also scales backend persistent layers and API servers via the Amazon EKS service.
Also, Amazon EKS is certified Kubernetes-compatible, so applications you run on upstream Kubernetes will also run on Amazon EKS without a problem.
For all these to work, your EKS admin or developer must set up worker nodes and link them to Amazon EKS endpoints.
Note: Amazon EKS Anywhere offers a new Amazon EKS deployment option to create, run, and maintain on-premises Kubernetes clusters easily. So, it delivers an EKS-like experience for customers who want to run Kubernetes on their own hardware.
Amazon EKS also maintains the highly available and scalable control plane nodes that schedule containers, manage application availability, store cluster data, and perform other vital tasks in Kubernetes.
With EKS, you can run your Kubernetes apps on Amazon EC2 and AWS Fargate. Still, Amazon EKS integrates natively with multiple Amazon services, such as:
Here’s a visual illustration of how Amazon EKS works:
Credit: How Amazon EKS architecture works by SCMGalaxy
With Amazon EKS, each cluster has a single tenant Kubernetes control plane. Infrastructure for the control plane is not shared between clusters or AWS accounts. The control plane will consist of at least two API server instances and three etcd instances operating across three AWS Availability Zones in an AWS Region.
Kubernetes uses pods (groups of containers) to schedule, run, and scale servers. With Amazon EKS, you can replicate master schedulers in three Availability Zones within an AWS Region to ensure high availability.
EKS also uses various open-source tools, such as Kubernetes and Docker, which you can use to move pods from AWS to other environments without changing your application's code.
But much of that reads like what the Amazon Elastic Container Service (Amazon ECS) does, or does it?
Both are fully managed AWS services, but Amazon ECS and EKS differ in several ways.
The significant difference is that while Amazon EKS is a managed Kubernetes service, Amazon ECS is a Kubernetes alternative. ECS was designed as a managed container orchestration service to help AWS customers build, run, and scale secure containerized applications more easily than Kubernetes.
However, Kubernetes’ popularity soared, and so AWS launched EKS to help customers who wanted to use full-blown Kubernetes but without all the administration work required to maintain it.
That said, what is the pricing model for Amazon EKS?
Each Amazon EKS cluster costs $0.10 per hour. In addition, you are responsible for any additional resources your cluster uses, such as compute and storage costs.
Both ECS and EKS charge based on the resources your workload consumes, so you're paying for the EC2 instances that run ECS Tasks or EKS Kubernetes pods.
There's no extra fee to use ECS. But EKS clusters cost $0.10 per hour per cluster plus compute costs. That means you'll spend an additional $74 monthly on each Kubernetes cluster you run with EKS vs. ECS. If you run multiple clusters, the cost can add up quickly.
You can run EKS on the AWS cloud with Fargate or Amazon EC2 (or on-premises using AWS OutPosts). Amazon EKS pricing depends on the deployment option you choose. Here’s how.
Here, you’re charged for the resources you use, such as compute (EC2 instances) and storage (Amazon EBS volumes) to run the Kubernetes worker nodes. This follows a pay-per-use pricing model, so no upfront payments or minimum charges are required.
As a result, you fully control the type of EC2 instance used here. For example, when training a Machine Learning (ML) model with specific GPU requirements, you can pick a GPU-optimized instance type.
Also, you take advantage of Amazon EC2 based pricing, such as Savings Plans, spot instances, and commitment-free on-demand instances to reduce your costs. But you're responsible for patches, network security, and scalability.
In this case, Amazon EKS calculates charges based on vCPU and memory you use from the moment you begin downloading the container image (Docker pull) until the Amazon EKS pod is terminated.
AWS Fargate pricing is also pay-per-use, so there are no upfront charges here as well. However, a one-minute minimum charge applies. Also, all charges are rounded up to the nearest second.
Additional charges may also apply depending on other resources you use, such as data transfer and CloudWatch utilization charges.
EKS with AWS OutPosts pricing is similar to using EKS in the cloud. It costs $0.10 per hour to run the EKS cluster in the cloud (and not on Outposts, which is an on-premises service). The Kubernetes worker nodes will run on Outposts EC2 capacity at no extra cost.
In all three scenarios, Amazon EKS costs can quickly add up depending on usage, which brings us to the question of how to optimize Kubernetes costs.
Even though containerization can improve an application's scalability, resilience, and portability, it can also introduce cost blindspots. This is not what you want because Kubernetes is too easy to scale out of your budget, whether you use EKS or upstream Kubernetes.
No matter how you configure Kubernetes, you’ll need a monitoring and optimization service to keep costs under control in real-time.
CloudZero offers the only cloud cost intelligence platform that combines metrics from the AWS Container Insights service with AWS billing information for calculating Kubernetes costs automatically.
The result: You are able to view your Kubernetes costs down to the hour, cluster, namespace, and pod-level. This granularity enables you to figure out exactly where your cloud budget is going, so you can determine where to optimize costs without negatively affecting your environment's performance, costs, etc.
You can also see who, what, and why your Kubernetes costs are changing. In addition, CloudZero’s real-time anomaly detection will send you timely alerts when an application consumes more cluster resources than expected. Then you can act before it becomes a costly surprise.
Using CloudZero, you can quickly analyze each containerized workload's cost just like any other non-containerized resource — or related non-containerized resources like network or storage — which increases your understanding of your SaaS COGS.
You can easily use CloudZero to go beyond reducing cloud costs and focus on what matters most: optimizing Amazon EKS components to ensure optimal performance and costs.
Kubernetes is an open-source container orchestration platform, but Amazon EKS is a managed container management service built on Kubernetes. EKS simplifies Kubernetes for customers who need to use it for containerized app management through AWS for various reasons, including integration with other AWS services.
ECS and EKS are both fully managed AWS services. But while Amazon EKS is based on Kubernetes, ECS is an AWS-only container orchestration service.
EKS is an excellent alternative when you do not have the resources, expertise, or budget to deploy containerized applications with upstream Kubernetes. Use EKS if you want a level of portability to avoid AWS vendor lock-in.
AWS ECS is a great option for creating, running, and maintaining containerized apps. AWS ECS is a great option for building, running, and maintaining containerized apps only on the AWS cloud. It is usually less expensive than EKS as well.
CloudZero is the only solution that enables you to allocate 100% of your spend in hours — so you can align everyone around cost dimensions that matter to your business.