Tips for running scalable workloads on Kubernetes
- You must set resource requests & limits so the Kubernetes scheduler can ensure workloads are spread across nodes evenly.
- The scheduler can use configured affinities & anti-affinities as another hint of which node is best to assign your pod to.
- In Kubernetes, readinessProbe tells that a pod is ready to start receiving requests and livenessProbe tells that a pod is running as expected. Setting these ensure that requests to service always go to a container that can process the request.
- It is common for nodes in Kubernetes to disappear and you should configure a pod disruption budget to ensure you always have a minimum number of ready pods for deployment.
Full post here, 13 mins read