Kubernetes Concepts Explained Visually
Loading interactive experience...
Frequently Asked Questions
What is a Kubernetes Pod?
A Pod is the smallest deployable unit in Kubernetes. It wraps one or more containers that share networking and storage. A bare pod has no controller watching it — if it crashes or its node goes down, nothing recreates it. That is why you use a Deployment to manage pod lifecycle.
What is the difference between a Service and an Ingress?
A Service provides a stable internal IP address that routes traffic to a set of pods using label selectors. An Ingress sits in front of multiple services and provides external HTTP/HTTPS routing with path-based and host-based rules, typically through a single load balancer.
How does Horizontal Pod Autoscaler (HPA) work?
HPA monitors pod metrics like CPU utilization. When usage exceeds a target threshold (for example 70%), it increases the replica count. When usage drops, it scales back down. HPA adjusts the number of pods, but it cannot provision new cluster nodes — that requires a node autoscaler like Karpenter.
What is Karpenter?
Karpenter is a Kubernetes node autoscaler. When pods are in Pending state because no existing node has enough resources, Karpenter automatically provisions a new node with the right size. When demand drops, it removes underutilized nodes to reduce cost.
Why do pods need Resource Requests and Limits?
Resource Requests tell the scheduler how much CPU and memory a pod needs to be placed on a node. Limits cap the maximum resources a pod can consume. Without limits, a single misbehaving pod can consume all resources on a node, starving every other pod and causing cascading failures.