You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: keps/sig-node/3545-improved-multi-numa-alignment/README.md
+9-8Lines changed: 9 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -108,6 +108,7 @@ This limitation surfaces in multi-socket, as well as single-socket multi NUMA sy
108
108
109
109
### Goals
110
110
111
+
* Introduce a new kubelet flag `topology-manager-policy-options` for passing options to a TopologyManager policy to modify its behaviour.
111
112
* Enable `TopologyManager` to prefer sets of NUMA nodes with shorter NUMA distances for all TopologyManager policies
112
113
* Preserve all other properties of all policies
113
114
@@ -141,7 +142,7 @@ Right now Topology manager discovers Node layout using [CAdvisor API](https://gi
141
142
142
143
We will need to extend the `MachineInfo` struct with a `Distances` field which will describe the distance between a given NUMA node and other NUMA nodes in the system.
143
144
This is already implemented in `cadvisor` by this [patch](https://github.com/google/cadvisor/pull/3179) but it is not yet present in any of the released versions.
144
-
Before new release of `cadvisor` includes this patch we will need to replicate this logic in `kubelet`.
145
+
Until a new release of `cadvisor` includes this patch (and it gets vendored into the `kubelet`) we will need to replicate this logic in the `kubelet` code itself.
145
146
146
147
### Implementation strategy
147
148
@@ -287,19 +288,19 @@ These cases will be added in the existing e2e tests:
287
288
288
289
In 1.26 we are releasing this feature to Alpha. We propose the following management of TopologyManager policy options graduation:
289
290
291
+
-`TopologyManagerPolicyOptions` for enabling/disabling the entire feature. As this is an alpha feature, this feature gate would be disabled by default.
292
+
Explicitly enabling `TopologyManagerPolicyOptions` feature gate provides us the ability to supply `TopologyManagerPolicyOptions` or `topology-manager-policy-options` flag in Kubelet.
293
+
290
294
-`TopologyManagerPolicyAlphaOptions` is not enabled by default. Topology Manager alpha options (only one as of 1.26), are hidden by default
291
-
and only when `TopologyManagerPolicyAlphaOptions` feature gate is enabled user is able to use alpha options.
292
-
`TopologyManagerPolicyAlphaOptions` will not exist if there are no options in alpha stage.
295
+
and only when both the `TopologyManagerPolicyOptions` and the `TopologyManagerPolicyAlphaOptions` feature gates are enabled will the user be able to use alpha options.
293
296
294
297
-`TopologyManagerPolicyBetaOptions` is not enabled by default. Topology Manager beta options (none as of 1.26), are hidden by default
295
-
and only when `TopologyManagerPolicyBetaOptions` feature gate is enabled user is able to use beta options.
296
-
`TopologyManagerPolicyBetaOptions` will not exist if there are no options in beta stage (true for 1.26 release).
298
+
and only when both the `TopologyManagerPolicyOptions`and the `TopologyManagerPolicyBetaOptions` feature gates are enabled will the user be able to use beta options.
297
299
298
-
-`TopologyManagerPolicyOptions` for enabling/disabling the entire feature. As this is an alpha feature, this feature gate would be disabled by default.
299
-
Explicitly enabling `TopologyManagerPolicyOptions` feature gate provides us the ability to supply `TopologyManagerPolicyOptions` or `topology-manager-policy-options` flag in Kubelet.
300
300
301
301
When an option graduates, its visibility should be moved to be controlled by the corresponding feature-flag.
302
302
The introduction of these feature gates gives us the ability to move the option to beta and later stable without implying that all available options are stable.
303
+
This approach is similliar to graduation criteria for `CPUManagerPolicyOptions` introduced [here](https://github.com/kubernetes/enhancements/tree/master/keps/sig-node/2625-cpumanager-policies-thread-placement#graduation-criteria-of-options).
303
304
304
305
The graduation Criteria of options is described below:
305
306
@@ -342,7 +343,7 @@ No changes needed
342
343
343
344
###### Does enabling the feature change any default behavior?
344
345
345
-
-Yes, it makes the behaviour of the TopologyManager restricted and best-effort policies to choose NUMA nodes based on distance.
346
+
-No, it makes the behaviour of the TopologyManager restricted and best-effort policies to choose NUMA nodes based on distance only if proper `kubelet` flag is provided.
346
347
347
348
###### Can the feature be disabled once it has been enabled (i.e. can we roll back the enablement)?
0 commit comments