I would like to deploy an application cluster by managing my deployment via k8s Deployment object. The documentation has me extremely confused. My basic layout has the following components that scale independently:
- API server
- UI server
- Redis cache
- Timer/Scheduled task server
Technically, all 4 above belong in separate pods that are scaled independently.
My questions are:
- Do I need to create
pod.yml
files and then somehow reference them indeployment.yml
file or can a deployment file also embed pod definitions? - K8s documentation seems to imply that the
spec
portion ofDeployment
is equivalent to defining one pod. Is that correct? What if I want to declaratively describe multi-pod deployments? Do I do need multiple deployment.yml files?