• Generally written as YAML file • Deployment, Service, DaemonSet, Namespace, ConfigMap… • Used to create a resource on the Kubernetes via kubectl • kubectl create -f manifest.yaml • There are so many examples in the Kubernetes repos • https://github.com/kubernetes/kubernetes/tree/master/examples
tool • It has been developed to generate the BOSH manifest • However, it can also be used in any YAML file ! • It's a single binary, written in Go • https://github.com/geofffranks/spruce
multiple environments • Production, Staging, Testing, Development... • Use multiple manifests for each environment • Merge the base manifest and the environment-specific manifest when creating a resource • It is inspired by Ruby on Rails
1 # Use only one pod template: metadata: labels: env: dev # Add label "env" spec: containers: - name: php-redis resources: requests: cpu: 50m # Reduce CPU resource memory: 50Mi # Reduce memory resource And define the environment-specific manifest.