Skip to content

Introduction to Kubernetes Deployment

A Kubernetes Deployment tells Kubernetes how to create or modify instances of the pods.

You describe a desired state in a Deployment, and the Deployment Controller changes the actual state to the desired state at a controlled rate.

Using Deployments you can easily scale the number of replica pods, enable the rollout of updated code in a controlled manner, or roll back to an earlier deployment version if necessary.

Deployment in Kubernetes is an abstraction of a ReplicaSet. When you create a Deployment, Kubernetes creates a ReplicaSet for you and manages the replicas of your application based on the Deployment's desired state.

Deployments provide additional features such as rolling updates, rollbacks, and scaling strategies, which are not available with ReplicaSets alone.

Deployment Overview

Deployment doesn't interact with pods directly. It manages pods using ReplicaSets.

Deployment Overview

Deployment does the rolling update automatically without any human interaction and increases the abstraction by one level.

It is recommended to use Deployments instead of directly using ReplicaSets, unless you require custom update orchestration or don't require updates at all.