Understanding the Runtime Class use case
Runtime Class is one of the features that usually doesn’t get much attention, but it is crucial to help you run heterogeneous Kubernetes clusters. Runtime Class allows you to centralize nodeSelector
and Tolerations
configurations the same way you would offload application configuration from the manifest file using ConfigMap
.
Assume you have two Kubernetes deployments. Deployment 1 deploys the frontend, and Deployment 2 deploys the backend; however, both need to be scheduled on an Amazon EC2 Windows node and need to tolerate the os=windows
value:
Figure 10.1 – Kubernetes deployment manifests
Both deployment specifications are almost identical; the only difference between the deployment name and labels is to differentiate between the frontend and backend. In addition, you can see that both also have nodeSelector
and tolerations
, ensuring that both deployments will be scheduled on node groups based...