-
Bug
-
Resolution: Done-Errata
-
Normal
-
4.9
-
+
-
Moderate
-
None
-
2
-
Sprint 236, Sprint 237, Sprint 238, Sprint 239
-
4
-
Rejected
-
Unspecified
-
-
Bug Fix
-
Done
Description of problem:
Ingress-canary Daemon Set does not tolerate Infra taint "NoExecute"
Version-Release number of selected component (if applicable):
OCPv4.9
How reproducible:
Always
Steps to Reproduce:
1.Label and Taint Node
$ oc describe node worker-0.cluster49.lab.pnq2.cee.redhat.com | grep infra
Roles: custom,infra,test
node-role.kubernetes.io/infra= <----
Taints: node-role.kubernetes.io/infra=reserved:NoExecute <----
node-role.kubernetes.io/infra=reserved:NoSchedule <----
2.Edit ingress-canary ds and add NoExecute toleration
$ oc get ds -o yaml | grep -i tole -A6
tolerations:
- effect: NoSchedule
key: node-role.kubernetes.io/infra
value: reserved - effect: NoExecute <----
key: node-role.kubernetes.io/infra <----
value: reserved <----
3. The Daemon Set configuration gets overwritten after some time, probably by the managing operator, and the pods are terminated on the infra nodes.
Actual results:
Infra taint toleration NoExecute gets overwritten :
$ oc get ds -o yaml | grep -i tole -A6
tolerations:
- effect: NoSchedule
key: node-role.kubernetes.io/infra
operator: Exists
Expected results:
Ingress canary Daemon Set should be able to tolerate the NoExecute taint toleration.
Additional info: Same taint as the product documentation are used (node-role.kubernetes.io/infra)