Control which nodes run workspaces
Control which cluster nodes run workspace Pods by setting a nodeSelector or tolerations in the CheCluster Custom Resource. Use this to isolate workspaces on dedicated hardware.
-
An active
kubectlsession with administrative permissions to the destination Kubernetes cluster. See Overview of kubectl. -
The target nodes are labeled or tainted according to the scheduling rules you want to apply.
-
Using NodeSelector
Che uses
CheClusterCustom Resource to configurenodeSelector:spec: devEnvironments: nodeSelector: key: valueThis section must contain a set of
key=valuepairs for each node label to form the nodeSelector rule. -
Using Taints and Tolerations
This works in the opposite way to
nodeSelector. Instead of specifying which nodes the Pod will be scheduled on, you specify which nodes the Pod cannot be scheduled on. For more information, see: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration.Che uses
CheClusterCustom Resource to configuretolerations:spec: devEnvironments: tolerations: - effect: NoSchedule key: key value: value operator: Equal
|
To avoid Pods and PVCs to be scheduled in different zones on large, multizone clusters, create an additional Pass the name of this newly created |