Overview

A Deployment is the most common way to run applications on Kubernetes. You describe a desired state in a Deployment, and the Deployment Controller changes the actual state to the desired state at a controlled rate.

Key Functions

  • Self-Healing: Automatically restarts failed Pods and replaces Pods on failed nodes.
  • Scaling: Easily scale the number of replicas up or down.
  • Rolling Updates: Update the application version with zero downtime by gradually replacing old Pods with new ones.
  • Rollbacks: Quickly revert to a previous version if an update fails.

Relationship

A Deployment manages a ReplicaSet, which in turn manages the individual Pods.

Related Terms