From 87f943cf8bd207084251460285d26706fc79a242 Mon Sep 17 00:00:00 2001 From: windsonsea Date: Fri, 10 Nov 2023 18:15:22 +0800 Subject: [PATCH] [zh] Sync feature-gates.md --- .../feature-gates.md | 249 ++++++------------ 1 file changed, 86 insertions(+), 163 deletions(-) diff --git a/content/zh-cn/docs/reference/command-line-tools-reference/feature-gates.md b/content/zh-cn/docs/reference/command-line-tools-reference/feature-gates.md index 5ae43d503b..72e4f5bdba 100644 --- a/content/zh-cn/docs/reference/command-line-tools-reference/feature-gates.md +++ b/content/zh-cn/docs/reference/command-line-tools-reference/feature-gates.md @@ -125,18 +125,18 @@ For a reference to old feature gates that are removed, please refer to | `CPUManagerPolicyBetaOptions` | `true` | Beta | 1.23 | | | `CPUManagerPolicyOptions` | `false` | Alpha | 1.22 | 1.22 | | `CPUManagerPolicyOptions` | `true` | Beta | 1.23 | | -| CRDValidationRatcheting | false | Alpha | 1.28 | +| `CRDValidationRatcheting` | `false` | Alpha | 1.28 | | | `CSIMigrationPortworx` | `false` | Alpha | 1.23 | 1.24 | | `CSIMigrationPortworx` | `false` | Beta | 1.25 | | | `CSINodeExpandSecret` | `false` | Alpha | 1.25 | 1.26 | | `CSINodeExpandSecret` | `true` | Beta | 1.27 | | | `CSIVolumeHealth` | `false` | Alpha | 1.21 | | -| `CloudControllerManagerWebhook` | false | Alpha | 1.27 | | -| `CloudDualStackNodeIPs` | false | Alpha | 1.27 | | -| `ClusterTrustBundle` | false | Alpha | 1.27 | | +| `CloudControllerManagerWebhook` | `false` | Alpha | 1.27 | | +| `CloudDualStackNodeIPs` | `false` | Alpha | 1.27 | | +| `ClusterTrustBundle` | `false` | Alpha | 1.27 | | | `ComponentSLIs` | `false` | Alpha | 1.26 | 1.26 | | `ComponentSLIs` | `true` | Beta | 1.27 | | -| `ConsistentListFromCache` | `false` | Alpha | 1.28 | +| `ConsistentListFromCache` | `false` | Alpha | 1.28 | | | `ContainerCheckpoint` | `false` | Alpha | 1.25 | | | `ContextualLogging` | `false` | Alpha | 1.24 | | | `CronJobsScheduledAnnotation` | `true` | Beta | 1.28 | | @@ -148,9 +148,9 @@ For a reference to old feature gates that are removed, please refer to | `DisableCloudProviders` | `false` | Alpha | 1.22 | | | `DisableKubeletCloudCredentialProviders` | `false` | Alpha | 1.23 | | | `DynamicResourceAllocation` | `false` | Alpha | 1.26 | | -| `ElasticIndexedJob` | `true` | Beta` | 1.27 | | +| `ElasticIndexedJob` | `true` | Beta | 1.27 | | | `EventedPLEG` | `false` | Alpha | 1.26 | 1.26 | -| `EventedPLEG` | `false` | Beta | 1.27 | - | +| `EventedPLEG` | `false` | Beta | 1.27 | | | `GracefulNodeShutdown` | `false` | Alpha | 1.20 | 1.20 | | `GracefulNodeShutdown` | `true` | Beta | 1.21 | | | `GracefulNodeShutdownBasedOnPodPriority` | `false` | Alpha | 1.23 | 1.23 | @@ -263,7 +263,7 @@ For a reference to old feature gates that are removed, please refer to | `ValidatingAdmissionPolicy` | `false` | Alpha | 1.26 | 1.27 | | `ValidatingAdmissionPolicy` | `false` | Beta | 1.28 | | | `VolumeCapacityPriority` | `false` | Alpha | 1.21 | | -| `WatchList` | false | Alpha | 1.27 | | +| `WatchList` | `false` | Alpha | 1.27 | | | `WinDSR` | `false` | Alpha | 1.14 | | | `WinOverlay` | `false` | Alpha | 1.14 | 1.19 | | `WinOverlay` | `true` | Beta | 1.20 | | @@ -421,7 +421,8 @@ A *Beta* feature means: **Beta** 特性代表: -- `ContainerCheckpoint`:启用 kubelet `checkpoint` API。 - 参阅 [Kubelet Checkpoint API](/zh-cn/docs/reference/node/kubelet-checkpoint-api/) 获取更多详细信息。 -- `ControllerManagerLeaderMigration`:为 - [kube-controller-manager](/zh-cn/docs/tasks/administer-cluster/controller-manager-leader-migration/#initial-leader-migration-configuration) 和 - [cloud-controller-manager](/zh-cn/docs/tasks/administer-cluster/controller-manager-leader-migration/#deploy-cloud-controller-manager) - 启用 Leader 迁移,它允许集群管理者在没有停机的高可用集群环境下,实时把 kube-controller-manager - 迁移到外部的 controller-manager (例如 cloud-controller-manager) 中。 - -- `CSIInlineVolume`:为 Pod 启用 CSI 内联卷支持。 -- `CSIMigration`:确保封装和转换逻辑能够将卷操作从内嵌插件路由到相应的预安装 CSI 插件。 - -- `CSIMigrationAWS`:确保填充和转换逻辑能够将卷操作从 AWS-EBS 内嵌插件路由到 EBS CSI 插件。 - 如果节点禁用了此特性门控或者未安装和配置 EBS CSI 插件,支持回退到内嵌 EBS 插件来执行卷挂载操作。 - 不支持回退到这些插件来执行卷制备操作,因为需要安装并配置 CSI 插件。 - -- `CSIMigrationAzureDisk`:确保填充和转换逻辑能够将卷操作从 AzureDisk 内嵌插件路由到 - Azure 磁盘 CSI 插件。对于禁用了此特性的节点或者没有安装并配置 AzureDisk CSI - 插件的节点,支持回退到内嵌(in-tree)AzureDisk 插件来执行磁盘挂载操作。 - 不支持回退到内嵌插件来执行磁盘制备操作,因为对应的 CSI 插件必须已安装且正确配置。 - 此特性需要启用 CSIMigration 特性标志。 - - `CloudControllerManagerWebhook`:启用在云控制器管理器中的 Webhook。 - `CloudDualStackNodeIPs`:允许在外部云驱动中通过 `kubelet --node-ip` 设置双协议栈。 - 有关详细信息,请参阅[配置 IPv4/IPv6 双协议栈](/zh-cn/docs/concepts/services-networking/dual-stack/#configure-ipv4-ipv6-dual-stack)。 + 有关详细信息,请参阅[配置 IPv4/IPv6 双协议栈](/zh-cn/docs/concepts/services-networking/dual-stack/#configure-ipv4-ipv6-dual-stack)。 - `ClusterTrustBundle`:启用 ClusterTrustBundle 对象和 kubelet 集成。 - `ComponentSLIs`: 在 kubelet、kube-scheduler、kube-proxy、kube-controller-manager、cloud-controller-manager 等 Kubernetes 组件上启用 `/metrics/slis` 端点,从而允许你抓取健康检查指标。 @@ -684,12 +636,13 @@ Each feature gate is designed for enabling/disabling a specific feature: - `CronJobTimeZone`:允许在 [CronJobs](/zh-cn/docs/concepts/workloads/controllers/cron-jobs/) 中使用 `timeZone` 可选字段。 - `DisableCloudProviders`:禁用 `kube-apiserver`,`kube-controller-manager` 和 `kubelet` 组件的 `--cloud-provider` 标志相关的所有功能。 @@ -742,9 +694,8 @@ Each feature gate is designed for enabling/disabling a specific feature: - `DownwardAPIHugePages`: 允许在[下行(Downward)API](/zh-cn/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information) 中使用巨页信息。 -- `DynamicResourceAllocation`:启用对具有自定义参数和生命周期的资源的支持。 -- `EphemeralContainers`:启用添加 - {{< glossary_tooltip text="临时容器" term_id="ephemeral-container" >}} - 到正在运行的 Pod 的特性。 - `EventedPLEG`:启用此特性后,kubelet 能够通过 {{}} 扩展从{{< glossary_tooltip text="容器运行时" term_id="container-runtime" >}}接收容器生命周期事件。 (PLEG 是 `Pod lifecycle event generator` 的缩写,即 Pod 生命周期事件生成器)。 @@ -789,25 +734,15 @@ Each feature gate is designed for enabling/disabling a specific feature: 该缺陷导致 Kubernetes 会忽略 exec 探针的超时值设置。 参阅[就绪态探针](/zh-cn/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes). -- `ExpandCSIVolumes`:启用扩展 CSI 卷。 - `ExpandedDNSConfig`:在 kubelet 和 kube-apiserver 上启用后, 允许使用更多的 DNS 搜索域和搜索域列表。此功能特性需要容器运行时 - (Containerd:v1.5.6 或更高,CRI-O:v1.22 或更高)的支持。 + (containerd v1.5.6 或更高,CRI-O v1.22 或更高)的支持。 参阅[扩展 DNS 配置](/zh-cn/docs/concepts/services-networking/dns-pod-service/#expanded-dns-configuration). -- `ExpandInUsePersistentVolumes`:启用扩充使用中的 PVC 的尺寸。 - 请查阅[调整使用中的 PersistentVolumeClaim 的大小](/zh-cn/docs/concepts/storage/persistent-volumes/#resizing-an-in-use-persistentvolumeclaim)。 -- `ExpandPersistentVolumes`:允许扩充持久卷。 - 请查阅[扩展持久卷申领](/zh-cn/docs/concepts/storage/persistent-volumes/#expanding-persistent-volumes-claims)。 - `GracefulNodeShutdownBasedOnPodPriority`:允许 kubelet 在体面终止节点时检查 Pod 的优先级。 -- `GRPCContainerProbe`:为 LivenessProbe、ReadinessProbe、StartupProbe 启用 gRPC 探针。 +- `GRPCContainerProbe`:为活跃态、就绪态和启动探针启用 gRPC 探针。 参阅[配置活跃态、就绪态和启动探针](/zh-cn/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-grpc-liveness-probe)。 - `HonorPVReclaimPolicy`:无论 PV 和 PVC 的删除顺序如何,当持久卷申领的策略为 `Delete` 时,确保这种策略得到处理。 @@ -860,10 +795,6 @@ Each feature gate is designed for enabling/disabling a specific feature: - `IPTablesOwnershipCleanup`:这使得 kubelet 不再创建传统的 iptables 规则。 - `InPlacePodVerticalScaling`:启用就地 Pod 垂直扩缩。 -- `IdentifyPodOS`:允许设置 Pod 的 OS 字段。这一设置有助于在 API 服务器准入期间确定性地辨识 - Pod 的 OS。在 Kubernetes {{< skew currentVersion >}} 中,`pod.spec.os.name` 可选的值包括 - `windows` 和 `linux`。 -- `ImmutableEphemeralVolumes`:允许将各个 Secret 和 ConfigMap 标记为不可变更的, - 以提高安全性和性能。 -- `IngressClassNamespacedParams`:允许在 `IngressClass` 资源中使用名字空间范围的参数引用。 - 此功能为 `IngressClass.spec.parameters` 添加了两个字段 - `scope` 和 `namespace`。 -- `Initializers`:允许使用 Intializers 准入插件来异步协调对象创建操作。 - `InTreePluginAWSUnregister`:在 kubelet 和卷控制器上关闭注册 aws-ebs 内嵌插件。 - `InTreePluginAzureDiskUnregister`:在 kubelet 和卷控制器上关闭注册 azuredisk 内嵌插件。 - `InTreePluginAzureFileUnregister`:在 kubelet 和卷控制器上关闭注册 azurefile 内嵌插件。 @@ -899,68 +822,62 @@ Each feature gate is designed for enabling/disabling a specific feature: - `InTreePluginvSphereUnregister`:在 kubelet 和卷控制器上关闭注册 vSphere 内嵌插件。 -- `IndexedJob`:允许 [Job](/zh-cn/docs/concepts/workloads/controllers/job/) - 控制器根据完成索引来管理 Pod 完成。 -- `IngressClassNamespacedParams`:允许在 `IngressClass` 资源中引用名字空间范围的参数。 - 该特性增加了两个字段 —— `scope`、`namespace` 到 `IngressClass.spec.parameters`。 -- `Initializers`: 使用 Initializers 准入插件允许异步协调对象创建。 -- `JobMutableNodeSchedulingDirectives`:允许在 [Job](/zh-cn/docs/concepts/workloads/controllers/job) +- `JobMutableNodeSchedulingDirectives`:允许在 [Job](/zh-cn/docs/concepts/workloads/controllers/job/) 的 Pod 模板中更新节点调度指令。 - `JobBackoffLimitPerIndex`:允许在索引作业中指定每个索引的最大 Pod 重试次数。 - `JobPodFailurePolicy`:允许用户根据容器退出码和 Pod 状况来指定 Pod 失效的处理方法。 -- `JobPodReplacementPolicy`:允许你在 [Job](/zh-cn/docs/concepts/workloads/controllers/job) +- `JobPodReplacementPolicy`:允许你在 [Job](/zh-cn/docs/concepts/workloads/controllers/job/) 中为终止的 Pod 指定替代 Pod。 - `JobReadyPods`:允许跟踪[状况](/zh-cn/docs/concepts/workloads/pods/pod-lifecycle/#pod-conditions)为 `Ready` 的 Pod 的个数。`Ready` 的 Pod 记录在 - [Job](/zh-cn/docs/concepts/workloads/controllers/job) 对象的 + [Job](/zh-cn/docs/concepts/workloads/controllers/job/) 对象的 [status](/zh-cn/docs/reference/kubernetes-api/workload-resources/job-v1/#JobStatus) 字段中。 -- `JobTrackingWithFinalizers`:启用跟踪 [Job](/zh-cn/docs/concepts/workloads/controllers/job) +- `JobTrackingWithFinalizers`:启用跟踪 [Job](/zh-cn/docs/concepts/workloads/controllers/job/) 完成情况,而不是永远从集群剩余 Pod 来获取信息判断完成情况。Job 控制器使用 Pod finalizers 和 Job 状态中的一个字段来跟踪已完成的 Pod 以计算完成。 - `KMSv1`:启用 KMS v1 API 以进行数据静态加密。 - 详情参见[使用 KMS 提供程序进行数据加密](/zh-cn/docs/tasks/administer-cluster/kms-provider)。 + 详情参见[使用 KMS 提供程序进行数据加密](/zh-cn/docs/tasks/administer-cluster/kms-provider/)。 - `KMSv2`:启用 KMS v2 API 以实现静态加密。 - 详情参见[使用 KMS 驱动进行数据加密](/zh-cn/docs/tasks/administer-cluster/kms-provider)。 + 详情参见[使用 KMS 驱动进行数据加密](/zh-cn/docs/tasks/administer-cluster/kms-provider/)。 - `KMSv2KDF`:启用 KMS v2 以生成一次性数据加密密钥。 - 详情参见[使用 KMS 提供程序进行数据加密](/zh-cn/docs/tasks/administer-cluster/kms-provider)。 + 详情参见[使用 KMS 提供程序进行数据加密](/zh-cn/docs/tasks/administer-cluster/kms-provider/)。 如果 `KMSv2` 特性门控在你的集群未被启用 ,则 `KMSv2KDF` 特性门控的值不会产生任何影响。 - `KubeProxyDrainingTerminatingNodes`:为 `externalTrafficPolicy: Cluster` 服务实现正终止节点的连接排空。 - `KubeletCgroupDriverFromCRI`:启用检测来自 {{}} @@ -981,7 +898,7 @@ Each feature gate is designed for enabling/disabling a specific feature: 也可以在支持 `RuntimeConfig` CRI 调用的 CRI 容器运行时所在节点上使用此特性门控。 如果 CRI 和 kubelet 都支持此特性,kubelet 将忽略 `cgroupDriver` 配置设置(或已弃用的 `--cgroup-driver` 命令行参数)。 如果你启用此特性门控但容器运行时不支持它,则 kubelet 将回退到使用通过 `cgroupDriver` 配置设置进行配置的驱动。 - 详情参见[配置 cgroup 驱动](/zh-cn/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver)。 + 详情参见[配置 cgroup 驱动](/zh-cn/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/)。 - `KubeletPodResources`:启用 kubelet 上 Pod 资源 GRPC 端点。更多详细信息, 请参见[支持设备监控](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/compute-device-assignment.md)。 @@ -1007,15 +924,16 @@ Each feature gate is designed for enabling/disabling a specific feature: 该 API 增强了[资源分配报告](/zh-cn/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/#monitoring-device-plugin-resources) 包含有关可分配资源的信息,使客户端能够正确跟踪节点上的可用计算资源。 -- `KubeletPodResourcesDynamicResources`:扩展 kubelet 的 pod 资源 gRPC 端点以包括通过 `DynamicResourceAllocation` API 在 `ResourceClaims` 中分配的资源。 - 有关详细信息,请参阅[资源分配报告](/zh-cn/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/#monitoring-device-plugin-resources)。 +- `KubeletPodResourcesDynamicResources`:扩展 kubelet 的 pod 资源 gRPC 端点以包括通过 + `DynamicResourceAllocation` API 在 `ResourceClaims` 中分配的资源。 + 有关详细信息,请参阅[资源分配报告](/zh-cn/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/#monitoring-device-plugin-resources)。 - `KubeletTracing`:新增在 Kubelet 中对分布式追踪的支持。 启用时,kubelet CRI 接口和经身份验证的 http 服务器被插桩以生成 OpenTelemetry 追踪 span。 参阅[针对 Kubernetes 系统组件的追踪](/zh-cn/docs/concepts/cluster-administration/system-traces/) @@ -1037,10 +956,6 @@ Each feature gate is designed for enabling/disabling a specific feature: - `LegacyServiceAccountTokenTracking`:跟踪使用基于 Secret 的[服务账号令牌](/zh-cn/docs/concepts/security/service-accounts/#get-a-token)。 -- `LocalStorageCapacityIsolation`:允许使用 - [本地临时存储](/zh-cn/docs/concepts/configuration/manage-resources-containers/) - 以及 [emptyDir 卷](/zh-cn/docs/concepts/storage/volumes/#emptydir)的 `sizeLimit` 属性。 - `LocalStorageCapacityIsolationFSQuotaMonitoring`:如果 [本地临时存储](/zh-cn/docs/concepts/configuration/manage-resources-containers/)启用了 `LocalStorageCapacityIsolation`,并且 @@ -1132,16 +1044,17 @@ Each feature gate is designed for enabling/disabling a specific feature: - `NodeOutOfServiceVolumeDetach`:当使用 `node.kubernetes.io/out-of-service` @@ -1158,11 +1071,13 @@ Each feature gate is designed for enabling/disabling a specific feature: - `PersistentVolumeLastPhaseTransitionTime`:为 PersistentVolume 添加一个新字段,用于保存卷上一次转换阶段的时间戳。 - `PodAndContainerStatsFromCRI`:配置 kubelet 从 CRI 容器运行时中而不是从 cAdvisor 中采集容器和 Pod 统计信息。 @@ -1173,7 +1088,10 @@ Each feature gate is designed for enabling/disabling a specific feature: @@ -1186,9 +1104,10 @@ Each feature gate is designed for enabling/disabling a specific feature: [PodReadyToStartContainers](/zh-cn/docs/concepts/workloads/pods/pod-lifecycle/#pod-has-network) 状况。 此前(1.25-1.27 版本)称为 `PodHasNetworkCondition`。 -- `PodSchedulingReadiness`:启用设置 `schedulingGates` 字段以控制 Pod 的[调度就绪](/zh-cn/docs/concepts/scheduling-eviction/pod-scheduling-readiness)。 +- `PodSchedulingReadiness`:启用设置 `schedulingGates` 字段以控制 Pod 的[调度就绪](/zh-cn/docs/concepts/scheduling-eviction/pod-scheduling-readiness/)。 +- `SeccompDefault`:启用 `RuntimeDefault` 作为所有工作负载的默认 seccomp 配置文件。 + 此 seccomp 配置文件在 Pod 和/或 Container 的 `securityContext` 中被指定。 - `SecurityContextDeny`: 此门控表示 `SecurityContextDeny` 准入控制器已弃用。 - `ServerSideApply`:在 API 服务器上启用[服务器端应用(SSA)](/zh-cn/docs/reference/using-api/server-side-apply/)。 - `ServerSideFieldValidation`:启用服务器端字段验证。 @@ -1316,9 +1239,8 @@ Each feature gate is designed for enabling/disabling a specific feature: - `StorageVersionHash`:允许 API 服务器在版本发现中公开存储版本的哈希值。