Skip to content

Commit 589164b

Browse files
parlakisikjoestringer
authored andcommitted
Adding taint to block deployment to drained nodes
Cilium-operator pod automatically rescheduled onto drained mode. This can cause to block some kubernete upgrades. Signed-off-by: Murat Parlakisik <parlakisik@gmail.com>
1 parent 92a3319 commit 589164b

6 files changed

Lines changed: 66 additions & 15 deletions

File tree

Documentation/helm-values.rst

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Documentation/operations/upgrade.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -418,6 +418,9 @@ Helm Options
418418
``ciliumEndpointSlice.enabled`` instead to enable CiliumEndpointSlices.
419419
* ``localRedirectPolicy`` helm option has been deprecated. Set ``localRedirectPolicies.enabled`` instead.
420420
* The new ``localRedirectPolicies.addressMatcherCIDRs`` option can be used to limit what addresses are allowed in an address match of a CiliumLocalRedirectPolicy.
421+
* The default value for ``operator.tolerations`` has been narrowed to only include the following tolerations:
422+
``node-role.kubernetes.io/control-plane`` , ``node-role.kubernetes.io/master`` , ``node.kubernetes.io/not-ready`` and ``node.cilium.io/agent-not-ready``. This will
423+
block the operator running on drained nodes.
421424

422425
Agent Options
423426
~~~~~~~~~~~~~

install/kubernetes/cilium/README.md

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

install/kubernetes/cilium/values.schema.json

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4790,14 +4790,50 @@
47904790
"anyOf": [
47914791
{
47924792
"properties": {
4793+
"key": {
4794+
"type": "string"
4795+
},
4796+
"operator": {
4797+
"type": "string"
4798+
}
4799+
}
4800+
},
4801+
{
4802+
"properties": {
4803+
"key": {
4804+
"type": "string"
4805+
},
4806+
"operator": {
4807+
"type": "string"
4808+
}
4809+
}
4810+
},
4811+
{
4812+
"properties": {
4813+
"key": {
4814+
"type": "string"
4815+
},
4816+
"operator": {
4817+
"type": "string"
4818+
}
4819+
}
4820+
},
4821+
{
4822+
"properties": {
4823+
"key": {
4824+
"type": "string"
4825+
},
47934826
"operator": {
47944827
"type": "string"
47954828
}
47964829
}
47974830
}
47984831
]
47994832
},
4800-
"type": "array"
4833+
"type": [
4834+
"null",
4835+
"array"
4836+
]
48014837
},
48024838
"topologySpreadConstraints": {
48034839
"items": {},

install/kubernetes/cilium/values.yaml

Lines changed: 11 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

install/kubernetes/cilium/values.yaml.tmpl

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2905,12 +2905,18 @@ operator:
29052905
kubernetes.io/os: linux
29062906
# -- Node tolerations for cilium-operator scheduling to nodes with taints
29072907
# ref: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
2908-
tolerations:
2909-
- operator: Exists
2910-
# - key: "key"
2911-
# operator: "Equal|Exists"
2912-
# value: "value"
2913-
# effect: "NoSchedule|PreferNoSchedule|NoExecute(1.6 only)"
2908+
# @schema
2909+
# type: [null, array]
2910+
# @schema
2911+
tolerations:
2912+
- key: "node-role.kubernetes.io/control-plane"
2913+
operator: Exists
2914+
- key: "node-role.kubernetes.io/master" #deprecated
2915+
operator: Exists
2916+
- key: "node.kubernetes.io/not-ready"
2917+
operator: Exists
2918+
- key: "node.cilium.io/agent-not-ready"
2919+
operator: Exists
29142920
# -- Additional cilium-operator container arguments.
29152921
extraArgs: []
29162922
# -- Additional cilium-operator environment variables.

0 commit comments

Comments
 (0)