EKS Automode Vs Karpenter

5 minute read
Content level: Advanced
2

Which one to use when EKS Automode and Karpneter

This article lists differences between the node management solution - Karpenter and EKS Automode

Key Differences:

1.Management Responsibility: Karpenter: Users responsible for provisioning and managing Karpenter deployment, NodePools, NodeClasses, and EC2 instances Auto Mode: Fully managed by AWS, including compute, networking, and storage capabilities

2.`Infrastructure Control: Karpenter: Full control over EC2 instances, including SSH/SSM access Auto Mode: No direct access to EC2 instances, managed by EKS using Bottlerocket OS

3.Architecture: Karpenter: Runs inside your cluster as pods Auto Mode: Controllers run in AWS-managed accounts, uses systemd processes for node-level components

4. Integration: Karpenter: Standalone node provisioner Auto Mode: Integrated solution leveraging Karpenter APIs with additional managed capabilities

5.Flexibility: Karpenter: More flexible with custom AMIs and infrastructure configurations Auto Mode: More restricted but offers simplified management and built-in best practices

Similarities: 1)Both support dynamic node provisioning 2)Both can handle pod scheduling requirements 3)Both support various instance types and purchasing options.

Requirements for Auto Mode: 1)Kubernetes version 1.29 or higher 2)Cannot use custom AMIs 3)Uses Bottlerocket OS exclusively 4)No direct host access or user data configurations

Comparison:

AspectsEKS Auto-ModeKarpenter
Controller LocationRuns in AWS-managed accountRuns inside customer cluster
Infrastructure ManagementFully automated cluster managementCustomer manages deployment and configuration
Node AccessNo SSH/SSMOperating System
Operating SystemManaged Bottlerocket OS onlyFlexible supports custom AMIs
Core Features
Node ProvisioningAutomated based on pod demandsAutomated based on pod demands
Node PoolsPre-configured general-purpose and system poolsCustom NodePools/NodeClasses
Instance TypesSupports all EC2 options (requires custom NodePool)Supports all EC2 options
Spot SupportBuilt-in spot handlingRequires additional configuration
Operational Aspects
Node RotationAutomatic every 14-21 daysManual/custom configuration
Add-ons ManagementCore add-ons run as systemd processesCustomer managed add-ons
Kubernetes Version1.29+ requiredMore flexible version support
Node ConfigurationNo userdata/bootstrap container supportSupports custom configurations
Networking
CNI OptionsAWS VPC CNI onlySupports alternative CNIs
CoreDNS/kube-proxyRuns as systemd processesRuns as pods
Security GroupsLimited pod security group supportFull security group support
Cost & Pricing
Pricing StructureEC2 costs + Auto Mode feeEC2 costs only
Cost OptimizationBuilt-in optimization featuresManual optimization required
Flexibility vs Control
CustomizationLimited as managed approachHigh customization possible
MaintenanceAWS-managedCustomer-managed
Infrastructure ControlRestricted accessFull control

Key Differentiators: 1.1)Auto Mode provides a more managed experience with less operational overhead 1.2)Karpenter offers more flexibility but requires more management 2.1)Auto Mode includes built-in best practices and automated maintenance 2.2)Karpenter allows more customization but needs more manual configuration 3.1)How does pricing change with Auto Mode? With Auto Mode, there are no changes to the cluster control plane costs. You pay for Amazon EKS Auto Mode based on the duration and type of Amazon EC2 instances launched and managed by EKS Auto Mode. The Amazon EKS Auto Mode prices below are in addition to the Amazon EC2 instance price, which covers the EC2 instances themselves. Like EC2 instance charges, EKS Auto Mode charges are billed per-second, with a one-minute minimum. While you can leverage the full range of Amazon EC2 instance purchase options with EKS Auto Mode, including On Demand, one- and three-year Reserved Instances, Compute Savings Plans, and Spot Instances, the EKS Auto Mode charges are independent of the EC2 instance purchase option.

When to use EKS Automode: We encourage customers to think about the TCO of running applications on EKS with Auto Mode.Think how much engineering effort will they be able to save with Auto Mode, when you no longer need to roll out OS patches, when you get a simplified k8s upgrade experience, when you don't need to manage core add-ons / plugins which are provided as capabilities within Auto Mode. And then what value can you unlock by having your engineers spend that time working on value creating tasks like enhanced automation, or resolving those niggles in their backlog that no-one ever has time to address. Many customers will save on compute costs with Auto Mode because of how it will right size the compute in their cluster based on the resources they request for their pods/deployments. And Auto Mode will then continually optimize if there are opportunities to replace or consolidate underutilized or more expensive nodes. Because we also run the controllers outside the cluster, it also allows customers to effectively scale their compute to 0 which will further drive costs down for example overnight in non-production environments.

profile pictureAWS
EXPERT
published a month ago573 views