Kubernetes Manifest Metadata
The manifest metadata section is where things like the resource name and labels are specified.
The .metadata.name field specifies the name of the resource. The presence of this field is in general mandatory when creating the resource specified by this manifest, thought in some cases, some resources may allow a client to request the generation of an appropriate name automatically. Once a resource is create, the name cannot be updated.
The .metadata.namespace field specifies the Kubernetes namespace the corresponding object belongs to. When the object is created, it will be created in the specified namespace - which has to exist at the time of the creation. If no namespace field is specified, the default namespace is implied. A missing namespace field is equivalent with a namespace field with the value "default".
The .metadata.labels field contains a map of string keys and values representing labels.