Pro ยท Lesson 11 of 12

Production on EKS, GKE, and AKS

EKS, GKE, and AKS run the control plane for you. They do not remove the bill for nodes, load balancers, disks, or a bad upgrade.

Sign in to save your place.

Picture it this way

The cloud rents you the harbour master. You still pay for the docks, the cranes, and the electricity. Each harbour has a different price card, and the card changes.

Same API, different edges

A Deployment from this course can run on EKS, GKE, and AKS. The edges differ: how you log in, how load balancers are created, how disks are named, and how the cloud bills the control plane.

EKS documents a per-cluster control plane charge, plus the cost of worker nodes and anything those nodes use. Older Kubernetes versions can fall into an extended-support price. Read the current EKS pricing page before you quote a number.

GKE Standard and Autopilot bill differently. Autopilot charges from Pod requests. Standard charges from nodes. Google has changed cluster-management fees before. Use the current GKE pricing page.

AKS has offered a free control plane tier and a paid tier with an SLA. Nodes, load balancers, and disks are still billed. Use the current AKS pricing page. Do not copy a fee from a blog into a budget.

Cloud You still choose Look up, do not memorize
EKS Node groups or another node manager, VPC, IAM Control plane fee and version calendar
GKE Standard or Autopilot, region, release channel How Pods or nodes are billed
AKS Node pools, SLA tier, network plugin Whether the control plane tier you picked is free

Upgrades one minor at a time

Kubernetes clusters are upgraded one minor version at a time. Skipping a minor is how add-ons and APIs break in a pile. Drain a node before the cloud replaces it. A PodDisruptionBudget tells the drain how many Pods of an app may be down.

Test the same minor jump on a non-production cluster first. Read the cloud's version calendar for end of standard support. A version that still runs is not a version you should stay on past that date.

The bill is more than the control plane

NAT gateways, load balancers, unused disks, and log ingestion often cost more than the control plane fee. Requests and limits decide how many Pods fit on a node. A Pod with no requests is hard to schedule honestly. A Pod with huge requests leaves nodes empty.

Cluster autoscalers and, on AWS, tools such as Karpenter, add and remove nodes. Karpenter is not a Kubernetes built-in and it is not the GKE or AKS autoscaler. Name the tool the cluster actually runs.

What you pay attention to

  1. Control plane
  2. Nodes
  3. Add-ons

Step 1 of 3The managed control plane is the cloud's job. The fee, if any, is on that cloud's price page.

Lab: write the upgrade note before you touch production

Fill this in for a real cluster. Do not invent the prices. Paste the links you actually opened.

Cluster:
Current minor:
Target minor (one step only):
Cloud version calendar URL:
Pricing page URL:
PodDisruptionBudget in place for the app: yes/no
Non-prod cluster where this jump already ran: name

Concept summary

Knowledge check

How many minor versions should a cluster jump in one upgrade?

Which cost should you look up rather than memorize?

What is Karpenter?

Official sources

Checked against the linked documentation in October 2026. A later release can move a flag, a price, or a supported pair. Use the page for the version you installed.