A Kubernetes deployment is a resource object in Kubernetes that provides declarative updates to Pods and ReplicaSets. A deployment allows you to describe an application’s life cycle, such as which images to use for the app, the number of pods there should be, and the way in which they should be updated.
A deployment is a description of the desired state of the pods and ReplicaSets, which the Kubernetes controllers then work to make a reality. You can use deployments to roll out a new application or microservice or update an existing one.