Applying NodeSelector on deployment

Danilo Rocha
sysmap-labs
Published in
Feb 26, 2021

You can patch the deployment to change the desired node as follows:

kubectl patch deployments nginx-deployment -p '{"spec": {"template": {"spec": {"nodeSelector": {"kubernetes.io/hostname": "node-2"}}}}}'

YAML patch

By running kubectl patch deployment nginx-deployment –patch “$(cat patch.yaml)”, where patch.yaml is prepared as follows:

spec:
template:
spec:
nodeSelector:
kubernetes.io/hostname: node-2

Both will result in scheduler scheduling new pod on requested node, and terminating the old one as soon as the new one is ready.

--

--