Description of problem:
taint a node cause debug node to fail
Version-Release number of selected component (if applicable):
How reproducible:
Steps to Reproduce:
1. add node taint
oc patch node invd086.nxdi.nl-htc01.nxp.com --type=merge -p '{"spec":{"taints": [{ "key":"infra", "value":"reserved", "effect":"NoSchedule"},{ "key":"infra", "value":"reserved", "effect":"NoExecute"}]}}'
2. try to debug node
oc debug node/invd086.nxdi.nl-htc01.nxp.com
3. Error is generated "Generated from taint-controller, Marking for deletion Pod dummy/invd094nxdinl-htc01nxpcom-debug"
Actual results:
debug pod is deleted
Expected results:
debug pod run, and have toleration for any node
Additional info:
I was able to work around this issue by adding toleration to the namespace, which was added to the debug node pod.
oc patch namespace dummy --type=merge -p '{"metadata": {"annotations": { "scheduler.alpha.kubernetes.io/defaultTolerations": "[{\"operator\": \"Exists\"}]"}}}'
You may also need to use the --to-namespace option for the oc debug node command to have the debug pod be created in the dummy namespace. Updated the corresponding KCS as well.
$ oc debug node/worker-0.example.redhat.com --to-namespace dummy