@@ -65,7 +65,10 @@ different Kubernetes components.
65
65
| ` ControllerManagerLeaderMigration ` | ` false ` | Alpha | 1.21 | |
66
66
| ` CPUManager ` | ` false ` | Alpha | 1.8 | 1.9 |
67
67
| ` CPUManager ` | ` true ` | Beta | 1.10 | |
68
- | ` CPUManagerPolicyOptions ` | ` false ` | Alpha | 1.22 | |
68
+ | ` CPUManagerPolicyAlphaOptions ` | ` false ` | Alpha | 1.23 | |
69
+ | ` CPUManagerPolicyBetaOptions ` | ` true ` | Beta | 1.23 | |
70
+ | ` CPUManagerPolicyOptions ` | ` false ` | Alpha | 1.22 | 1.22 |
71
+ | ` CPUManagerPolicyOptions ` | ` true ` | Beta | 1.23 | |
69
72
| ` CSIInlineVolume ` | ` false ` | Alpha | 1.15 | 1.15 |
70
73
| ` CSIInlineVolume ` | ` true ` | Beta | 1.16 | - |
71
74
| ` CSIMigration ` | ` false ` | Alpha | 1.14 | 1.16 |
@@ -90,8 +93,6 @@ different Kubernetes components.
90
93
| ` CSIStorageCapacity ` | ` true ` | Beta | 1.21 | |
91
94
| ` CSIVolumeHealth ` | ` false ` | Alpha | 1.21 | |
92
95
| ` CSRDuration ` | ` true ` | Beta | 1.22 | |
93
- | ` ConfigurableFSGroupPolicy ` | ` false ` | Alpha | 1.18 | 1.19 |
94
- | ` ConfigurableFSGroupPolicy ` | ` true ` | Beta | 1.20 | |
95
96
| ` ControllerManagerLeaderMigration ` | ` false ` | Alpha | 1.21 | 1.21 |
96
97
| ` ControllerManagerLeaderMigration ` | ` true ` | Beta | 1.22 | |
97
98
| ` CustomCPUCFSQuotaPeriod ` | ` false ` | Alpha | 1.12 | |
@@ -100,12 +101,14 @@ different Kubernetes components.
100
101
| ` DaemonSetUpdateSurge ` | ` true ` | Beta | 1.22 | |
101
102
| ` DefaultPodTopologySpread ` | ` false ` | Alpha | 1.19 | 1.19 |
102
103
| ` DefaultPodTopologySpread ` | ` true ` | Beta | 1.20 | |
103
- | ` DelegateFSGroupToCSIDriver ` | ` false ` | Alpha | 1.22 | |
104
+ | ` DelegateFSGroupToCSIDriver ` | ` false ` | Alpha | 1.22 | 1.22 |
105
+ | ` DelegateFSGroupToCSIDriver ` | ` true ` | Beta | 1.23 | |
104
106
| ` DevicePlugins ` | ` false ` | Alpha | 1.8 | 1.9 |
105
107
| ` DevicePlugins ` | ` true ` | Beta | 1.10 | |
106
108
| ` DisableAcceleratorUsageMetrics ` | ` false ` | Alpha | 1.19 | 1.19 |
107
109
| ` DisableAcceleratorUsageMetrics ` | ` true ` | Beta | 1.20 | |
108
110
| ` DisableCloudProviders ` | ` false ` | Alpha | 1.22 | |
111
+ | ` DisableKubeletCloudCredentialProviders ` | ` false ` | Alpha | 1.23 | |
109
112
| ` DownwardAPIHugePages ` | ` false ` | Alpha | 1.20 | 1.20 |
110
113
| ` DownwardAPIHugePages ` | ` false ` | Beta | 1.21 | |
111
114
| ` EfficientWatchResumption ` | ` false ` | Alpha | 1.20 | 1.20 |
@@ -124,7 +127,9 @@ different Kubernetes components.
124
127
| ` ExperimentalHostUserNamespaceDefaulting ` | ` false ` | Beta | 1.5 | |
125
128
| ` GracefulNodeShutdown ` | ` false ` | Alpha | 1.20 | 1.20 |
126
129
| ` GracefulNodeShutdown ` | ` true ` | Beta | 1.21 | |
130
+ | ` GracefulNodeShutdownBasedOnPodPriority ` | ` false ` | Alpha | 1.23 | |
127
131
| ` GRPCContainerProbe ` | ` false ` | Alpha | 1.23 | |
132
+ | ` HonorPVReclaimPolicy ` | ` false ` | Alpha | 1.23 | |
128
133
| ` HPAContainerMetrics ` | ` false ` | Alpha | 1.20 | |
129
134
| ` HPAScaleToZero ` | ` false ` | Alpha | 1.16 | |
130
135
| ` IdentifyPodOS ` | ` false ` | Alpha | 1.23 | |
@@ -135,14 +140,19 @@ different Kubernetes components.
135
140
| ` InTreePluginAzureFileUnregister ` | ` false ` | Alpha | 1.21 | |
136
141
| ` InTreePluginGCEUnregister ` | ` false ` | Alpha | 1.21 | |
137
142
| ` InTreePluginOpenStackUnregister ` | ` false ` | Alpha | 1.21 | |
143
+ | ` InTreePluginPortworxUnregister ` | ` false ` | Alpha | 1.23 | |
144
+ | ` InTreePluginRBDUnregister ` | ` false ` | Alpha | 1.23 | |
138
145
| ` InTreePluginvSphereUnregister ` | ` false ` | Alpha | 1.21 | |
139
146
| ` JobMutableNodeSchedulingDirectives ` | ` true ` | Beta | 1.23 | |
140
147
| ` JobReadyPods ` | ` false ` | Alpha | 1.23 | |
141
148
| ` JobTrackingWithFinalizers ` | ` false ` | Alpha | 1.22 | 1.22 |
142
149
| ` JobTrackingWithFinalizers ` | ` true ` | Beta | 1.23 | |
143
150
| ` KubeletCredentialProviders ` | ` false ` | Alpha | 1.20 | |
144
151
| ` KubeletInUserNamespace ` | ` false ` | Alpha | 1.22 | |
145
- | ` KubeletPodResourcesGetAllocatable ` | ` false ` | Alpha | 1.21 | |
152
+ | ` KubeletPodResources ` | ` false ` | Alpha | 1.13 | 1.14 |
153
+ | ` KubeletPodResources ` | ` true ` | Beta | 1.15 | |
154
+ | ` KubeletPodResourcesGetAllocatable ` | ` false ` | Alpha | 1.21 | 1.22 |
155
+ | ` KubeletPodResourcesGetAllocatable ` | ` false ` | Beta | 1.23 | |
146
156
| ` LocalStorageCapacityIsolation ` | ` false ` | Alpha | 1.7 | 1.9 |
147
157
| ` LocalStorageCapacityIsolation ` | ` true ` | Beta | 1.10 | |
148
158
| ` LocalStorageCapacityIsolationFSQuotaMonitoring ` | ` false ` | Alpha | 1.15 | |
@@ -157,10 +167,13 @@ different Kubernetes components.
157
167
| ` NodeSwap ` | ` false ` | Alpha | 1.22 | |
158
168
| ` NonPreemptingPriority ` | ` false ` | Alpha | 1.15 | 1.18 |
159
169
| ` NonPreemptingPriority ` | ` true ` | Beta | 1.19 | |
160
- | ` PodDeletionCost ` | ` false ` | Alpha | 1.21 | 1.21 |
161
- | ` PodDeletionCost ` | ` true ` | Beta | 1.22 | |
170
+ | ` OpenAPIEnum ` | ` false ` | Alpha | 1.23 | |
171
+ | ` OpenAPIv3 ` | ` false ` | Alpha | 1.23 | |
172
+ | ` PodAndContainerStatsFromCRI ` | ` false ` | Alpha | 1.23 | |
162
173
| ` PodAffinityNamespaceSelector ` | ` false ` | Alpha | 1.21 | 1.21 |
163
174
| ` PodAffinityNamespaceSelector ` | ` true ` | Beta | 1.22 | |
175
+ | ` PodDeletionCost ` | ` false ` | Alpha | 1.21 | 1.21 |
176
+ | ` PodDeletionCost ` | ` true ` | Beta | 1.22 | |
164
177
| ` PodOverhead ` | ` false ` | Alpha | 1.16 | 1.17 |
165
178
| ` PodOverhead ` | ` true ` | Beta | 1.18 | |
166
179
| ` PodSecurity ` | ` false ` | Alpha | 1.22 | 1.22 |
@@ -189,6 +202,7 @@ different Kubernetes components.
189
202
| ` ServiceLoadBalancerClass ` | ` true ` | Beta | 1.22 | |
190
203
| ` SizeMemoryBackedVolumes ` | ` false ` | Alpha | 1.20 | 1.21 |
191
204
| ` SizeMemoryBackedVolumes ` | ` true ` | Beta | 1.22 | |
205
+ | ` StatefulSetAutoDeletePVC ` | ` false ` | Alpha | 1.22 | |
192
206
| ` StatefulSetMinReadySeconds ` | ` false ` | Alpha | 1.22 | 1.22 |
193
207
| ` StatefulSetMinReadySeconds ` | ` true ` | Beta | 1.23 | |
194
208
| ` StorageVersionAPI ` | ` false ` | Alpha | 1.20 | |
@@ -197,13 +211,14 @@ different Kubernetes components.
197
211
| ` SuspendJob ` | ` false ` | Alpha | 1.21 | 1.21 |
198
212
| ` SuspendJob ` | ` true ` | Beta | 1.22 | |
199
213
| ` TopologyAwareHints ` | ` false ` | Alpha | 1.21 | 1.22 |
200
- | ` TopologyAwareHints ` | ` true ` | Beta | 1.23 | |
214
+ | ` TopologyAwareHints ` | ` false ` | Beta | 1.23 | |
201
215
| ` TopologyManager ` | ` false ` | Alpha | 1.16 | 1.17 |
202
216
| ` TopologyManager ` | ` true ` | Beta | 1.18 | |
203
217
| ` VolumeCapacityPriority ` | ` false ` | Alpha | 1.21 | - |
204
218
| ` WinDSR ` | ` false ` | Alpha | 1.14 | |
205
219
| ` WinOverlay ` | ` false ` | Alpha | 1.14 | 1.19 |
206
220
| ` WinOverlay ` | ` true ` | Beta | 1.20 | |
221
+ | ` WindowsHostProcessContainers ` | ` false ` | Alpha | 1.22 | 1.22 |
207
222
| ` WindowsHostProcessContainers ` | ` false ` | Beta | 1.23 | |
208
223
{{< /table >}}
209
224
@@ -233,6 +248,8 @@ different Kubernetes components.
233
248
| ` BoundServiceAccountTokenVolume ` | ` false ` | Alpha | 1.13 | 1.20 |
234
249
| ` BoundServiceAccountTokenVolume ` | ` true ` | Beta | 1.21 | 1.21 |
235
250
| ` BoundServiceAccountTokenVolume ` | ` true ` | GA | 1.22 | - |
251
+ | ` ConfigurableFSGroupPolicy ` | ` false ` | Alpha | 1.18 | 1.19 |
252
+ | ` ConfigurableFSGroupPolicy ` | ` true ` | Beta | 1.20 | 1.22 |
236
253
| ` ConfigurableFSGroupPolicy ` | ` true ` | GA | 1.23 | |
237
254
| ` CRIContainerLogRotation ` | ` false ` | Alpha | 1.10 | 1.10 |
238
255
| ` CRIContainerLogRotation ` | ` true ` | Beta | 1.11 | 1.20 |
@@ -312,12 +329,12 @@ different Kubernetes components.
312
329
| ` EndpointSliceProxying ` | ` false ` | Alpha | 1.18 | 1.18 |
313
330
| ` EndpointSliceProxying ` | ` true ` | Beta | 1.19 | 1.21 |
314
331
| ` EndpointSliceProxying ` | ` true ` | GA | 1.22 | - |
315
- | ` ExperimentalCriticalPodAnnotation ` | ` false ` | Alpha | 1.5 | 1.12 |
316
- | ` ExperimentalCriticalPodAnnotation ` | ` false ` | Deprecated | 1.13 | - |
317
332
| ` EvenPodsSpread ` | ` false ` | Alpha | 1.16 | 1.17 |
318
333
| ` EvenPodsSpread ` | ` true ` | Beta | 1.18 | 1.18 |
319
334
| ` EvenPodsSpread ` | ` true ` | GA | 1.19 | - |
320
335
| ` ExecProbeTimeout ` | ` true ` | GA | 1.20 | - |
336
+ | ` ExperimentalCriticalPodAnnotation ` | ` false ` | Alpha | 1.5 | 1.12 |
337
+ | ` ExperimentalCriticalPodAnnotation ` | ` false ` | Deprecated | 1.13 | - |
321
338
| ` ExternalPolicyForExternalIP ` | ` true ` | GA | 1.18 | - |
322
339
| ` GCERegionalPersistentDisk ` | ` true ` | Beta | 1.10 | 1.12 |
323
340
| ` GCERegionalPersistentDisk ` | ` true ` | GA | 1.13 | - |
@@ -330,9 +347,6 @@ different Kubernetes components.
330
347
| ` HugePages ` | ` false ` | Alpha | 1.8 | 1.9 |
331
348
| ` HugePages ` | ` true ` | Beta| 1.10 | 1.13 |
332
349
| ` HugePages ` | ` true ` | GA | 1.14 | - |
333
- | ` HugePageStorageMediumSize ` | ` false ` | Alpha | 1.18 | 1.18 |
334
- | ` HugePageStorageMediumSize ` | ` true ` | Beta | 1.19 | 1.21 |
335
- | ` HugePageStorageMediumSize ` | ` true ` | GA | 1.22 | - |
336
350
| ` HyperVContainer ` | ` false ` | Alpha | 1.10 | 1.19 |
337
351
| ` HyperVContainer ` | ` false ` | Deprecated | 1.20 | - |
338
352
| ` ImmutableEphemeralVolumes ` | ` false ` | Alpha | 1.18 | 1.18 |
@@ -351,9 +365,6 @@ different Kubernetes components.
351
365
| ` KubeletPluginsWatcher ` | ` false ` | Alpha | 1.11 | 1.11 |
352
366
| ` KubeletPluginsWatcher ` | ` true ` | Beta | 1.12 | 1.12 |
353
367
| ` KubeletPluginsWatcher ` | ` true ` | GA | 1.13 | - |
354
- | ` KubeletPodResources ` | ` false ` | Alpha | 1.13 | 1.14 |
355
- | ` KubeletPodResources ` | ` true ` | Beta | 1.15 | |
356
- | ` KubeletPodResources ` | ` true ` | GA | 1.20 | |
357
368
| ` LegacyNodeRoleBehavior ` | ` false ` | Alpha | 1.16 | 1.18 |
358
369
| ` LegacyNodeRoleBehavior ` | ` true ` | Beta | 1.19 | 1.20 |
359
370
| ` LegacyNodeRoleBehavior ` | ` false ` | GA | 1.21 | - |
@@ -375,7 +386,6 @@ different Kubernetes components.
375
386
| ` PersistentLocalVolumes ` | ` false ` | Alpha | 1.7 | 1.9 |
376
387
| ` PersistentLocalVolumes ` | ` true ` | Beta | 1.10 | 1.13 |
377
388
| ` PersistentLocalVolumes ` | ` true ` | GA | 1.14 | - |
378
- | ` PodAndContainerStatsFromCRI ` | ` false ` | Alpha | 1.23 | |
379
389
| ` PodDisruptionBudget ` | ` false ` | Alpha | 1.3 | 1.4 |
380
390
| ` PodDisruptionBudget ` | ` true ` | Beta | 1.5 | 1.20 |
381
391
| ` PodDisruptionBudget ` | ` true ` | GA | 1.21 | - |
@@ -497,7 +507,6 @@ different Kubernetes components.
497
507
| ` WindowsGMSA ` | ` false ` | Alpha | 1.14 | 1.15 |
498
508
| ` WindowsGMSA ` | ` true ` | Beta | 1.16 | 1.17 |
499
509
| ` WindowsGMSA ` | ` true ` | GA | 1.18 | - |
500
- | ` WindowsHostProcessContainers ` | ` false ` | Alpha | 1.22 |
501
510
| ` WindowsRunAsUserName ` | ` false ` | Alpha | 1.16 | 1.16 |
502
511
| ` WindowsRunAsUserName ` | ` true ` | Beta | 1.17 | 1.17 |
503
512
| ` WindowsRunAsUserName ` | ` true ` | GA | 1.18 | - |
@@ -586,6 +595,12 @@ Each feature gate is designed for enabling/disabling a specific feature:
586
595
(e.g. the cloud-controller-manager) in an HA cluster without downtime.
587
596
- ` CPUManager ` : Enable container level CPU affinity support, see
588
597
[ CPU Management Policies] ( /docs/tasks/administer-cluster/cpu-management-policies/ ) .
598
+ - ` CPUManagerPolicyAlphaOptions ` : This allows fine-tuning of CPUManager policies, experimental, Alpha-quality options
599
+ This feature gate guards * a group* of CPUManager options whose quality level is alpha.
600
+ This feature gate will never graduate to beta or stable.
601
+ - ` CPUManagerPolicyBetaOptions ` : This allows fine-tuning of CPUManager policies, experimental, Beta-quality options
602
+ This feature gate guards * a group* of CPUManager options whose quality level is beta.
603
+ This feature gate will never graduate to stable.
589
604
- ` CPUManagerPolicyOptions ` : Allow fine-tuning of CPUManager policies.
590
605
- ` CRIContainerLogRotation ` : Enable container log rotation for CRI container runtime. The default max size of a log file is 10MB and the
591
606
default max number of log files allowed for a container is 5. These values can be configured in the kubelet config.
@@ -728,6 +743,8 @@ Each feature gate is designed for enabling/disabling a specific feature:
728
743
- ` DisableCloudProviders ` : Disables any functionality in ` kube-apiserver ` ,
729
744
` kube-controller-manager ` and ` kubelet ` related to the ` --cloud-provider `
730
745
component flag.
746
+ - ` DisableKubeletCloudCredentialProviders ` : Disable the in-tree functionality in kubelet
747
+ to authenticate to a cloud provider container registry for image pull credentials.
731
748
- ` DownwardAPIHugePages ` : Enables usage of hugepages in
732
749
[ downward API] ( /docs/tasks/inject-data-application/downward-api-volume-expose-pod-information ) .
733
750
- ` DryRun ` : Enable server-side [ dry run] ( /docs/reference/using-api/api-concepts/#dry-run ) requests
@@ -792,7 +809,10 @@ Each feature gate is designed for enabling/disabling a specific feature:
792
809
and gracefully terminate pods running on the node. See
793
810
[ Graceful Node Shutdown] ( /docs/concepts/architecture/nodes/#graceful-node-shutdown )
794
811
for more details.
812
+ = ` GracefulNodeShutdownBasedOnPodPriority ` : Enables the kubelet to check Pod priorities
813
+ when shutting down a node gracefully.
795
814
- ` GRPCContainerProbe ` : Enables the gRPC probe method for {Liveness,Readiness,Startup}Probe. See [ Configure Liveness, Readiness and Startup Probes] ( /docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-grpc-liveness-probe ) .
815
+ - ` HonorPVReclaimPolicy ` : Honor persistent volume reclaim policy when it is ` Delete ` irrespective of PV-PVC deletion ordering.
796
816
- ` HPAContainerMetrics ` : Enable the ` HorizontalPodAutoscaler ` to scale based on
797
817
metrics from individual containers in target pods.
798
818
- ` HPAScaleToZero ` : Enables setting ` minReplicas ` to 0 for ` HorizontalPodAutoscaler `
@@ -818,6 +838,10 @@ Each feature gate is designed for enabling/disabling a specific feature:
818
838
and volume controllers.
819
839
- ` InTreePluginOpenStackUnregister ` : Stops registering the OpenStack cinder in-tree plugin in kubelet
820
840
and volume controllers.
841
+ - ` InTreePluginPortworxUnregister ` : Stops registering the Portworx in-tree plugin in kubelet
842
+ and volume controllers.
843
+ - ` InTreePluginRBDUnregister ` : Stops registering the RBD in-tree plugin in kubelet
844
+ and volume controllers.
821
845
- ` InTreePluginvSphereUnregister ` : Stops registering the vSphere in-tree plugin in kubelet
822
846
and volume controllers.
823
847
- ` IndexedJob ` : Allows the [ Job] ( /docs/concepts/workloads/controllers/job/ )
@@ -889,6 +913,9 @@ Each feature gate is designed for enabling/disabling a specific feature:
889
913
Must be used with ` KubeletConfiguration.failSwapOn ` set to false.
890
914
For more details, please see [ swap memory] ( /docs/concepts/architecture/nodes/#swap-memory )
891
915
- ` NonPreemptingPriority ` : Enable ` preemptionPolicy ` field for PriorityClass and Pod.
916
+ - ` OpenAPIEnum ` : Enables populating "enum" fields of OpenAPI schemas in the
917
+ spec returned from the API server.
918
+ - ` OpenAPIv3 ` : Enables the API server to publish OpenAPI v3.
892
919
- ` PVCProtection ` : Enable the prevention of a PersistentVolumeClaim (PVC) from
893
920
being deleted when it is still used by any Pod.
894
921
- ` PodDeletionCost ` : Enable the [ Pod Deletion Cost] ( /docs/concepts/workloads/controllers/replicaset/#pod-deletion-cost )
0 commit comments