Ця сторінка містить огляд різних функціональних можливостей, які адміністратор може вказати для різних компонентів Kubernetes.
Дивіться функціональні стадії для пояснення стадій функції.
Функціональні можливості — це набір пар ключ=значення, які описують функції Kubernetes. Ви можете увімкнути або вимкнути ці функції, використовуючи прапорець командного рядка --feature-gates на кожному компоненті Kubernetes.
Щоб увімкнути або вимкнути функціональну можливість для певного компонента Kubernetes, використовуйте прапорець --feature-gates.
Цей прапорець приймає список пар ключ=значення, розділених комами, де кожен ключ є назвою функціональної можливості, а кожне значення є або true (увімкнути), або false (вимкнути).
Приклад використання:
kube-apiserver --feature-gates=FeatureName1=true,FeatureName2=false
kubelet --feature-gates=GracefulNodeShutdown=true
Кожен компонент Kubernetes підтримує тільки ті функціональні можливості, які відповідають його функціям. Використовуйте <component> -h, щоб отримати список доступних функціональних можливостей для конкретного компонента.
Детальні інструкції щодо налаштування функціональних можливостей у вашому кластері див. у розділі Налаштування функціональних можливостей.
Наступні таблиці є підсумком функціональних можливостей, які ви можете встановити на різних компонентах Kubernetes.
| Властивість | Стандартно | Стадія | Починаючи з | До |
|---|---|---|---|---|
AllowParsingUserUIDFromCertAuth |
false |
Alpha | 1.33 | 1.33 |
AllowParsingUserUIDFromCertAuth |
true |
Beta | 1.34 | – |
AllowUnsafeMalformedObjectDeletion |
false |
Alpha | 1.32 | – |
APIResponseCompression |
false |
Alpha | 1.7 | 1.15 |
APIResponseCompression |
true |
Beta | 1.16 | – |
APIServerIdentity |
false |
Alpha | 1.20 | 1.25 |
APIServerIdentity |
true |
Beta | 1.26 | – |
APIServingWithRoutine |
false |
Alpha | 1.30 | – |
AuthorizePodWebsocketUpgradeCreatePermission |
true |
Beta | 1.35 | – |
CBORServingAndStorage |
false |
Alpha | 1.32 | – |
ClearingNominatedNodeNameAfterBinding |
false |
Alpha | 1.34 | 1.34 |
ClearingNominatedNodeNameAfterBinding |
true |
Beta | 1.35 | – |
CloudControllerManagerWatchBasedRoutesReconciliation |
false |
Alpha | 1.35 | – |
CloudControllerManagerWebhook |
false |
Alpha | 1.27 | – |
ClusterTrustBundle |
false |
Alpha | 1.27 | 1.32 |
ClusterTrustBundle |
false |
Beta | 1.33 | – |
ClusterTrustBundleProjection |
false |
Alpha | 1.29 | 1.32 |
ClusterTrustBundleProjection |
false |
Beta | 1.33 | – |
ComponentFlagz |
false |
Alpha | 1.32 | – |
ComponentStatusz |
false |
Alpha | 1.32 | – |
ConcurrentWatchObjectDecode |
false |
Beta | 1.31 | – |
ConstrainedImpersonation |
false |
Alpha | 1.35 | – |
ContainerCheckpoint |
false |
Alpha | 1.25 | 1.29 |
ContainerCheckpoint |
true |
Beta | 1.30 | – |
ContainerRestartRules |
false |
Alpha | 1.34 | 1.34 |
ContainerRestartRules |
true |
Beta | 1.35 | – |
ContainerStopSignals |
false |
Alpha | 1.33 | – |
ContextualLogging |
false |
Alpha | 1.24 | – |
ContextualLogging |
true |
Beta | 1.30 | – |
CoordinatedLeaderElection |
false |
Alpha | 1.31 | 1.32 |
CoordinatedLeaderElection |
false |
Beta | 1.33 | – |
CPUManagerPolicyAlphaOptions |
false |
Alpha | 1.23 | – |
CPUManagerPolicyBetaOptions |
true |
Beta | 1.23 | – |
CRDObservedGenerationTracking |
false |
Beta | 1.35 | – |
CrossNamespaceVolumeDataSource |
false |
Alpha | 1.26 | – |
CSIServiceAccountTokenSecrets |
true |
Beta | 1.35 | – |
CSIVolumeHealth |
false |
Alpha | 1.21 | – |
CustomCPUCFSQuotaPeriod |
false |
Alpha | 1.12 | – |
DeclarativeValidation |
true |
Beta | 1.33 | – |
DeclarativeValidationTakeover |
false |
Beta | 1.33 | – |
DeploymentReplicaSetTerminatingReplicas |
false |
Alpha | 1.33 | 1.34 |
DeploymentReplicaSetTerminatingReplicas |
true |
Beta | 1.35 | – |
DetectCacheInconsistency |
true |
Beta | 1.34 | – |
DisableCPUQuotaWithExclusiveCPUs |
true |
Beta | 1.33 | – |
DRAAdminAccess |
false |
Alpha | 1.32 | 1.33 |
DRAAdminAccess |
true |
Beta | 1.34 | – |
DRAConsumableCapacity |
false |
Alpha | 1.34 | – |
DRADeviceBindingConditions |
false |
Alpha | 1.34 | – |
DRADeviceTaintRules |
false |
Alpha | 1.35 | – |
DRADeviceTaints |
false |
Alpha | 1.33 | – |
DRAExtendedResource |
false |
Alpha | 1.34 | – |
DRAPartitionableDevices |
false |
Alpha | 1.33 | – |
DRAPrioritizedList |
false |
Alpha | 1.33 | 1.33 |
DRAPrioritizedList |
true |
Beta | 1.34 | – |
DRAResourceClaimDeviceStatus |
false |
Alpha | 1.32 | 1.32 |
DRAResourceClaimDeviceStatus |
true |
Beta | 1.33 | – |
DRASchedulerFilterTimeout |
false |
Alpha | 1.34 | – |
EnvFiles |
false |
Alpha | 1.34 | 1.34 |
EnvFiles |
true |
Beta | 1.35 | – |
EventedPLEG |
false |
Alpha | 1.26 | – |
ExternalServiceAccountTokenSigner |
false |
Alpha | 1.32 | 1.33 |
ExternalServiceAccountTokenSigner |
true |
Beta | 1.34 | – |
GangScheduling |
false |
Alpha | 1.35 | – |
GenericWorkload |
false |
Alpha | 1.35 | – |
GracefulNodeShutdown |
false |
Alpha | 1.20 | 1.20 |
GracefulNodeShutdown |
true |
Beta | 1.21 | – |
GracefulNodeShutdownBasedOnPodPriority |
false |
Alpha | 1.23 | 1.23 |
GracefulNodeShutdownBasedOnPodPriority |
true |
Beta | 1.24 | – |
HostnameOverride |
false |
Alpha | 1.34 | 1.34 |
HostnameOverride |
true |
Beta | 1.35 | – |
HPAConfigurableTolerance |
false |
Alpha | 1.33 | 1.34 |
HPAConfigurableTolerance |
true |
Beta | 1.35 | – |
HPAScaleToZero |
false |
Alpha | 1.16 | – |
ImageVolume |
false |
Alpha | 1.31 | 1.32 |
ImageVolume |
false |
Beta | 1.33 | 1.34 |
ImageVolume |
true |
Beta | 1.35 | – |
InOrderInformers |
true |
Alpha | 1.33 | 1.33 |
InOrderInformers |
true |
Beta | 1.34 | – |
InPlacePodLevelResourcesVerticalScaling |
false |
Alpha | 1.35 | – |
InPlacePodVerticalScalingExclusiveCPUs |
false |
Alpha | 1.32 | – |
InPlacePodVerticalScalingExclusiveMemory |
false |
Alpha | 1.34 | – |
InTreePluginPortworxUnregister |
false |
Alpha | 1.23 | – |
KubeletCrashLoopBackOffMax |
false |
Alpha | 1.32 | 1.34 |
KubeletCrashLoopBackOffMax |
true |
Beta | 1.35 | – |
KubeletEnsureSecretPulledImages |
false |
Alpha | 1.33 | 1.34 |
KubeletEnsureSecretPulledImages |
true |
Beta | 1.35 | – |
KubeletFineGrainedAuthz |
false |
Alpha | 1.32 | 1.32 |
KubeletFineGrainedAuthz |
true |
Beta | 1.33 | – |
KubeletInUserNamespace |
false |
Alpha | 1.22 | – |
KubeletPodResourcesDynamicResources |
false |
Alpha | 1.27 | – |
KubeletPodResourcesDynamicResources |
false |
Alpha | 1.27 | 1.33 |
KubeletPodResourcesDynamicResources |
true |
Beta | 1.34 | – |
KubeletPodResourcesGet |
false |
Alpha | 1.27 | 1.33 |
KubeletPodResourcesGet |
true |
Beta | 1.34 | – |
KubeletPSI |
false |
Alpha | 1.33 | 1.33 |
KubeletPSI |
true |
Beta | 1.34 | – |
KubeletSeparateDiskGC |
false |
Alpha | 1.29 | 1.30 |
KubeletSeparateDiskGC |
true |
Beta | 1.31 | – |
KubeletServiceAccountTokenForCredentialProviders |
false |
Alpha | 1.33 | 1.33 |
KubeletServiceAccountTokenForCredentialProviders |
true |
Beta | 1.34 | – |
ListFromCacheSnapshot |
false |
Alpha | 1.33 | 1.33 |
ListFromCacheSnapshot |
true |
Beta | 1.34 | – |
LocalStorageCapacityIsolationFSQuotaMonitoring |
false |
Alpha | 1.15 | 1.30 |
LocalStorageCapacityIsolationFSQuotaMonitoring |
false |
Beta | 1.31 | – |
LoggingAlphaOptions |
false |
Alpha | 1.24 | – |
LoggingBetaOptions |
true |
Beta | 1.24 | – |
MatchLabelKeysInPodTopologySpread |
false |
Alpha | 1.25 | 1.26 |
MatchLabelKeysInPodTopologySpread |
true |
Beta | 1.27 | – |
MatchLabelKeysInPodTopologySpreadSelectorMerge |
true |
Beta | 1.34 | – |
MaxUnavailableStatefulSet |
false |
Alpha | 1.24 | 1.34 |
MaxUnavailableStatefulSet |
true |
Beta | 1.35 | – |
MemoryQoS |
false |
Alpha | 1.22 | – |
MutableCSINodeAllocatableCount |
false |
Alpha | 1.33 | 1.33 |
MutableCSINodeAllocatableCount |
false |
Beta | 1.34 | 1.34 |
MutableCSINodeAllocatableCount |
true |
Beta | 1.35 | – |
MutablePodResourcesForSuspendedJobs |
false |
Alpha | 1.35 | – |
MutablePVNodeAffinity |
false |
Alpha | 1.35 | – |
MutableSchedulingDirectivesForSuspendedJobs |
false |
Alpha | 1.35 | – |
MutatingAdmissionPolicy |
false |
Alpha | 1.30 | 1.33 |
MutatingAdmissionPolicy |
false |
Beta | 1.34 | – |
NodeDeclaredFeatures |
false |
Alpha | 1.35 | – |
NodeLogQuery |
false |
Alpha | 1.27 | 1.29 |
NodeLogQuery |
false |
Beta | 1.30 | – |
NominatedNodeNameForExpectation |
false |
Alpha | 1.34 | 1.34 |
NominatedNodeNameForExpectation |
true |
Beta | 1.35 | – |
OpenAPIEnums |
false |
Alpha | 1.23 | 1.23 |
OpenAPIEnums |
true |
Beta | 1.24 | – |
OpportunisticBatching |
true |
Beta | 1.35 | – |
PodAndContainerStatsFromCRI |
false |
Alpha | 1.23 | – |
PodCertificateRequest |
false |
Alpha | 1.34 | 1.34 |
PodCertificateRequest |
false |
Beta | 1.35 | – |
PodDeletionCost |
false |
Alpha | 1.21 | 1.21 |
PodDeletionCost |
true |
Beta | 1.22 | – |
PodLevelResources |
false |
Alpha | 1.32 | 1.33 |
PodLevelResources |
true |
Beta | 1.34 | – |
PodLogsQuerySplitStreams |
false |
Alpha | 1.32 | – |
PodReadyToStartContainersCondition |
false |
Alpha | 1.28 | 1.28 |
PodReadyToStartContainersCondition |
true |
Beta | 1.29 | – |
PodTopologyLabelsAdmission |
false |
Alpha | 1.33 | 1.34 |
PodTopologyLabelsAdmission |
true |
Beta | 1.35 | – |
PortForwardWebsockets |
false |
Alpha | 1.30 | 1.30 |
PortForwardWebsockets |
true |
Beta | 1.31 | – |
PreventStaticPodAPIReferences |
true |
Beta | 1.34 | – |
ProcMountType |
false |
Alpha | 1.12 | 1.30 |
ProcMountType |
false |
Beta | 1.31 | 1.32 |
ProcMountType |
true |
Beta | 1.33 | – |
QOSReserved |
false |
Alpha | 1.11 | – |
ReduceDefaultCrashLoopBackOffDecay |
false |
Alpha | 1.33 | – |
RelaxedServiceNameValidation |
false |
Alpha | 1.34 | – |
ReloadKubeletServerCertificateFile |
true |
Beta | 1.31 | – |
RemoteRequestHeaderUID |
false |
Alpha | 1.32 | – |
ResourceHealthStatus |
false |
Alpha | 1.31 | – |
RestartAllContainersOnContainerExits |
false |
Alpha | 1.35 | – |
RetryGenerateName |
false |
Alpha | 1.30 | – |
RotateKubeletServerCertificate |
false |
Alpha | 1.7 | 1.11 |
RotateKubeletServerCertificate |
true |
Beta | 1.12 | – |
RuntimeClassInImageCriApi |
false |
Alpha | 1.29 | – |
SchedulerAsyncAPICalls |
true |
Beta | 1.34 | – |
SchedulerAsyncPreemption |
false |
Alpha | 1.32 | 1.32 |
SchedulerAsyncPreemption |
true |
Beta | 1.33 | – |
SchedulerPopFromBackoffQ |
true |
Beta | 1.33 | – |
SELinuxChangePolicy |
false |
Alpha | 1.32 | 1.32 |
SELinuxChangePolicy |
true |
Beta | 1.33 | – |
SELinuxMount |
false |
Alpha | 1.30 | 1.32 |
SELinuxMount |
false |
Beta | 1.33 | – |
SELinuxMountReadWriteOncePod |
false |
Alpha | 1.25 | 1.26 |
SELinuxMountReadWriteOncePod |
false |
Beta | 1.27 | 1.27 |
SELinuxMountReadWriteOncePod |
true |
Beta | 1.28 | – |
ServiceAccountNodeAudienceRestriction |
false |
Beta | 1.32 | 1.32 |
ServiceAccountNodeAudienceRestriction |
true |
Beta | 1.33 | – |
SizeBasedListCostEstimate |
true |
Beta | 1.34 | – |
StorageCapacityScoring |
false |
Alpha | 1.33 | – |
StorageVersionAPI |
false |
Alpha | 1.20 | – |
StorageVersionHash |
false |
Alpha | 1.14 | 1.14 |
StorageVersionHash |
true |
Beta | 1.15 | – |
StorageVersionMigrator |
false |
Alpha | 1.30 | 1.34 |
StorageVersionMigrator |
false |
Beta | 1.35 | – |
StrictIPCIDRValidation |
false |
Alpha | 1.33 | – |
StructuredAuthenticationConfigurationEgressSelector |
true |
Beta | 1.34 | – |
StructuredAuthenticationConfigurationJWKSMetrics |
true |
Beta | 1.35 | – |
SupplementalGroupsPolicy |
false |
Alpha | 1.31 | 1.32 |
SupplementalGroupsPolicy |
true |
Beta | 1.33 | – |
SystemdWatchdog |
true |
Beta | 1.32 | – |
TaintTolerationComparisonOperators |
false |
Alpha | 1.35 | – |
TokenRequestServiceAccountUIDValidation |
true |
Beta | 1.34 | – |
TopologyManagerPolicyAlphaOptions |
false |
Alpha | 1.26 | – |
TopologyManagerPolicyBetaOptions |
false |
Beta | 1.26 | 1.27 |
TopologyManagerPolicyBetaOptions |
true |
Beta | 1.28 | – |
TranslateStreamCloseWebsocketRequests |
false |
Alpha | 1.29 | 1.29 |
TranslateStreamCloseWebsocketRequests |
true |
Beta | 1.30 | – |
UnauthenticatedHTTP2DOSMitigation |
false |
Beta | 1.28 | 1.28 |
UnauthenticatedHTTP2DOSMitigation |
true |
Beta | 1.29 | – |
UnknownVersionInteroperabilityProxy |
false |
Alpha | 1.28 | – |
UserNamespacesHostNetworkSupport |
false |
Alpha | 1.35 | – |
UserNamespacesSupport |
false |
Alpha | 1.28 | 1.29 |
UserNamespacesSupport |
false |
Beta | 1.30 | 1.32 |
UserNamespacesSupport |
true |
Beta | 1.33 | – |
VolumeLimitScaling |
false |
Alpha | 1.35 | – |
WatchCacheInitializationPostStartHook |
false |
Beta | 1.31 | – |
WatchList |
false |
Alpha | 1.27 | 1.31 |
WatchList |
true |
Beta | 1.32 | 1.32 |
WatchList |
false |
Beta | 1.33 | 1.33 |
WatchList |
true |
Beta | 1.34 | – |
WatchListClient |
false |
Beta | 1.30 | 1.34 |
WatchListClient |
true |
Beta | 1.35 | – |
WindowsCPUAndMemoryAffinity |
false |
Alpha | 1.32 | – |
WindowsGracefulNodeShutdown |
false |
Alpha | 1.32 | 1.33 |
WindowsGracefulNodeShutdown |
true |
Beta | 1.34 | – |
| Властивість | Стандартно | Стадія | Починаючи з | До |
|---|---|---|---|---|
AllowDNSOnlyNodeCSR |
false |
Deprecated | 1.31 | – |
AllowInsecureKubeletCertificateSigningRequests |
false |
Deprecated | 1.31 | – |
AnonymousAuthConfigurableEndpoints |
false |
Alpha | 1.31 | 1.31 |
AnonymousAuthConfigurableEndpoints |
true |
Beta | 1.32 | 1.33 |
AnonymousAuthConfigurableEndpoints |
true |
GA | 1.34 | – |
AnyVolumeDataSource |
false |
Alpha | 1.18 | 1.23 |
AnyVolumeDataSource |
true |
Beta | 1.24 | 1.32 |
AnyVolumeDataSource |
true |
GA | 1.33 | – |
APIServerTracing |
false |
Alpha | 1.22 | 1.26 |
APIServerTracing |
true |
Beta | 1.27 | 1.33 |
APIServerTracing |
true |
GA | 1.34 | – |
AuthorizeNodeWithSelectors |
false |
Alpha | 1.31 | 1.31 |
AuthorizeNodeWithSelectors |
true |
Beta | 1.32 | 1.33 |
AuthorizeNodeWithSelectors |
true |
GA | 1.34 | – |
AuthorizeWithSelectors |
false |
Alpha | 1.31 | 1.31 |
AuthorizeWithSelectors |
true |
Beta | 1.32 | 1.33 |
AuthorizeWithSelectors |
true |
GA | 1.34 | – |
BtreeWatchCache |
true |
Beta | 1.32 | 1.32 |
BtreeWatchCache |
true |
GA | 1.33 | – |
ChangeContainerStatusOnKubeletRestart |
false |
Deprecated | 1.35 | – |
ConsistentListFromCache |
false |
Alpha | 1.28 | 1.30 |
ConsistentListFromCache |
true |
Beta | 1.31 | 1.33 |
ConsistentListFromCache |
true |
GA | 1.34 | – |
CPUManagerPolicyOptions |
false |
Alpha | 1.22 | 1.22 |
CPUManagerPolicyOptions |
true |
Beta | 1.23 | 1.32 |
CPUManagerPolicyOptions |
true |
GA | 1.33 | – |
CRDValidationRatcheting |
false |
Alpha | 1.28 | 1.29 |
CRDValidationRatcheting |
true |
Beta | 1.30 | 1.32 |
CRDValidationRatcheting |
true |
GA | 1.33 | – |
CronJobsScheduledAnnotation |
true |
Beta | 1.28 | 1.31 |
CronJobsScheduledAnnotation |
true |
GA | 1.32 | – |
CSIMigrationPortworx |
false |
Alpha | 1.23 | 1.24 |
CSIMigrationPortworx |
false |
Beta | 1.25 | 1.30 |
CSIMigrationPortworx |
true |
Beta | 1.31 | 1.32 |
CSIMigrationPortworx |
true |
GA | 1.33 | – |
CustomResourceFieldSelectors |
false |
Alpha | 1.30 | 1.30 |
CustomResourceFieldSelectors |
true |
Beta | 1.31 | 1.31 |
CustomResourceFieldSelectors |
true |
GA | 1.32 | – |
DisableAllocatorDualWrite |
false |
Alpha | 1.31 | 1.32 |
DisableAllocatorDualWrite |
false |
Beta | 1.33 | 1.33 |
DisableAllocatorDualWrite |
true |
GA | 1.34 | – |
DisableNodeKubeProxyVersion |
false |
Alpha | 1.29 | 1.30 |
DisableNodeKubeProxyVersion |
true |
Beta | 1.31.0 | 1.31.0 |
DisableNodeKubeProxyVersion |
false |
Deprecated | 1.31.1 | – |
DisableNodeKubeProxyVersion |
false |
Deprecated | 1.32 | 1.32 |
DisableNodeKubeProxyVersion |
true |
Deprecated | 1.33 | – |
DynamicResourceAllocation |
false |
Alpha | 1.30 | 1.31 |
DynamicResourceAllocation |
false |
Beta | 1.32 | 1.33 |
DynamicResourceAllocation |
true |
GA | 1.34 | 1.34 |
DynamicResourceAllocation |
true |
GA | 1.35 | – |
ElasticIndexedJob |
true |
Beta | 1.27 | 1.30 |
ElasticIndexedJob |
true |
GA | 1.31 | – |
ExecProbeTimeout |
true |
GA | 1.20 | – |
GitRepoVolumeDriver |
false |
Deprecated | 1.33 | – |
HonorPVReclaimPolicy |
false |
Alpha | 1.23 | 1.30 |
HonorPVReclaimPolicy |
true |
Beta | 1.31 | 1.32 |
HonorPVReclaimPolicy |
true |
GA | 1.33 | – |
ImageMaximumGCAge |
false |
Alpha | 1.29 | 1.29 |
ImageMaximumGCAge |
true |
Beta | 1.30 | 1.34 |
ImageMaximumGCAge |
true |
GA | 1.35 | – |
InformerResourceVersion |
false |
Alpha | 1.30 | 1.34 |
InformerResourceVersion |
true |
GA | 1.35 | – |
InPlacePodVerticalScaling |
false |
Alpha | 1.27 | 1.32 |
InPlacePodVerticalScaling |
true |
Beta | 1.33 | 1.34 |
InPlacePodVerticalScaling |
true |
GA | 1.35 | – |
InPlacePodVerticalScalingAllocatedStatus |
false |
Alpha | 1.32 | 1.32 |
InPlacePodVerticalScalingAllocatedStatus |
false |
Deprecated | 1.33 | – |
JobBackoffLimitPerIndex |
false |
Alpha | 1.28 | 1.28 |
JobBackoffLimitPerIndex |
true |
Beta | 1.29 | 1.32 |
JobBackoffLimitPerIndex |
true |
GA | 1.33 | – |
JobManagedBy |
false |
Alpha | 1.30 | 1.31 |
JobManagedBy |
true |
Beta | 1.32 | 1.34 |
JobManagedBy |
true |
GA | 1.35 | – |
JobPodReplacementPolicy |
false |
Alpha | 1.28 | 1.28 |
JobPodReplacementPolicy |
true |
Beta | 1.29 | 1.33 |
JobPodReplacementPolicy |
true |
GA | 1.34 | – |
JobSuccessPolicy |
false |
Alpha | 1.30 | 1.30 |
JobSuccessPolicy |
true |
Beta | 1.31 | 1.32 |
JobSuccessPolicy |
true |
GA | 1.33 | – |
KMSv1 |
true |
Deprecated | 1.28 | 1.28 |
KMSv1 |
false |
Deprecated | 1.29 | – |
KubeletCgroupDriverFromCRI |
false |
Alpha | 1.28 | 1.30 |
KubeletCgroupDriverFromCRI |
true |
Beta | 1.31 | – |
KubeletCgroupDriverFromCRI |
true |
GA | 1.34 | – |
KubeletTracing |
false |
Alpha | 1.25 | 1.26 |
KubeletTracing |
true |
Beta | 1.27 | 1.33 |
KubeletTracing |
true |
GA | 1.34 | – |
LogarithmicScaleDown |
false |
Alpha | 1.21 | 1.21 |
LogarithmicScaleDown |
true |
Beta | 1.22 | 1.30 |
LogarithmicScaleDown |
true |
GA | 1.31 | – |
MatchLabelKeysInPodAffinity |
false |
Alpha | 1.29 | 1.30 |
MatchLabelKeysInPodAffinity |
true |
Beta | 1.31 | 1.32 |
MatchLabelKeysInPodAffinity |
true |
GA | 1.33 | – |
MemoryManager |
false |
Alpha | 1.21 | 1.21 |
MemoryManager |
true |
Beta | 1.22 | 1.31 |
MemoryManager |
true |
GA | 1.32 | – |
MultiCIDRServiceAllocator |
false |
Alpha | 1.27 | 1.30 |
MultiCIDRServiceAllocator |
false |
Beta | 1.31 | 1.32 |
MultiCIDRServiceAllocator |
true |
GA | 1.33 | – |
NFTablesProxyMode |
false |
Alpha | 1.29 | 1.30 |
NFTablesProxyMode |
true |
Beta | 1.31 | 1.32 |
NFTablesProxyMode |
true |
GA | 1.33 | – |
NodeInclusionPolicyInPodTopologySpread |
false |
Alpha | 1.25 | 1.25 |
NodeInclusionPolicyInPodTopologySpread |
true |
Beta | 1.26 | 1.32 |
NodeInclusionPolicyInPodTopologySpread |
true |
GA | 1.33 | – |
NodeSwap |
false |
Alpha | 1.22 | 1.27 |
NodeSwap |
false |
Beta | 1.28 | 1.29 |
NodeSwap |
true |
Beta | 1.30 | 1.33 |
NodeSwap |
true |
GA | 1.34 | – |
OrderedNamespaceDeletion |
false |
Beta | 1.30 | 1.32 |
OrderedNamespaceDeletion |
true |
Beta | 1.33 | 1.33 |
OrderedNamespaceDeletion |
true |
GA | 1.34 | – |
PodIndexLabel |
true |
Beta | 1.28 | 1.31 |
PodIndexLabel |
true |
GA | 1.32 | – |
PodLifecycleSleepAction |
false |
Alpha | 1.29 | 1.29 |
PodLifecycleSleepAction |
true |
Beta | 1.30 | 1.33 |
PodLifecycleSleepAction |
true |
GA | 1.34 | – |
PodLifecycleSleepActionAllowZero |
false |
Alpha | 1.32 | 1.32 |
PodLifecycleSleepActionAllowZero |
true |
Beta | 1.33 | 1.33 |
PodLifecycleSleepActionAllowZero |
true |
GA | 1.34 | – |
PodObservedGenerationTracking |
false |
Alpha | 1.33 | 1.33 |
PodObservedGenerationTracking |
true |
Beta | 1.34 | 1.34 |
PodObservedGenerationTracking |
true |
GA | 1.35 | – |
PodSchedulingReadiness |
false |
Alpha | 1.26 | 1.26 |
PodSchedulingReadiness |
true |
Beta | 1.27 | 1.29 |
PodSchedulingReadiness |
true |
GA | 1.30 | – |
PreferSameTrafficDistribution |
false |
Alpha | 1.33 | 1.33 |
PreferSameTrafficDistribution |
true |
Beta | 1.34 | 1.34 |
PreferSameTrafficDistribution |
true |
GA | 1.35 | – |
RecoverVolumeExpansionFailure |
false |
Alpha | 1.23 | 1.31 |
RecoverVolumeExpansionFailure |
true |
Beta | 1.32 | 1.33 |
RecoverVolumeExpansionFailure |
true |
GA | 1.34 | – |
RecursiveReadOnlyMounts |
false |
Alpha | 1.30 | 1.30 |
RecursiveReadOnlyMounts |
true |
Beta | 1.31 | 1.32 |
RecursiveReadOnlyMounts |
true |
GA | 1.33 | – |
RelaxedDNSSearchValidation |
false |
Alpha | 1.32 | 1.32 |
RelaxedDNSSearchValidation |
true |
Beta | 1.33 | 1.33 |
RelaxedDNSSearchValidation |
true |
GA | 1.34 | – |
RelaxedEnvironmentVariableValidation |
false |
Alpha | 1.30 | 1.31 |
RelaxedEnvironmentVariableValidation |
true |
Beta | 1.32 | 1.33 |
RelaxedEnvironmentVariableValidation |
true |
GA | 1.34 | – |
ResilientWatchCacheInitialization |
true |
Beta | 1.31 | 1.33 |
ResilientWatchCacheInitialization |
true |
GA | 1.34 | – |
RetryGenerateName |
false |
Alpha | 1.30 | 1.30 |
RetryGenerateName |
true |
Beta | 1.31 | 1.31 |
RetryGenerateName |
true |
GA | 1.32 | – |
SchedulerQueueingHints |
true |
Beta | 1.28 | 1.28 |
SchedulerQueueingHints |
false |
Beta | 1.29 | 1.31 |
SchedulerQueueingHints |
true |
Beta | 1.32 | 1.33 |
SchedulerQueueingHints |
true |
GA | 1.34 | – |
SeparateCacheWatchRPC |
true |
Beta | 1.28 | 1.32 |
SeparateCacheWatchRPC |
false |
Deprecated | 1.33 | – |
SeparateTaintEvictionController |
true |
Beta | 1.29 | 1.33 |
SeparateTaintEvictionController |
true |
GA | 1.34 | – |
ServiceAccountTokenJTI |
false |
Alpha | 1.29 | 1.29 |
ServiceAccountTokenJTI |
true |
Beta | 1.30 | 1.31 |
ServiceAccountTokenJTI |
true |
GA | 1.32 | – |
ServiceAccountTokenNodeBinding |
false |
Alpha | 1.29 | 1.30 |
ServiceAccountTokenNodeBinding |
true |
Beta | 1.31 | 1.32 |
ServiceAccountTokenNodeBinding |
true |
GA | 1.33 | – |
ServiceAccountTokenNodeBindingValidation |
false |
Alpha | 1.29 | 1.29 |
ServiceAccountTokenNodeBindingValidation |
true |
Beta | 1.30 | 1.31 |
ServiceAccountTokenNodeBindingValidation |
true |
GA | 1.32 | – |
ServiceAccountTokenPodNodeInfo |
false |
Alpha | 1.29 | 1.29 |
ServiceAccountTokenPodNodeInfo |
true |
Beta | 1.30 | 1.31 |
ServiceAccountTokenPodNodeInfo |
true |
GA | 1.32 | – |
ServiceTrafficDistribution |
false |
Alpha | 1.30 | 1.30 |
ServiceTrafficDistribution |
true |
Beta | 1.31 | 1.32 |
ServiceTrafficDistribution |
true |
GA | 1.33 | – |
SidecarContainers |
false |
Alpha | 1.28 | 1.28 |
SidecarContainers |
true |
Beta | 1.29 | 1.32 |
SidecarContainers |
true |
GA | 1.33 | – |
StatefulSetAutoDeletePVC |
false |
Alpha | 1.23 | 1.26 |
StatefulSetAutoDeletePVC |
true |
Beta | 1.27 | 1.31 |
StatefulSetAutoDeletePVC |
true |
GA | 1.32 | – |
StatefulSetStartOrdinal |
false |
Alpha | 1.26 | 1.26 |
StatefulSetStartOrdinal |
true |
Beta | 1.27 | 1.30 |
StatefulSetStartOrdinal |
true |
GA | 1.31 | – |
StorageNamespaceIndex |
true |
Beta | 1.30 | 1.32 |
StorageNamespaceIndex |
true |
Deprecated | 1.33 | – |
StreamingCollectionEncodingToJSON |
true |
Beta | 1.33 | 1.33 |
StreamingCollectionEncodingToJSON |
true |
GA | 1.34 | – |
StreamingCollectionEncodingToProtobuf |
true |
Alpha | 1.33 | 1.33 |
StreamingCollectionEncodingToProtobuf |
true |
GA | 1.34 | – |
StrictCostEnforcementForVAP |
false |
Beta | 1.30 | 1.31 |
StrictCostEnforcementForVAP |
true |
GA | 1.32 | – |
StrictCostEnforcementForWebhooks |
false |
Beta | 1.31 | 1.31 |
StrictCostEnforcementForWebhooks |
true |
GA | 1.32 | – |
StructuredAuthenticationConfiguration |
false |
Alpha | 1.29 | 1.29 |
StructuredAuthenticationConfiguration |
true |
Beta | 1.30 | 1.33 |
StructuredAuthenticationConfiguration |
true |
GA | 1.34 | – |
StructuredAuthorizationConfiguration |
false |
Alpha | 1.29 | 1.29 |
StructuredAuthorizationConfiguration |
true |
Beta | 1.30 | 1.31 |
StructuredAuthorizationConfiguration |
true |
GA | 1.32 | – |
TopologyAwareHints |
false |
Alpha | 1.21 | 1.22 |
TopologyAwareHints |
false |
Beta | 1.23 | 1.23 |
TopologyAwareHints |
true |
Beta | 1.24 | 1.32 |
TopologyAwareHints |
true |
GA | 1.33 | – |
TopologyManagerPolicyOptions |
false |
Alpha | 1.26 | 1.27 |
TopologyManagerPolicyOptions |
true |
Beta | 1.28 | 1.31 |
TopologyManagerPolicyOptions |
true |
GA | 1.32 | – |
VolumeAttributesClass |
false |
Alpha | 1.29 | 1.30 |
VolumeAttributesClass |
false |
Beta | 1.31 | 1.33 |
VolumeAttributesClass |
true |
GA | 1.34 | – |
WatchFromStorageWithoutResourceVersion |
false |
Beta | 1.30 | 1.32 |
WatchFromStorageWithoutResourceVersion |
false |
Deprecated | 1.33 | – |
WindowsHostNetwork |
true |
Alpha | 1.26 | 1.32 |
WindowsHostNetwork |
false |
Deprecated | 1.33 | – |
WinDSR |
false |
Alpha | 1.14 | 1.32 |
WinDSR |
true |
Beta | 1.33 | 1.33 |
WinDSR |
true |
GA | 1.34 | – |
WinOverlay |
false |
Alpha | 1.14 | 1.19 |
WinOverlay |
true |
Beta | 1.20 | 1.33 |
WinOverlay |
true |
GA | 1.34 | – |
Кожна функція може бути в стані Alpha, Beta або GA (загальнодоступна).
Alpha означає:
Beta означає:
Функція в стані Загальна доступність (GA) також називається стабільною функцією. Це означає:
Кожна функціональна можливість створена для вмикання/вимикання певної функції.
AllowDNSOnlyNodeCSRДозволяє kubelet запитувати сертифікат без будь-якого доступного Node IP, лише з DNS-іменами.
AllowInsecureKubeletCertificateSigningRequestsВвімкнення перевірки допуску вузла CertificateSigningRequests для підписувачів kubelet. Якщо ви не вимкнете цю функціональну можливість, Kubernetes вимагатиме, щоб нові сертифікати kubelet мали commonName, що відповідає system:node:$nodeName.
AllowParsingUserUIDFromCertAuthКоли цю функцію увімкнено, атрибут імені субʼєкта 1.3.6.1.4.1.57683.2 у сертифікаті X.509 буде оброблятися як UID користувача під час автентифікації сертифіката.
AllowUnsafeMalformedObjectDeletionДозволяє оператору кластера визначати пошкоджені ресурси за допомогою операції list, а також вводить опцію ignoreStoreReadErrorWithClusterBreakingPotential, яку оператор може встановити для виконання небезпечної та примусової операції delete таких пошкоджених ресурсів за допомогою API Kubernetes.
AnonymousAuthConfigurableEndpointsДозволяє налаштувати анонімну автентифікацію/авторизацію лише на певних точках доступу сервера API.
AnyVolumeDataSourceДозволити використання будь-якого власного ресурсу як DataSource для PVC.
APIResponseCompressionСтиснення відповідей API для запитів LIST або GET.
APIServerIdentityПрисвоює кожному серверу API ідентифікатор у кластері, використовуючи Lease.
APIServerTracingДодає підтримку розподіленого трасування у сервері API. Докладні відомості наведено у статті Трасування системних компонентів Kubernetes.
APIServingWithRoutineЦя функціональна можливість дозволяє серверу API покращити продуктивність: сервер API може використовувати окремі goroutines (легкі потоки, керовані середовищем виконання Go) для обслуговування запитів watch.
AuthorizeNodeWithSelectorsДозволяє авторизатору вузла використовувати детальну авторизацію за допомогою селекторів.
AuthorizePodWebsocketUpgradeCreatePermissionКоли функціональна можливість AuthorizePodWebsocketUpgradeCreatePermission має значення true, клієнти повинні мати дозвіл на створення (create) субресурсів Podʼів, навіть якщо їх створення ініціюється за допомогою WebSocket.
Запит на оновлення зʼєднання відбувається для кожного з наступних субресурсів: pods/exec, pods/attach та pods/portforward. Ця функція усуває прогалину в безпеці, спричинену переходом на новий протокол: тоді як запити SPDY використовують HTTP POST (що природно узгоджується з дозволом create RBAC), протокол WebSocket вимагає запиту HTTP GET для встановлення зʼєднання. Щоб виправити цей недолік, тепер застосовується синтетична перевірка RBAC, щоб гарантувати, що оновлення WebSocket суворо дотримуються дозволу create, що відповідає чинній моделі безпеки SPDY.
Ви можете вимкнути цю функцію, якщо у вас є діючі клієнти або власні інструменти, які покладаються на попередню поведінку, а саме, якщо вони підключаються через WebSockets, але на даний момент не мають дозволу create RBAC.
AuthorizeWithSelectorsДозволяє використовувати селектори полів та міток для авторизації. Увімкнення полів fieldSelector та labelSelector в API SubjectAccessReview, передає інформацію про селектори полів і міток до вебхуків авторизації, активує функції fieldSelector та labelSelector у бібліотеці CEL для авторизації, а також дозволяє перевіряти поля fieldSelector і labelSelector в умовах збігу вебхуків авторизації.
BtreeWatchCacheЯкщо увімкнено, сервер API замінить застарілий watch cache на основі HashMap на реалізацію на основі BTree. Ця заміна може призвести до покращення продуктивності.
CBORServingAndStorageВмикає CBOR як підтримуване кодування для запитів і відповідей, а також як бажане кодування сховища для власних ресурсів користувача.
ChangeContainerStatusOnKubeletRestartВмикає старий спосіб запису для оновлення статусу контейнера ready після того, як kubelet виявляє перезапуск.
Ця функція була введена, щоб дозволити вам повернути поведінку до раніше використовуваного стандартного значення. Якщо вас влаштовує стандартна поведінка, вам не потрібно вмикати цю функцію.
ClearingNominatedNodeNameAfterBindingДозволяє очищати .status.nominatedNodeName щоразу, коли Podʼи привʼязуються до вузлів.
CloudControllerManagerWatchBasedRoutesReconciliationУвімкнення механізму узгодження маршруту на основі спостереження (замість узгодження через фіксований інтервал) у бібліотеці cloud-controller-manager.
CloudControllerManagerWebhookВмикання веб-хуків у менеджері хмарних контролерів.
ClusterTrustBundleВмикає обʼєкти ClusterTrustBundle та інтеграцію kubelet.
ClusterTrustBundleProjectionComponentFlagzУвімкнення точки доступу flagz компонента. Докладнішу інформацію наведено у zpages.
ComponentStatuszВмикає точку доступу statusz компонента. Докладнішу інформацію наведено у zpages.
ConcurrentWatchObjectDecodeВмикає одночасне декодування обʼєктів watch. Це потрібно для того, щоб уникнути голодування кешу watch API-сервера, коли встановлений вебхук перетворення.
ConsistentListFromCacheПокращує продуктивність API сервера Kubernetes, обслуговуючи узгоджені запити list безпосередньо з кешу спостереження, що підвищує масштабованість та скорочує час відгуку. Для узгодженого списку з кешу Kubernetes потрібна новіша версія etcd (v3.4.31+ або v3.5.13+), яка містить виправлення для функції запиту на прогрес спостереження. Якщо надана стара версія etcd, Kubernetes автоматично визначить це і повернеться до обслуговування узгоджених читань з etcd. Сповіщення про прогрес забезпечують узгодженість кешу спостереження з etcd, одночасно зменшуючи потребу у витратних читаннях кворуму з etcd.
Детальніше дивіться у документації Kubernetes про Семантику для get і list.
ConstrainedImpersonationДозволяє імперсонацію, яка обмежується конкретними запитами, та яка не є всеосяжною.
ContainerCheckpointВмикає kubelet checkpoint API. Дивіться Kubelet Checkpoint API для більш детальної інформації.
ContainerRestartRulesДозволяє налаштувати політику перезапуску контейнерів та правила перезапуску. Докладні відомості наведено у статті Правила перезапуску контейнерів.
ContainerStopSignalsДозволяє використовувати сигнал StopSignal життєвого циклу для контейнерів для налаштування власних сигналів за допомогою яких може бути зупинено роботу контейнера.
ContextualLoggingВмикає додаткові деталі у виведенні логів компонентів Kubernetes, які підтримують контекстне ведення логів.
CoordinatedLeaderElectionВмикає поведінку, що підтримує API LeaseCandidate, а також забезпечує детерміноване обрання лідера для панелі управління Kubernetes.
CPUManagerPolicyAlphaOptionsДозволяє тонко налаштовувати політики CPUManager, експериментальні, альфа-опції якості. Ця функціональна можливість захищає групу опцій CPUManager, які мають рівень якості альфа. Ці функціональні можливості ніколи не будуть переведені у бета-версію або стабільну версію.
CPUManagerPolicyBetaOptionsДозволяє тонко налаштовувати політики CPUManager, експериментальні, бета-опції якості. Ця функціональна можливість захищає групу опцій CPUManager, які мають рівень якості бета. Ці функціональні можливості ніколи не будуть переведені у стабільну версію.
CPUManagerPolicyOptionsДозволяє тонко налаштовувати політики CPUManager.
CRDObservedGenerationTrackingДозволяє відстежувати спостережену генерацію в умовах CRD. Встановлення значення false призведе до того, що в умовах CRD спостережена генерація буде видалена.
CRDValidationRatchetingВвімкнути оновлення власних ресурсів, щоб вони містили порушення їхньої схеми OpenAPI, якщо частини ресурсу, що порушують оновлення не змінилися. Докладніші відомості наведено у статті Проковзування валідації.
CronJobsScheduledAnnotationВстановіть час запланованого завдання як анотацію для завдань, створених від імені CronJob.
CrossNamespaceVolumeDataSourceВмикає використання перехресного простору назв джерела даних тома щоб дозволити вам вказувати простір імен джерела у полі dataSourceRef у PersistentVolumeClaim.
CSIMigrationPortworxВмикає shimʼи та логіку передачі для маршрутизації операцій тому з вбудованого втулка Portworx до втулка Portworx CSI. Вимагає встановлення та налаштування втулка Portworx CSI в кластері.
CSIServiceAccountTokenSecretsДозволяє драйверам CSI підключатися для отримання токенів службових облікових записів від kubelet через спеціальне поле секретів у NodePublishVolumeRequest замість поля volume_context.
CSIVolumeHealthВмикає підтримку моніторингу стану справності томів CSI на вузлі.
CustomCPUCFSQuotaPeriodДозволяє вузлам змінювати cpuCFSQuotaPeriod в
конфігурації kubelet.
CustomResourceFieldSelectorsВмикає selectableFields в API CustomResourceDefinition, щоб дозволити фільтрацію запитів list, watch та deletecollection для власних ресурсів.
DeclarativeValidationВмикає декларативну валідацію внутрішніх API Kubernetes. Якщо увімкнено, для API з правилами декларативної перевірки (визначеними за допомогою IDL-теґів у коді Go) буде виконано як згенерований код декларативної перевірки, так і оригінальний код перевірки, написаний вручну. Результати порівнюються, і про будь-які розбіжності повідомляється за допомогою метрики declarative_validation_mismatch_total. Користувачеві повертається лише результат валідації, написаний вручну (наприклад: фактична валідація у шляху запиту). Оригінальна рукописна перевірка залишається авторитетною перевіркою, коли її увімкнено, але це можна змінити, якщо увімкнути функціональну можливість DeclarativeValidationTakeover на додачу до цієї. Цzя функціональна можливість працює лише на kube-apiserver.
DeclarativeValidationTakeoverЯкщо увімкнено, разом з функціональною можливістю DeclarativeValidation, помилки декларативної перевірки повертаються безпосередньо користувачеві, замінюючи помилки ручної перевірки для правил, які мають декларативну реалізацію. Якщо вимкнено (і увімкнено DeclarativeValidation), завжди повертаються помилки перевірки, написані вручну, що фактично переводить декларативну перевірку у режим перевірки mismatch validation mode, який відстежує відповіді API, але не впливає на них. Цей режим mismatch validation mode дозволяє відстежувати метрики declarative_validation_mismatch_total та declarative_validation_panic_total, які є деталями реалізації для більш безпечного розгортання, пересічному користувачеві не потрібно взаємодіяти з ними безпосередньо. Ця функціональна можливість працює лише на kube-apiserver. Примітка: Хоча декларативна валідація має на меті функціональну еквівалентність з рукописною валідацією, точний опис повідомлень про помилки може відрізнятися між цими двома підходами.
DeploymentReplicaSetTerminatingReplicasУвімкнення нового поля стану .status.terminatingReplicas у Deployments і ReplicaSets для відстежування завершених podʼів.
DetectCacheInconsistencyВмикає виявлення неузгодженості кеша в сервері API.
DisableAllocatorDualWriteВи можете увімкнути функціональну можливість MultiCIDRServiceAllocator. Сервер API підтримує міграцію зі старих розподільників bitmap ClusterIP на нові розподільники IPAddress.
Сервер API виконує подвійний запис на обидва розподільники. Ця функція вимикає подвійний запис на нові розподільники ClusterIP; ви можете увімкнути цю функцію, якщо ви завершили відповідний етап міграції.
DisableCPUQuotaWithExclusiveCPUsКоли функціональна можливвість DisableCPUQuotaWithExclusiveCPUs увімкнена ( стандартно), Kubernetes не застосовує квоту на використання CPU для Podʼів, які використовують [Guaranteed](/docs/concepts/workloads/pods/pod-qos/# guaranteed) Клас QoS.
Ви можете вимкнути функцію DisableCPUQuotaWithExclusiveCPUs, щоб відновити попередню поведінку.
DisableNodeKubeProxyVersionВимикає встановлення поля kubeProxyVersion вузла.
DRAAdminAccessВмикає підтримку запиту доступу адміністратора у ResourceClaim або ResourceClaimTemplate. Доступ адміністратора надає доступ до використовуваних пристроїв і може включати додаткові дозволи, коли пристрій стає доступним у контейнері. Починаючи з Kubernetes v1.33, лише користувачі, яким дозволено створювати обʼєкти ResourceClaim або ResourceClaimTemplate у просторах імен, позначених resource.kubernetes.io/admin-access: “true" (з урахуванням регістру) можуть використовувати поле adminAccess. Це гарантує, що користувачі, які не мають прав адміністратора, не зможуть зловживати функцією. Починаючи з Kubernetes v1.34, цю мітку було оновлено на resource.kubernetes.io/admin-access: "true".
DRAConsumableCapacityДозволяє спільне використання пристрою в декількох ResourceClaims або запитах.
Крім того, якщо пристрій підтримує спільне використання, його ресурсом (ємністю) можна керувати за допомогою визначеної політики спільного використання.
DRADeviceBindingConditionsДозволяє підтримку DeviceBindingConditions у полях, повʼязаних з DRA. Це дозволяє проводити ретельні перевірки готовності пристроїв та процеси підключення перед фазою привʼязки.
DRADeviceTaintRulesУможливлює підтримку позначення пристроїв позначкою taint за допомогою обʼєктів DeviceTaintRule під час використання динамічного розподілу ресурсів для управління пристроями.
Ця функція не діє, якщо ви також не увімкнете функцію DRADeviceTaint.
DRADeviceTaintsУвімкнення підтримки позначення пристроїв позначкою taint і вибіркове толерування цих позначок під час використання динамічного розподілу ресурсів для керування пристроями.
DRAExtendedResourceДозволяє підтримку функції Розподіл розширених ресурсів за допомогою DRA. Це дозволяє вказувати імʼя розширеного ресурсу в DeviceClass.
DRAPartitionableDevicesУвімкнути підтримку запиту Пристрої, що розділяються на розділи для DRA. Це дозволяє драйверам оголошувати декілька пристроїв, які зіставляються з тими самими ресурсами фізичного пристрою.
DRAPrioritizedListВмикає підтримку функції Prioritized List. Вона дає змогу вказати пріоритетний список підзапитів для запитів у ResourceClaim.
DRAResourceClaimDeviceStatusВмикає підтримку поля ResourceClaim.status.devices та встановлення цього статусу з драйверів DRA. Для цього потрібно увімкнути функціональну можливість DynamicResourceAllocation.
DRASchedulerFilterTimeoutДозволяє припинити роботу фільтра для кожного вузла в планувальнику через певний час ( стандартно 10 секунд, можна налаштувати в конфігурації втулка DynamicResources).
DynamicResourceAllocationДозволяє підтримувати ресурси з власними параметрами та життєвим циклом які не залежать від Pod. Розподілом ресурсів займається планувальник Kubernetes використовуючи "структуровані параметри".
ElasticIndexedJobДозволяє масштабувати індексовані завдання шляхом зміни параметрів spec.completions та spec.parallelism таким чином, щоб spec.completions == spec.parallelism. Детальніше див. у документації про еластичні індексовані завдання.
EnvFilesДозволяє визначати значення змінних середовища контейнера через файл. Дивіться Визначення значень змінних середовища за допомогою контейнера ініціалізації для отримання додаткової інформації.
EventedPLEGВмикає підтримку kubelet для отримання подій життєвого циклу контейнера з container runtime через розширення до CRI. (PLEG, скорочення від "Pod lifecycle event generator" — генератор подій життєвого циклу Pod). Щоб ця функція була корисною, вам також потрібно увімкнути підтримку подій життєвого циклу контейнера у кожному середовищі виконання контейнерів, що працює у вашому кластері. Якщо середовище виконання контейнера не оголошує про підтримку подій життєвого циклу контейнера, то kubelet автоматично перемикається на застарілий загальний механізм PLEG, навіть якщо ви увімкнули цю функціональну можливість.
ExecProbeTimeoutПереконайтеся, що kubelet дотримується таймаутів exec probe. Ця функція існує на випадок, якщо будь-яке з ваших робочих навантажень залежить від виправленої помилки, коли Kubernetes ігнорував тайм-аути exec probe. Дивіться проби готовності.
ExternalServiceAccountTokenSignerУвімкніть параметр --service-account-signing-endpoint, щоб kube-apiserver використовував зовнішнього підписувача для підписання токенів та керування ключами для перевірки токенів.
GangSchedulingУвімкнення втулка GangScheduling у kube-scheduler, який реалізує алгоритм планування «все або нічого». Для вираження вимог використовується Workload API.
GenericWorkloadУвімкнення підтримки Workload API для вираження вимог до планування на рівні робочого навантаження.
Коли ця функція увімкнена, Podʼи можуть посилатися на конкретну групу подів і використовувати це для впливу на спосіб їх планування.
GitRepoVolumeDriverВизначає, чи підтримується втулок томів gitRepo. Втулок томів gitRepo стандартно вимкнений, починаючи з версії 1.33. Це дає користувачам можливість увімкнути його.
GracefulNodeShutdownВмикає підтримку відповідного завершення роботи у kubelet. Під час вимкнення системи kubelet намагатиметься виявити подію вимкнення і завершити роботу Podʼів, запущених на вузлі, відповідним чином. Докладніші відомості наведено у статті Відповідне вимикання вузла.
GracefulNodeShutdownBasedOnPodPriorityДозволяє kubelet перевіряти пріоритети Pod під час відповідного завершення роботи вузла.
HonorPVReclaimPolicyДотримуватися політики відновлення постійного тому, коли він має значення Delete, незалежно від впорядкування видалення PV-PVC. Докладніші відомості наведено у документації Завершувач захисту від видалення постійних томів.
HostnameOverrideДозволяє встановлювати будь-який FQDN як імʼя хоста пода.
HPAConfigurableToleranceДозволяє встановити поріг толерантності для метрики HorizontalPodAutoscaleer.
HPAScaleToZeroДозволяє встановлювати minReplicas у 0 для ресурсів HorizontalPodAutoscaler при використанні власних або зовнішніх метрик.
ImageMaximumGCAgeВмикає поле конфігурації kubelet imageMaximumGCAge, що дозволяє адміністратору вказати вік, після якого образ буде викинуто у смітник.
ImageVolumeДозволити використання джерела тому image у Pod. За допомогою цього джерела томів ви можете змонтувати образ контейнера як том лише для читання.
InformerResourceVersionДозвольте клієнтам використовувати виклик LastSyncResourceVersion() на інформерах, що дозволить їм виконувати дії на основі поточної версії ресурсу. Коли ця опція вимкнена, LastSyncResourceVersion() виконується успішно, але повертає порожній рядок. Використовується kube-controller-manager для StorageVersionMigration.
InOrderInformersПримушує інформерів передавати впорядковані події потоку спостереження, замість неупорядкованих.
InPlacePodLevelResourcesVerticalScalingДозволяє вертикальне масштабування ресурсів для Podʼів на місці (наприклад, зміна запитів/обмежень на рівні Podʼів щодо CPU або памʼяті для запущених Podʼів без необхідності їх перезапуску). Детальніше див. документацію про вертикальне масштабування ресурсів на рівні Podʼів на місці.
InPlacePodVerticalScalingДозволяє вертикальне масштабування Podʼів на місці.
InPlacePodVerticalScalingAllocatedStatusВмикає поле allocatedResources у статусі контейнера. Ця функція вимагає, щоб також було увімкнено можливість InPlacePodVerticalScaling.
InPlacePodVerticalScalingExclusiveCPUsВмикає зміну розміру ресурсу для контейнерів у Guaranteed podʼах з цілочисельними запитами на CPU. Застосовується лише у вузлах з увімкненими функціями InPlacePodVerticalScaling та CPUManager, а політика CPUManager має значення static.
InPlacePodVerticalScalingExclusiveMemoryДозволяє змінювати розмір ресурсів для контейнерів у Guaranteed Podʼах, коли політика диспетчера памʼяті встановлена на "Static". Застосовується тільки до вузлів із увімкненими функціями InPlacePodVerticalScaling та диспетчером памʼяті.
InTreePluginPortworxUnregisterПрипиняє реєстрацію вбудованого втулка Portworx у kubelet та контролерах томів.
JobBackoffLimitPerIndexДозволяє вказати максимальну кількість повторних спроб для кожного індексу в проіндексованих завданнях.
JobManagedByДозволяє делегувати узгодження обʼєкта Job зовнішньому контролеру.
JobPodReplacementPolicyДозволяє вказувати заміну для Podʼів, що завершуються, в Job
JobSuccessPolicyДозволяє користувачам вказувати, коли Job може бути визнаний успішним на основі набору успішних Podʼів.
KMSv1Вмикає API KMS v1 для шифрування у стані спокою. Докладні відомості наведено у статті Використання постачальника KMS для шифрування даних.
KubeletCgroupDriverFromCRIВмикає виявлення параметра конфігурації драйвера cgroup kubelet з CRI. Ця функціональна можливість тепер увімкнена для всіх кластерів. Однак вона працює лише на вузлах, де є рушій виконання контейнерів CRI, який підтримує виклик CRI RuntimeConfig. Якщо CRI підтримує цю функцію, kubelet ігнорує параметр конфігурації cgroupDriver (або застарілий аргумент командного рядка --cgroup-driver). Якщо рушій виконання контейнерів не підтримує його, kubelet повертається до використання драйвера, налаштованого за допомогою параметра конфігурації cgroupDriver. Kubelet перестане повертатися до цієї конфігурації в Kubernetes 1.36. Таким чином, користувачі повинні оновити свій рушій виконання контейнерів CRI до версії, яка підтримує виклик CRI RuntimeConfig до цього часу. Адміністратори можуть використовувати метрику kubelet_cri_losing_support, щоб дізнатися, чи є вузли в їхньому кластері, які втратять підтримку в 1.36. Наступні версії CRI підтримують цей виклик CRI:
Дивіться Конфігурація драйвера cgroup для отримання додаткової інформації.
KubeletCrashLoopBackOffMaxДозволяє підтримувати конфігуровані максимальні значення backoff для кожного вузла для перезапуску контейнерів у стані CrashLoopBackOff. Для більш детальної інформації перевірте поле crashLoopBackOff.maxContainerRestartPeriod у kubelet config file.
KubeletEnsureSecretPulledImagesЗабезпечує, що podʼи, які запитують образ, мають дозвіл на доступ до образу за допомогою наданих облікових даних, якщо образ вже присутній на вузлі. Див. розділ Забезпечення перевірки облікових даних при отриманні образу.
KubeletFineGrainedAuthzДозволяє детальну авторизацію для HTTP API kubelet.
KubeletInUserNamespaceВмикає підтримку запуску kubelet у просторі імен користувачів. Див. розділ Запуск компонентів вузла Kubernetes від імені не-root користувача.
KubeletPodResourcesDynamicResourcesРозширює ресурси gRPC точки доступу Podʼа kubelet, щоб включити ресурси, виділені в ResourceClaims через API DynamicResourceAllocation. Див. звіт про виділення ресурсів для отримання додаткової інформації, інформацією про доступні ресурси, що дозволяє клієнтам належним чином відстежувати вільні обчислювальні ресурси на вузлі.
KubeletPodResourcesDynamicResourcesРозширює кінцеві точки [API gRPC для моніторингу ресурсів pod](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/ kubelet List і Get, щоб включити ресурси, виділені в ResourceClaims за допомогою Динамічного розподілу ресурсів.
Нижче наведено приклад метрик GPU, що демонструє, як цей API використовується NVIDIA dcgm-exporter для збору метрик GPU на кожен под, виділених драйвером NVIDIA DRA:
DCGM_FI_PROF_PCIE_RX_BYTES{gpu="0",UUID="GPU-a4f34abc-7715-3560-dcea-7238b9611a45",pci_bus_id="00000009:01:00.0",device="nvidia0",modelName="NVIDIA GH200 96GB HBM3",Hostname="sc-starwars-xxxx",container="ctr",dra_claim_name="single-gpu",dra_claim_namespace="gpu-test3",dra_device_name="gpu-0",dra_driver_name="gpu.nvidia.com",dra_pool_name="sc-starwars-xxxx",namespace="gpu-test3",pod="pod1"} 23792
DCGM_FI_PROF_PCIE_RX_BYTES{gpu="0",UUID="GPU-a4f34abc-7715-3560-dcea-7238b9611a45",pci_bus_id="00000009:01:00.0",device="nvidia0",modelName="NVIDIA GH200 96GB HBM3",Hostname="sc-starwars-xxxx",container="ctr",dra_claim_name="single-gpu",dra_claim_namespace="gpu-test3",dra_device_name="gpu-0",dra_driver_name="gpu.nvidia.com",dra_pool_name="sc-starwars-xxxx",namespace="gpu-test3",pod="pod2"} 23792
with Pod DRA info:
container="ctr",
dra_claim_name="single-gpu",
dra_claim_namespace="gpu-test3",
dra_device_name="gpu-0",dra_driver_name="gpu.nvidia.com",
dra_pool_name="sc-starwars-xxxx",
namespace="gpu-test3",
pod="pod1"
KubeletPodResourcesGetВмикає точку доступу Get gRPC в kubeletʼах для ресурсів Pod. Цей API доповнює звіт про розподіл ресурсів.
KubeletPSIВмикає метрики kubelet для виведення інформації Pressure Stall Information (PSI) у Summary API та метриках Prometheus.
KubeletSeparateDiskGCФункція розділеної файлової системи образів дозволяє kubelet виконувати збір сміття образів (шарів лише для читання) та/або контейнерів (шарів для запису), розгорнутих на окремих файлових системах.
KubeletServiceAccountTokenForCredentialProvidersДозволяє kubelet надсилати токен службового облікового запису, привʼязаного до podʼа, для якого отримується образ, до втулка постачальника облікових даних.
KubeletTracingДодавання підтримки розподіленого трасування в kubelet. Якщо увімкнено, інтерфейс CRI kubelet та автентифіковані http-сервери використовуються для генерації відрізків трасування OpenTelemetry. Дивіться Трасування для системних компонентів Kubernetes для більш детальної інформації.
ListFromCacheSnapshotДозволяє серверу API створювати знімки для сховища кешу спостереження і використовувати їх для обслуговування LIST-запитів.
LocalStorageCapacityIsolationFSQuotaMonitoringЯкщо LocalStorageCapacityIsolation увімкнено для локального ефемерного сховища, резервна файлова система для томів emptyDir підтримує квоти проєктів і UserNamespacesSupport увімкнено, квоти проєктів використовуються для моніторингу споживання сховища томів emptyDir, а не шляхом проходу файловою системою, що забезпечує кращу продуктивність і точність.
LogarithmicScaleDownВмикає напіввипадковий вибір Podʼів для виселення при зменшенні масштабу контролера на основі логарифмічного обʼєднання міток часу Podʼів.
LoggingAlphaOptionsДозволяє тонко налаштовувати експериментальні, альфа-якості параметрів логування.
LoggingBetaOptionsДозволяє тонко налаштовувати експериментальні, бета-якості параметрів логування.
MatchLabelKeysInPodAffinityВмикає поля matchLabelKeys та mismatchLabelKeys для pod (anti)affinity.
MatchLabelKeysInPodTopologySpreadВмикає поле matchLabelKeys для Обмеження поширення топології Podʼів.
MatchLabelKeysInPodTopologySpreadSelectorMergeВмикає обʼєднання селекторів, побудованих з matchLabelKeys, у labelSelector обмеженнях поширення топології Pod. Цю функцію можна увімкнути, коли функція matchLabelKeys увімкнена за допомогою прапорця функції MatchLabelKeysInPodTopologySpread.
Дозволяє встановити поле maxUnavailable для rolling update strategy набору StatefulSet. Поле визначає максимальну кількість Podʼів, які можуть бути недоступні під час оновлення.
MemoryManagerДозволяє встановити спорідненість памʼяті для контейнера на основі топології NUMA.
MemoryQoSВмикає захист памʼяті та обмеження використання памʼяті на pod/контейнер за допомогою контролера памʼяті cgroup v2.
MultiCIDRServiceAllocatorВідстежуйте розподіл IP-адрес для IP кластера сервісів за допомогою обʼєктів IPAddress.
MutableCSINodeAllocatableCountКоли функціональну можливість увімкнено, поле .spec.drivers[*].allocatable.count у CSINode стає змінним, а в обʼєкті CSIDriver зʼявляється нове поле nodeAllocatableUpdatePeriodSeconds. Це дозволяє періодично оновлювати звітну ємність томів, що виділяються для вузла, запобігаючи застряганню podʼів зі збереженням стану через застарілу інформацію, на яку покладається планувальник kube-scheduler.
MutablePodResourcesForSuspendedJobsВмикає можливість виправлення шаблонів подів для призупинених завдань, щоб змінити запити або обмеження для ресурсів інфраструктури.
MutablePVNodeAffinityДозволяє оновлення поля .spec.nodeAffinity PersistentVolume. Дивіться Оновлення до вузлової спорідненості для більш детальної інформації.
MutableSchedulingDirectivesForSuspendedJobsВмикає можливість виправлення шаблонів подів для призупинених завдань, щоб змінити директиви планування подів.
MutatingAdmissionPolicyВмикає підтримку MutatingAdmissionPolicy, що дозволяє CEL використовувати мутації під час контролю допуску.
У версіях Kubernetes v1.30 та v1.31 ця функціональна можливість існувала, але не мала жодного ефекту.
NFTablesProxyModeДозволяє запуск kube-proxy у режимі nftables.
NodeDeclaredFeaturesДозволяє вузлам повідомляти про підтримувані функції через їх .status. Це дозволяє планувальнику та контролеру допуску запобігати операціям на вузлах, які не мають функцій, необхідних для подів. Див. Функції, оголошені вузлом.
NodeInclusionPolicyInPodTopologySpreadВмикає використання nodeAffinityPolicy та nodeTaintsPolicy в Обмеження поширення топології Podʼів при обчисленні відхилення розповсюдження топології вузлів.
NodeLogQueryДозволяє запитувати логи сервісів вузла за допомогою точки доступу /logs.
NodeSwapДозволяє kubelet виділяти памʼять підкачки для робочих навантажень Kubernetes на вузлі. Має використовуватися з KubeletConfiguration.failSwapOn, встановленим у false. За більш детальною інформацією зверніться до swap memory
NominatedNodeNameForExpectationКоли ця опція увімкнена, kube-scheduler використовує .status.nominatedNodeName, щоб вказати, де буде прив’язаний Pod. Поле .status.nominatedNodeName встановлюється, коли kube-scheduler запускає витіснення подів або передбачає, що фаза WaitOnPermit або PreBinding триватиме відносно довго. Інші компоненти можуть читати та використовувати .status.nominatedNodeName, але не повинні встановлювати його.
Коли ця опція вимкнена, kube-scheduler встановлює .status.nominatedNodeName лише перед запуском витіснення.
OpenAPIEnumsДозволяє заповнювати поля "enum" схем OpenAPI у специфікації, що повертається від сервера API.
OpportunisticBatchingВмикає повторне використання результатів планування з попереднього циклу планування для еквівалентних подів.
OrderedNamespaceDeletionПід час видалення простору імен ресурси podʼів будуть видалені перед рештою ресурсів.
PodAndContainerStatsFromCRIНалаштуйте kubelet на збір статистики контейнерів і Podʼів під час виконання CRI-контейнера, а не на збір статистики з cAdvisor. Починаючи з версії 1.26, це також включає збір метрик з CRI та надсилання їх за допомогою /metrics/cadvisor (замість того, щоб cAdvisor відправляв їх безпосередньо).
PodCertificateRequestВмикає обʼєкти PodCertificateRequest та джерела томів podCertificate, що проєцюються.
PodDeletionCostВмикає функцію Pod Deletion Cost, яка дозволяє користувачам впливати на порядок зменшення масштабу ReplicaSet.
PodIndexLabelДозволяє контролеру Job і контролеру StatefulSet додавати індекс Podʼів як мітку під час створення нових Podʼів. Докладніше дивіться в документах Режим завершення завдання та Мітка індексу Podʼів StatefulSet.
PodLevelResourcesВмикає Pod level resources: можливість визначати запити та ліміти ресурсів на рівні Podʼа, а не лише для контейнерів.
PodLifecycleSleepActionВмикає дію sleep в хуках життєвого циклу контейнера (preStop та postStart).
PodLifecycleSleepActionAllowZeroДозволяє встановлювати нульове значення для дії sleep в хуках життєвого циклу контейнера.
PodLogsQuerySplitStreamsДозволяє отримувати конкретні потоки логів (або stdout, або stderr) з потоків логів контейнера, використовуючи API Pod.
PodObservedGenerationTrackingДозволяє kubelet встановлювати observedGeneration у статусі Podʼів, а також дозволяє іншим компонентам встановлювати observedGeneration в станах Podʼів. Ця функція дозволяє відобразити metadata.generation Podʼу на момент запису статусу або стану. Зберігання цієї інформації допомагає уникнути ризиків, повʼязаних із втраченими оновленнями.
PodReadyToStartContainersConditionДозволяє kubelet позначати стан PodReadyToStartContainers для контейнерів Podʼів.
Раніше ця функціональна можливість була відома як PodHasNetworkCondition, а повʼязана з нею умова називалася PodHasNetwork.
PodSchedulingReadinessДозволяє встановлювати поле SchedulingGates для керування готовністю до виселення за розкладом.
PodTopologyLabelsAdmissionВмикає втулок доступу PodTopologyLabels. Докладні відомості наведено у статті Мітки топології podʼів.
PortForwardWebsocketsДозволити потокове передавання WebSocket підпротоколу portforward (port-forward) від клієнтів, які запитують версію v2 (v2.portforward.k8s.io) підпротоколу.
PreferSameTrafficDistributionДозволяє використовувати значення PreferSameZone та PreferSameNode у полі Service trafficDistribution.
PreventStaticPodAPIReferencesВідмовляє в допуску Podʼу, якщо статичні Pod'и посилаються на інші об'єкти API.
ProcMountTypeДозволяє керувати типом монтування proc для контейнерів, встановлюючи поле procMount Podʼа у securityContext.
QOSReservedДозволяє резервувати ресурси на рівні QoS, запобігаючи тим самим тому, щоб підсистеми на рівнях QoS нижчого рівня виходили за межі ресурсів, запитаних на рівнях QoS вищого рівня (наразі лише памʼять).
RecoverVolumeExpansionFailureДозволяє користувачам редагувати свої PVC до менших розмірів, щоб можна було відновити їх після попередніх збоїв під час розширення томів. Докладні відомості див. у статті Відновлення після збою під час розширення томів.
RecursiveReadOnlyMountsВмикає підтримку рекурсивних монтувань лише для читання. Докладні відомості наведено у статті монтування лише для читання.
ReduceDefaultCrashLoopBackOffDecayДозволяє зменшити як початкову затримку, так і максимальну затримку, що накопичується між перезапусками контейнерів для вузла для контейнерів у CrashLoopBackOff по всьому кластеру до 1s початкової затримки та 60s максимальної затримки.
RelaxedDNSSearchValidationПослаблює перевірку на стороні сервера рядка пошуку DNS (.spec.dnsConfig.searches) для контейнерів. Наприклад, з цією увімкненою можливістю можна включити символ _ до рядка пошуку імен DNS.
RelaxedEnvironmentVariableValidationДозволити майже всі друковані символи ASCII у змінних оточення.
RelaxedServiceNameValidationУможливлює спрощену перевірку імен обʼєктів Service, дозволяючи використовувати імена міток RFC 1123 замість імен міток RFC 1035.
Ця функція дозволяє іменам обʼєктів Service починатися з цифри.
ReloadKubeletServerCertificateFileДозволяє TLS-серверу kubelet оновлювати свій сертифікат, якщо вказаний файл сертифіката змінено.
Ця функція корисна при вказівці tlsCertFile і tlsPrivateKeyFile в конфігурації kubelet. Функція gate не впливає на інші випадки, такі як використання TLS bootstrap.
RemoteRequestHeaderUIDДозволяє серверу API приймати UID (ідентифікатори користувачів) через автентифікацію заголовка запиту. Це також змусить агрегатор API kube-apiserver додавати UID у стандартних заголовках під час пересилання запитів до серверів, що обслуговують агрегований API.
ResilientWatchCacheInitializationДозволяє відмовостійку ініціалізацію кешу watch, щоб уникнути перевантаження панелі управління.
ResourceHealthStatusВмикає поле allocatedResourcesStatus у файлі .status для Pod. У полі буде показано додаткові відомості для кожного контейнера у Pod, а також інформацію про стан кожного пристрою, призначеного для Pod.
Функціональна можливість застосовується до пристроїв, які керуються як втулками пристроїв, так і динамічним розподілом ресурсів. Див. Device plugin and unhealthy devices для отримання додаткової інформації.
RestartAllContainersOnContainerExitsДозволяє вказати RestartAllContainers як дію в контейнері restartPolicyRules. Коли вихід контейнера відповідає правилу з цією дією, весь Pod припиняється і перезапускається на місці. Дивіться Перезапуск усіх контейнерів для більш детальної інформації.
RetryGenerateNameДозволяє повторити спробу створення обʼєкта, коли API server очікується, що сервер API server згенерує name. Якщо цю можливість увімкнено, запити з використанням generateName будуть автоматично повторюватися, якщо панель управління виявить конфлікт імен з наявним обʼєктом, але не більше 8 спроб.
RetryGenerateNameДозволяє повторити спробу створення обʼєкта, коли очікується, що API server створить name.
Коли цю можливість увімкнено, запити з використанням generateName автоматично повторюються у випадку, якщо панель управління виявляє конфлікт імен з наявним обʼєктом, до обмеження у 8 спроб.
RotateKubeletServerCertificateВмикає ротацію серверного TLS-сертифікату в kubelet. Дивіться kubelet configuration для більш детальної інформації.
RuntimeClassInImageCriApiДозволяє витягувати зображення на основі класу виконання Podʼів, які посилаються на них.
SchedulerAsyncAPICallsЗмінює kube-scheduler, щоб зробити весь цикл планування вільним від блокуючих запитів до сервера API Kubernetes. Замість цього взаємодійте з API Kubernetes за допомогою асинхронного коду.
SchedulerAsyncPreemptionДозволяє запуск деяких вибагливих операцій в межах планувальника, повʼязаних з випередженням, асинхронно. Асинхронна обробка випередження покращує загальну продуктивність планування Pod.
SchedulerPopFromBackoffQПокращує поведінку черги планування, виштовхуючи pod'и з backoffQ, коли activeQ порожній. Це дозволяє обробляти потенційно заплановані pod'и якнайшвидше, усуваючи штрафний ефект черги backoff.
SchedulerQueueingHintsВмикає функцію покращення підказок планувальника, що дозволяє зменшити кількість марних перезапитів. Планувальник повторно спробує запланувати Podʼи, якщо щось зміниться у кластері, що може призвести до того, що Pod буде заплановано. Підказки щодо черги — це внутрішні сигнали, які дозволяють планувальнику відфільтрувати зміни у кластері, які мають відношення до незапланованого Podʼа, на основі попередніх спроб планування.
SELinuxChangePolicyВмикає поле spec.securityContext.seLinuxChangePolicy.
За допомогою цього поля можна відмовитися від застосування мітки SELinux до томів podʼів за допомогою параметрів монтування. Це потрібно, якщо один том, який підтримує монтування за допомогою параметрів монтування SELinux, використовується спільно з іншими томами, які мають різні мітки SELinux, наприклад, привілейованим і непривілейованим томами.
Увімкнення SELinuxChangePolicy вимагає увімкнення SELinuxMountReadWriteOncePod.
SELinuxMountПрискорює запуск контейнера, дозволяючи kubelet монтувати томи для Pod безпосередньо з правильною міткою SELinux замість того, щоб рекурсивно змінювати кожен файл на томах. Це розширює можливості покращення продуктивності за допомогою SELinuxMountReadWriteOncePod, поширюючи реалізацію на всі томи.
Для увімкнення SELinuxMount потрібно, щоб було увімкнено SELinuxChangePolicy.
SELinuxMountReadWriteOncePodПрискорює запуск контейнера, дозволяючи kubelet монтувати томи для Pod безпосередньо з правильною міткою SELinux замість того, щоб рекурсивно змінювати кожен файл на томах. Початкова реалізація була зосереджена на томах ReadWriteOncePod.
SeparateCacheWatchRPCДозволяє серверу API створювати спостереження в кеші на відділеному RPC. Це запобігає голодуванню кешу спостереження іншими спостереженнями.
SeparateTaintEvictionControllerДозволяє запускати контролер виселення на основі Taint, який виконує виселення на основі Taint, як окремий контролер (відокремлений від контролера життєвого циклу вузлів).
ServiceAccountNodeAudienceRestrictionЦя функціональна можливість використовується для обмеження аудиторії, для якої kubelet може запитувати токен службового облікового запису.
ServiceAccountTokenJTIКонтролює, чи вбудовуються JTI (UUID) у згенеровані токени службових облікових записів, і чи записуються ці JTI до логу аудиту Kubernetes для майбутніх запитів, зроблених цими токенами.
ServiceAccountTokenNodeBindingКонтролює, чи дозволяє сервер API привʼязувати токени службових облікових записів до обʼєктів Node.
ServiceAccountTokenNodeBindingValidationКерує тим, чи буде apiserver перевіряти посилання на Node у токенах службових облікових записів.
ServiceAccountTokenPodNodeInfoКерує тим, чи вбудовувати імʼя вузла та uid для повʼязаного з ним вузла при видачі токенів службових облікових записів, привʼязаних до обʼєктів Pod.
ServiceTrafficDistributionДозволяє використовувати необовʼязкове поле spec.trafficDistribution у Services. У цьому полі можна вказати параметри розподілу трафіку між точками доступу Service.
SidecarContainersДозволяє встановлювати restartPolicy контейнера init в значення Always, щоб контейнер ставав sidecar-контейнером (контейнери init, які можна перезапустити). Дивіться Контейнери Sidecar та restartPolicy для отримання більш детальної інформації.
SizeBasedListCostEstimateДозволяє APF використовувати розмір обʼєктів для оцінки вартості запиту.
StatefulSetAutoDeletePVCДозволяє використовувати необовʼязкове поле .spec.persistentVolumeClaimRetentionPolicy, що забезпечує контроль над видаленням PVC у життєвому циклі StatefulSet. Дивіться PersistentVolumeClaim retention для більш детальної інформації.
StatefulSetStartOrdinalДозволити налаштування порядкового номера старту у StatefulSet. Дивіться Початковий порядковий номер для більш детальної інформації.
StorageCapacityScoringУ версії 1.32 для підтримки сховищ зі статичним резервуванням використовувався елемент VolumeCapacityPriority. Починаючи з версії 1.33, новий елемент StorageCapacityScoring замінює старий елемент VolumeCapacityPriority з додатковою підтримкою сховищ з динамічним резервуванням. Коли StorageCapacityScoring увімкнено, втулок VolumeBinding у kube-scheduler розширено, щоб оцінювати вузли на основі місткості сховища на кожному з них. Ця функція застосовується до томів CSI, які підтримують Обсяг сховища, включно з локальним сховищем, яке підтримується драйвером CSI.
StorageNamespaceIndexВмикає індексатор простору імен для ресурсів, обмежених простором імен, в кеші сервера API для прискорення операцій list.
StorageVersionAPIВмикає API версії зберігання.
StorageVersionHashДозволити API-серверам показувати хеш версії сховища при відкритті.
StorageVersionMigratorВмикає міграцію версії сховища ресурсу.
StreamingCollectionEncodingToJSONДозволяє кодеру JSON сервера API кодувати колекції поелементно, а не всі одразу.
StreamingCollectionEncodingToProtobufДозволяє кодеру API сервера Protobuf кодувати колекції поелементно, а не всі одразу.
StrictCostEnforcementForVAPЗастосовує сувору валідацію витрат CEL для ValidatingAdmissionPolicies.
StrictCostEnforcementForWebhooksЗастосовує сувору перевірку вартості CEL для matchConditions у вебхуків допуску.
StrictIPCIDRValidationВикористовує суворішу перевірку для полів, що містять IP-адреси та значення CIDR.
Зокрема, з увімкненою функціональною можливістю, октети в IPv4-адресах не повинні містити початкових 0, а IPv4-відображені значення IPv6 (наприклад, ::ffff:192.168.0.1) заборонені. Такі значення потенційно можуть спричинити проблеми з безпекою, коли різні компоненти інтерпретують один і той самий рядок як такий, що посилається на різні IP-адреси (як у CVE-2021-29923).
Це посилення стосується лише полів у вбудованих типах API, а не користувацьких типів ресурсів, значень у конфігураційних файлах Kubernetes або аргументів командного рядка.
StructuredAuthenticationConfigurationВмикає конфігурацію структурованої автентифікації для сервера API.
StructuredAuthenticationConfigurationEgressSelectorДозволяє використання Egress Selector у Structured Authentication Configuration.
StructuredAuthenticationConfigurationJWKSMetricsВмикає додаткові метрики для операцій JSON Web Key Set (JWKS) в автентифікаторах JWT, налаштованих за допомогою --authentication-config. Коли ця опція увімкнена, сервер API записує метрики про останній час отримання JWKS та хеш-значення відповіді JWKS. Детальніше див. довідку про метрики.
StructuredAuthorizationConfigurationВмикає структуровану конфігурацію авторизації, щоб адміністратори кластера могли вказати більше одного webhook авторизації в ланцюжку обробників серверів API.
SupplementalGroupsPolicyВмикає підтримку детального контролю SupplementalGroups. Докладні відомості див. у статті Налаштування детального контролю SupplementalGroups для Podʼа.
SystemdWatchdogДозволяє використання systemd watchdog для моніторингу статусу справності kubelet. Див. Kubelet Systemd Watchdog для отримання додаткових відомостей.
TaintTolerationComparisonOperatorsДозволяє використовувати оператори числового порівняння (Lt та Gt) для толерантності.
TokenRequestServiceAccountUIDValidationЦе використовується для того, щоб переконатися, що UID, вказаний у TokenRequest, відповідає UID ServiceAccount, для якого запитується токен. Це допомагає запобігти зловживанню API TokenRequest, гарантуючи, що токени видаються тільки для правильного ServiceAccount.
TopologyAwareHintsВмикає маршрутизацію з урахуванням топології на основі підказок топології у EndpointSlices. Див. статтю Підказки з урахуванням топології для отримання детальнішої інформації.
TopologyManagerPolicyAlphaOptionsДозволяє тонке налаштування політик менеджера топології, експериментальні варіанти з альфа-якістю. Ця функціональна можливість захищає групу параметрів менеджера топології, рівень якості яких є альфа. Ця функціональна можливість ніколи не перейде до бета-версії або стабільної версії.
TopologyManagerPolicyBetaOptionsДозволяє тонке налаштування політик менеджера топології, експериментальні варіанти з бета-якістю. Ця функціональна можливість захищає групу параметрів менеджера топології, рівень якості яких є бета. Ця функціональна можливість ніколи не перейде до стабільної версії.
TopologyManagerPolicyOptionsВмикає тонке налаштування політик менеджера топології.
TranslateStreamCloseWebsocketRequestsДозволити WebSocket потік підпротоколу віддалених команд (exec, cp, attach) від клієнтів, які запитують версію 5 (v5) підпротоколу.
UnauthenticatedHTTP2DOSMitigationВмикає помʼякшення наслідків відмови в обслуговуванні (DoS) HTTP/2 для неавторизованих клієнтів. У версіях Kubernetes від 1.28.0 до 1.28.2 ця функція не включена.
UnknownVersionInteroperabilityProxyПроксі-запити ресурсів до правильного однорангового kube-apiserver, коли існує декілька kube-апісерверів у різних версіях. Докладнішу інформацію наведено у статті Проксі змішаних версій.
UserNamespacesHostNetworkSupportКоли ця опція увімкнена, поди можуть одночасно використовувати як hostNetwork, так і Простори імен користувачів.
UserNamespacesSupportВмикання підтримки простору імен користувача для Podʼів.
VolumeAttributesClassВмикання підтримки класів VolumeAttributesClasses. Докладні відомості див. у статті Класи атрибутів томів.
VolumeLimitScalingВмикає масштабування обмеження томів для драйверів CSI. Це дозволяє планувальнику краще координувати роботу з кластерним автомасштабувальником для обмежень сховища. Дивіться Обмеження сховища для отримання додаткової інформації.
WatchCacheInitializationPostStartHookВмикає post-start-hook для ініціалізації watchcache як частину readyz (з таймаутом).
WatchFromStorageWithoutResourceVersionДозволяє watch без resourceVersion працювати зі сховища.
WatchListВмикання підтримки потокового передавання початкового стану обʼєктів у запитах на спостереження.
WatchListClientДозволяє клієнту API запитувати потік даних замість отримання повного списку. Ця функціональність доступна в client-go і вимагає, щоб на сервері була ввімкнена функція WatchList. Якщо WatchList не підтримується на сервері, клієнт повернеться до стандартного запиту списку.
WindowsCPUAndMemoryAffinityДодає підтримку спорідненості CPU та памʼяті до вузлів Windows за допомогою CPUManager, MemoryManager та менеджера топології.
WindowsGracefulNodeShutdownВмикає підтримку у kubelet підтримки належного завершення роботи вузла Windows. Під час вимкнення системи kubelet намагатиметься виявити подію вимкнення і належним чином завершити роботу podʼів, запущених на вузлі. Докладніші відомості наведено у статті Graceful Node Shutdown.
WindowsHostNetworkВмикає підтримку приєднання контейнерів Windows до мережевого простору імен хостів.
WinDSRДозволяє kube-proxy створювати DSR-балансувальники навантаження для Windows.
WinOverlayДозволяє kube-proxy працювати в режимі оверлею для Windows.
storage.k8s.io/v1beta1/csistoragecapacities, встановіть --runtime-config=storage.k8s.io/v1beta1/csistoragecapacities. Докладнішу інформацію про прапорці командного рядка наведено в Версіювання API.