include::../attributes.txt[]

[.topic]
[#what-is-eks]
= What is Amazon EKS?

[abstract]
--
Learn to manage containerized applications with Amazon EKS
--


## Amazon EKS: Simplified Kubernetes Management

Amazon Elastic Kubernetes Service (EKS) provides a fully managed Kubernetes service that eliminates the complexity of operating Kubernetes clusters. With EKS, you can:


* Deploy applications faster with less operational overhead
* Scale seamlessly to meet changing workload demands
* Improve security through {aws} integration and automated updates
* Choose between standard EKS or fully automated EKS Auto Mode



Amazon Elastic Kubernetes Service (Amazon EKS) is the premiere platform for running https://kubernetes.io/docs/concepts/overview/[Kubernetes] clusters, both in the Amazon Web Services ({aws}) cloud and in your own data centers (https://anywhere.eks.amazonaws.com/[EKS Anywhere] and <<hybrid-nodes-overview,Amazon EKS Hybrid Nodes>>).

Amazon EKS simplifies building, securing, and maintaining Kubernetes clusters. It can be more cost effective at providing enough resources to meet peak demand than maintaining your own data centers. Two of the main approaches to using Amazon EKS are as follows:

* **EKS standard**: {aws} manages the https://kubernetes.io/docs/concepts/overview/components/#control-plane-components[Kubernetes control plane] when you create a cluster with EKS. Components that manage nodes, schedule workloads, integrate with the {aws} cloud, and store and scale control plane information to keep your clusters up and running, are handled for you automatically.

* **EKS Auto Mode**: Using the <<automode,EKS Auto Mode>> feature, EKS extends its control to manage https://kubernetes.io/docs/concepts/overview/components/#node-components[Nodes] (Kubernetes data plane) as well. 
It simplifies Kubernetes management by automatically provisioning infrastructure, selecting optimal compute instances, dynamically scaling resources, continuously optimizing costs, patching operating systems, and integrating with {aws} security services.

The following diagram illustrates how Amazon EKS integrates your Kubernetes clusters with the {aws} cloud, depending on which method of cluster creation you choose:

image::images/whatis.png[Amazon EKS standard and EKS Auto Mode,scaledwidth=100%]

Amazon EKS helps you accelerate time to production, improve performance, availability and resiliency, and enhance system security.
For more information, see https://aws.amazon.com/eks/[Amazon Elastic Kubernetes Service].

[#eks-features]
== Features of Amazon EKS
Amazon EKS provides the following high-level features:

*Management interfaces*::
EKS offers multiple interfaces to provision, manage, and maintain clusters, including {aws-management-console}, Amazon EKS API/SDKs, CDK, {aws} CLI, eksctl CLI, {aws} CloudFormation, and Terraform. 
For more information, see <<getting-started>> and <<clusters>>.

*Access control tools*::
EKS relies on both Kubernetes and {aws} Identity and Access Management ({aws} IAM) features to <<cluster-auth,manage access>>
from users and workloads.
For more information, see <<grant-k8s-access>> and <<service-accounts>>.

*Compute resources*::
For <<eks-compute,compute resources>>, EKS allows the full range of Amazon EC2 instance types and {aws} innovations such as Nitro and Graviton with Amazon EKS for you to optimize the compute for your workloads. For more information, see <<eks-compute>>.

*Storage*::
EKS Auto Mode automatically creates storage classes using <<create-storage-class,EBS volumes>>.
Using Container Storage Interface (CSI) drivers, you can also use Amazon S3, Amazon EFS, Amazon FSX, and Amazon File Cache for your application storage needs. For more information, see <<storage>>.

*Security*::
The shared responsibility model is employed as it relates to <<security,Security in Amazon EKS>>.
For more information, see <<security-best-practices,Security best practices>>, <<infrastructure-security,Infrastructure security>>,
and <<security-k8s,Kubernetes security>>.

*Monitoring tools*::
Use the <<observability-dashboard,observability dashboard>> to monitor Amazon EKS clusters.
Monitoring tools include <<prometheus,Prometheus>>, <<cloudwatch,CloudWatch>>, <<logging-using-cloudtrail,Cloudtrail>>,
and <<opentelemetry,ADOT Operator>>.
For more information on dashboards, metrics servers, and other tools, see <<cost-monitoring,EKS cluster costs>> and <<metrics-server,Kubernetes Metrics Server>>.

*Kubernetes compatibility and support*::

Amazon EKS is certified Kubernetes-conformant, so you can deploy Kubernetes-compatible applications without refactoring and use Kubernetes community tooling and plugins.
EKS offers both <<kubernetes-versions-standard,standard support>> and <<kubernetes-versions-extended,extended support>> for Kubernetes.
For more information, see <<kubernetes-versions>>. 

[#eks-related-services]
== Related services
**Services to use with Amazon EKS**

You can use other {aws} services with the clusters that you deploy using Amazon EKS:

*Amazon EC2*::
Obtain on-demand, scalable compute capacity with link:AWSEC2/latest/UserGuide/concepts.html[Amazon EC2,type="documentation"].

*Amazon EBS*::
Attach scalable, high-performance block storage resources with link:ebs/latest/userguide/what-is-ebs.html[Amazon EBS,type="documentation"].

*Amazon ECR*::
Store container images securely with link:AmazonECR/latest/userguide/what-is-ecr.html[Amazon ECR,type="documentation"].

*Amazon CloudWatch*::
Monitor {aws} resources and applications in real time with link:AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html[Amazon CloudWatch,type="documentation"].

*Amazon Prometheus*::
Track metrics for containerized applications with link:prometheus/latest/userguide/what-is-Amazon-Managed-Service-Prometheus.html[Amazon Managed Service for Prometheus,type="documentation"].

*Elastic Load Balancing*::
Distribute incoming traffic across multiple targets with link:elasticloadbalancing/latest/userguide/what-is-load-balancing.html[Elastic Load Balancing,type="documentation"].

*Amazon GuardDuty*::
Detect threats to EKS clusters with <<integration-guardduty,Amazon GuardDuty>>.

*{aws} Resilience Hub*::
Assess EKS cluster resiliency with <<integration-resilience-hub,{aws} Resilience Hub>>.

[#eks-pricing]
== Amazon EKS Pricing

Amazon EKS has per cluster pricing based on Kubernetes cluster version support, pricing for Amazon EKS Auto Mode, and per vCPU pricing for Amazon EKS Hybrid Nodes.

When using Amazon EKS, you pay separately for the {aws} resources you use to run your applications on Kubernetes worker nodes. For example, if you are running Kubernetes worker nodes as Amazon EC2 instances with Amazon EBS volumes and public IPv4 addresses, you are charged for the instance capacity through Amazon EC2, the volume capacity through Amazon EBS, and the IPv4 address through Amazon VPC.

Visit the respective pricing pages of the {aws} services you are using with your Kubernetes applications for detailed pricing information.

* For Amazon EKS cluster, Amazon EKS Auto Mode, and Amazon EKS Hybrid Nodes pricing, see link:eks/pricing/[Amazon EKS Pricing,type="marketing"].
* For Amazon EC2 pricing, see link:ec2/pricing/on-demand/[Amazon EC2 On-Demand Pricing,type="marketing"] and link:ec2/spot/pricing/[Amazon EC2 Spot Pricing,type="marketing"].
* For {aws} Fargate pricing, see link:fargate/pricing[{aws} Fargate Pricing,type="marketing"].
* You can use your savings plans for compute used in Amazon EKS clusters. For more information, see link:savingsplans/pricing/[Pricing with Savings Plans,type="marketing"].


include::common-use-cases.adoc[leveloffset=+1]

include::eks-architecture.adoc[leveloffset=+1]

include::kubernetes-concepts.adoc[leveloffset=+1]

include::eks-deployment-options.adoc[leveloffset=+1]
