What is a Kubernetes Manifest?

When you are going to deploy to kubernetes , or create a kubernetes resources like a pod , replica-set , configmap , secret , deployment , etc , you need to write a file called manifest that describe that object and its attributes either in yaml or json.

Just like you do in:

  • puppet manifest

  • ansible playbook

  • chef recipe

etc

Ofcourse you can create those objects by using just command line , but the recommended way is to write a file so that you can version control it and use it in a repeatable way.


It's basically a Kubernetes "API object description". A config file can include one or more of these. (i.e. Deployment, ConfigMap, Secret, DaemonSet, etc)

As per this:

Specification of a Kubernetes API object in JSON or YAML format.

A manifest specifies the desired state of an object that Kubernetes will maintain when you apply the manifest. Each configuration file can contain multiple manifests.

And a previous version of the documentation:

Configuration files - Written in YAML or JSON, these files describe the desired state of your application in terms of Kubernetes API objects. A file can include one or more API object descriptions (manifests).

Tags:

Kubernetes