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 4b7197fc60..8e3b0e8d12 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 @@ -54,7 +54,7 @@ flag assigned to a list of feature pairs: 传递一个特性设置键值对列表: ```shell ---feature-gates="...,GracefulNodeShutdown=true" +--feature-gates=...,GracefulNodeShutdown=true ``` - `Accelerators`:使用 Docker Engine 时启用 Nvidia GPU 支持。这一特性不再提供。 - 关于替代方案,请参阅[设备插件](/zh/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/)。 -- `AdvancedAuditing`:启用[高级审计功能](/zh/docs/tasks/debug/debug-cluster/audit/#advanced-audit)。 -- `AffinityInAnnotations`:启用 [Pod 亲和或反亲和](/zh/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity)。 + 关于替代方案,请参阅[设备插件](/zh-cn/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/)。 +- `AdvancedAuditing`:启用[高级审计功能](/zh-cn/docs/tasks/debug/debug-cluster/audit/#advanced-audit)。 +- `AffinityInAnnotations`:启用 [Pod 亲和或反亲和](/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity)。 - `AllowExtTrafficLocalEndpoints`:启用服务用于将外部请求路由到节点本地终端。 - `AllowInsecureBackendProxy`:允许用户在执行 Pod 日志访问请求时跳过 TLS 验证。 - `AnyVolumeDataSource`: 允许使用任何自定义的资源来做作为 {{< glossary_tooltip text="PVC" term_id="persistent-volume-claim" >}} 中的 `DataSource`. -- `AppArmor`:在 Linux 节点上为 Pod 启用基于 AppArmor 机制的强制访问控制。 - 请参见 [AppArmor 教程](/zh/docs/tutorials/security/apparmor/) 获取详细信息。 +- `AppArmor`:在 Linux 节点上为 Pod 启用 AppArmor 机制的强制访问控制。 + 请参见 [AppArmor 教程](/zh-cn/docs/tutorials/security/apparmor/)获取详细信息。 - `AttachVolumeLimit`:启用卷插件用于报告可连接到节点的卷数限制。有关更多详细信息,请参阅 - [动态卷限制](/zh/docs/concepts/storage/storage-limits/#dynamic-volume-limits)。 + [动态卷限制](/zh-cn/docs/concepts/storage/storage-limits/#dynamic-volume-limits)。 - `BalanceAttachedNodeVolumes`:在进行平衡资源分配的调度时,考虑节点上的卷数。 调度器在决策时会优先考虑 CPU、内存利用率和卷数更近的节点。 - `BlockVolume`:在 Pod 中启用原始块设备的定义和使用。有关更多详细信息,请参见 - [原始块卷支持](/zh/docs/concepts/storage/persistent-volumes/#raw-block-volume-support)。 + [原始块卷支持](/zh-cn/docs/concepts/storage/persistent-volumes/#raw-block-volume-support)。 - `BoundServiceAccountTokenVolume`:迁移 ServiceAccount 卷以使用由 ServiceAccountTokenVolumeProjection 组成的投射卷。集群管理员可以使用 `serviceaccount_stale_tokens_total` 度量值来监控依赖于扩展令牌的负载。 @@ -775,23 +778,25 @@ Each feature gate is designed for enabling/disabling a specific feature: [绑定服务账号令牌](https://github.com/kubernetes/enhancements/blob/master/keps/sig-auth/1205-bound-service-account-tokens/README.md) 获取更多详细信息。 - `ControllerManagerLeaderMigration`: 为 - [kube-controller-manager](/zh/docs/tasks/administer-cluster/controller-manager-leader-migration/#initial-leader-migration-configuration) 和 - [cloud-controller-manager](/zh/docs/tasks/administer-cluster/controller-manager-leader-migration/#deploy-cloud-controller-manager) + [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) 中。 - `CPUManager`:启用容器级别的 CPU 亲和性支持,有关更多详细信息,请参见 - [CPU 管理策略](/zh/docs/tasks/administer-cluster/cpu-management-policies/)。 + [CPU 管理策略](/zh-cn/docs/tasks/administer-cluster/cpu-management-policies/)。 - `CPUManagerPolicyAlphaOptions`:允许对 CPUManager 策略进行微调,针对试验性的、 alpha 质量级别的选项。 此特性门控用来保护一组质量级别为 alpha 的 CPUManager 选项。 @@ -802,12 +807,15 @@ Each feature gate is designed for enabling/disabling a specific feature: 此特性门控永远不会被升级为稳定版本。 - `CPUManagerPolicyOptions`: 允许微调 CPU 管理策略。 - `CRIContainerLogRotation`:为 CRI 容器运行时启用容器日志轮换。日志文件的默认最大大小为 10MB,缺省情况下,一个容器允许的最大日志文件数为5。这些值可以在kubelet配置中配置。 - 更多细节请参见 [日志架构](/zh/docs/concepts/cluster-administration/logging/#logging-at-the-node-level)。 + 更多细节请参见[日志架构](/zh-cn/docs/concepts/cluster-administration/logging/#logging-at-the-node-level)。 - `CSIBlockVolume`:启用外部 CSI 卷驱动程序用于支持块存储。有关更多详细信息,请参见 - [`csi` 原始块卷支持](/zh/docs/concepts/storage/volumes/#csi-raw-block-volume-support)。 + [`csi` 原始块卷支持](/zh-cn/docs/concepts/storage/volumes/#csi-raw-block-volume-support)。 - `CSIDriverRegistry`:在 csi.storage.k8s.io 中启用与 CSIDriver API 对象有关的所有逻辑。 - `CSIInlineVolume`:为 Pod 启用 CSI 内联卷支持。 - `CSIMigration`:确保封装和转换逻辑能够将卷操作从内嵌插件路由到相应的预安装 CSI 插件。 @@ -859,8 +867,8 @@ Each feature gate is designed for enabling/disabling a specific feature: AzureDisk CSI plugin. Requires CSIMigration and CSIMigrationAzureDisk feature flags enabled and AzureDisk CSI plugin installed and configured on all nodes in the cluster. This flag has been deprecated in favor of the - `InTreePluginAzureFileUnregister` feature flag which prevents the registration - of in-tree AzureFile plugin. + `InTreePluginAzureDiskUnregister` feature flag which prevents the registration + of in-tree AzureDisk plugin. --> - `CSIMigrationAzureDisk`:确保填充和转换逻辑能够将卷操作从 AzureDisk 内嵌插件路由到 Azure 磁盘 CSI 插件。对于禁用了此特性的节点或者没有安装并配置 AzureDisk CSI @@ -886,7 +894,8 @@ Each feature gate is designed for enabling/disabling a specific feature: AzureFile CSI plugin. Requires CSIMigration and CSIMigrationAzureFile feature flags enabled and AzureFile CSI plugin installed and configured on all nodes in the cluster. This flag has been deprecated in favor of the - `InTreePluginAzureFileUnregister` feature flag which prevents the registration of in-tree AzureFile plugin. + `InTreePluginAzureFileUnregister` feature flag which prevents the registration + of in-tree AzureFile plugin. --> - `CSIMigrationAzureFile`:确保封装和转换逻辑能够将卷操作从 AzureFile 内嵌插件路由到 AzureFile CSI 插件。对于禁用了此特性的节点或者没有安装并配置 AzureFile CSI @@ -911,7 +920,8 @@ Each feature gate is designed for enabling/disabling a specific feature: route volume operations from the GCE-PD in-tree plugin to PD CSI plugin. Requires CSIMigration and CSIMigrationGCE feature flags enabled and PD CSI plugin installed and configured on all nodes in the cluster. This flag has - been deprecated in favor of the `InTreePluginGCEUnregister` feature flag which prevents the registration of in-tree GCE PD plugin. + been deprecated in favor of the `InTreePluginGCEUnregister` feature flag which + prevents the registration of in-tree GCE PD plugin. --> - `CSIMigrationGCE`:启用填充和转换逻辑,将卷操作从 GCE-PD 内嵌插件路由到 PD CSI 插件。对于禁用了此特性的节点或者没有安装并配置 PD CSI 插件的节点, @@ -924,19 +934,6 @@ Each feature gate is designed for enabling/disabling a specific feature: 安装和配置 PD CSI 插件。该特性标志已被废弃,取而代之的是 能防止注册内嵌 GCE PD 插件的 `InTreePluginGCEUnregister` 特性标志。 -- `csiMigrationRBD`:启用填充和转换逻辑,将卷操作从 RBD 的内嵌插件路由到 Ceph RBD - CSI 插件。此特性要求 CSIMigration 和 csiMigrationRBD 特性标志均被启用, - 且集群中安装并配置了 Ceph CSI 插件。此标志已被弃用,以鼓励使用 - `InTreePluginRBDUnregister` 特性标志。后者会禁止注册内嵌的 RBD 插件。 - - `CSIMigrationOpenStack`:确保填充和转换逻辑能够将卷操作从 Cinder 内嵌插件路由到 Cinder CSI 插件。对于禁用了此特性的节点或者没有安装并配置 Cinder CSI 插件的节点, @@ -962,6 +960,18 @@ Each feature gate is designed for enabling/disabling a specific feature: 安装和配置 Cinder CSI 插件。该特性标志已被弃用,取而代之的是 能防止注册内嵌 OpenStack Cinder 插件的 `InTreePluginOpenStackUnregister` 特性标志。 +- `csiMigrationRBD`:启用填充和转换逻辑,将卷操作从 RBD 的内嵌插件路由到 Ceph RBD + CSI 插件。此特性要求 CSIMigration 和 csiMigrationRBD 特性标志均被启用, + 且集群中安装并配置了 Ceph CSI 插件。此标志已被弃用,以鼓励使用 + `InTreePluginRBDUnregister` 特性标志。后者会禁止注册内嵌的 RBD 插件。 + - `CSIMigrationvSphere`: 允许封装和转换逻辑将卷操作从 vSphere 内嵌插件路由到 vSphere CSI 插件。如果节点禁用了此特性门控或者未安装和配置 vSphere CSI 插件, @@ -989,15 +1000,14 @@ Each feature gate is designed for enabling/disabling a specific feature: - `CSIMigrationPortworx`:启用填充和转换逻辑,将卷操作从 Portworx 内嵌插件路由到 - Portworx CSI 插件。需要在集群中安装并配置 Portworx CSI 插件,并针对 kube-controller-manager - 和 kubelet 配置启用特性门控 `CSIMigrationPortworx=true`。 + Portworx CSI 插件。需要在集群中安装并配置 Portworx CSI 插件. -- `CSINodeInfo`:在 csi.storage.k8s.io 中启用与 CSINodeInfo API 对象有关的所有逻辑。 +- `CSINodeInfo`:在 `csi.storage.k8s.io` 中启用与 CSINodeInfo API 对象有关的所有逻辑。 - `CSIPersistentVolume`:启用发现和挂载通过 - [CSI(容器存储接口)](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/storage/container-storage-interface.md) + [CSI(容器存储接口)](https://git.k8s.io/design-proposals-archive/storage/container-storage-interface.md) 兼容卷插件配置的卷。 - `CSIServiceAccountToken`: 允许 CSI 驱动接收挂载卷目标 Pods 的服务账户令牌。 参阅[令牌请求(Token Requests)](https://kubernetes-csi.github.io/docs/token-requests.html)。 - `CSIStorageCapacity`: 使 CSI 驱动程序可以发布存储容量信息,并使 Kubernetes 调度程序在调度 Pod 时使用该信息。参见 - [存储容量](/zh/docs/concepts/storage/storage-capacity/)。 - 详情请参见 [`csi` 卷类型](/zh/docs/concepts/storage/volumes/#csi)。 + [存储容量](/zh-cn/docs/concepts/storage/storage-capacity/)。 + 详情请参见 [`csi` 卷类型](/zh-cn/docs/concepts/storage/volumes/#csi)。 - `CustomCPUCFSQuotaPeriod`:使节点能够更改 - [kubelet 配置](/zh/docs/tasks/administer-cluster/kubelet-config-file/) + [kubelet 配置](/zh-cn/docs/tasks/administer-cluster/kubelet-config-file/) 中的 `cpuCFSQuotaPeriod`。 - `CustomResourceValidationExpressions`:启用 CRD 中的表达式语言合法性检查, 基于 `x-kubernetes-validations` 扩展中所书写的合法性检查规则来验证定制资源。 - `CustomPodDNS`:允许使用 Pod 的 `dnsConfig` 属性自定义其 DNS 设置。 更多详细信息,请参见 - [Pod 的 DNS 配置](/zh/docs/concepts/services-networking/dns-pod-service/#pods-dns-config)。 + [Pod 的 DNS 配置](/zh-cn/docs/concepts/services-networking/dns-pod-service/#pods-dns-config)。 - `DefaultPodTopologySpread`: 启用 `PodTopologySpread` 调度插件来完成 - [默认的调度传播](/zh/docs/concepts/workloads/pods/pod-topology-spread-constraints/#internal-default-constraints). + [默认的调度传播](/zh-cn/docs/concepts/workloads/pods/pod-topology-spread-constraints/#internal-default-constraints). - `DelegateFSGroupToCSIDriver`: 如果 CSI 驱动程序支持,则通过 NodeStageVolume 和 NodePublishVolume CSI 调用传递 `fsGroup` ,将应用 `fsGroup` 从 Pod 的 `securityContext` 的角色委托给驱动。 - `DevicePlugins`:在节点上启用基于 - [设备插件](/zh/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/) + [设备插件](/zh-cn/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/) 的资源制备。 - `DisableAcceleratorUsageMetrics`: - [禁用 kubelet 收集加速器指标](/zh/docs/concepts/cluster-administration/system-metrics/#disable-accelerator-metrics). + [禁用 kubelet 收集加速器指标](/zh-cn/docs/concepts/cluster-administration/system-metrics/#disable-accelerator-metrics). - `DynamicKubeletConfig`:启用 kubelet 的动态配置。 除偏差策略场景外,不再支持该功能。该特性门控在 kubelet 1.24 版本中已被移除。 - 请参阅[重新配置 kubelet](/zh/docs/tasks/administer-cluster/reconfigure-kubelet/)。 + 请参阅[重新配置 kubelet](/zh-cn/docs/tasks/administer-cluster/reconfigure-kubelet/)。 - `DynamicProvisioningScheduling`:扩展默认调度器以了解卷拓扑并处理 PV 配置。 此特性已在 v1.12 中完全被 `VolumeScheduling` 特性取代。 - `DynamicVolumeProvisioning`:启用持久化卷到 Pod - 的[动态预配置](/zh/docs/concepts/storage/dynamic-provisioning/)。 + 的[动态预配置](/zh-cn/docs/concepts/storage/dynamic-provisioning/)。 - `EfficientWatchResumption`:允许从存储发起的 bookmark(进度通知)事件被通知到用户。 此特性仅适用于 watch 操作。 - `EnableAggregatedDiscoveryTimeout`:对聚集的发现调用启用五秒钟超时设置。 @@ -1177,11 +1189,11 @@ Each feature gate is designed for enabling/disabling a specific feature: --> - `EnableEquivalenceClassCache`:调度 Pod 时,使 scheduler 缓存节点的等效项。 - `EndpointSlice`:启用 EndpointSlice 以实现可扩缩性和可扩展性更好的网络端点。 - 参阅[启用 EndpointSlice](/zh/docs/concepts/services-networking/endpoint-slices/)。 + 参阅[启用 EndpointSlice](/zh-cn/docs/concepts/services-networking/endpoint-slices/)。 - `EndpointSliceNodeName`:允许使用 EndpointSlice 的 `nodeName` 字段。 - `EndpointSliceProxying`:启用此特性门控时,Linux 上运行的 kube-proxy 会使用 EndpointSlices 而不是 Endpoints 作为其主要数据源,从而使得可扩缩性和性能提升成为可能。 - 参阅[启用 EndpointSlice](/zh/docs/concepts/services-networking/endpoint-slices/)。 + 参阅[启用 EndpointSlice](/zh-cn/docs/concepts/services-networking/endpoint-slices/)。 - `EndpointSliceTerminatingCondition`:允许使用 EndpointSlice 的 `terminating` 和 `serving` 状况字段。 - `GracefulNodeShutdownBasedOnPodPriority`:允许 kubelet 在体面终止节点时检查 Pod 的优先级。 - `GRPCContainerProbe`:为 LivenessProbe、ReadinessProbe、StartupProbe 启用 gRPC 探针。 - 参阅[配置活跃态、就绪态和启动探针](/zh/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-grpc-liveness-probe)。 + 参阅[配置活跃态、就绪态和启动探针](/zh-cn/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-grpc-liveness-probe)。 - `HonorPVReclaimPolicy`:无论 PV 和 PVC 的删除顺序如何,当持久卷申领的策略为 `Delete` 时,确保这种策略得到处理。 - 更多详细信息,请参阅 [PersistentVolume 删除保护 finalizer](/zh/docs/concepts/storage/persistent-volumes/#persistentvolume-deletion-protection-finalizer)文档。 + 更多详细信息,请参阅 [PersistentVolume 删除保护 finalizer](/zh-cn/docs/concepts/storage/persistent-volumes/#persistentvolume-deletion-protection-finalizer)文档。 - `InTreePluginvSphereUnregister`: 在 kubelet 和卷控制器上关闭注册 vSphere 内嵌插件。 -- `IndexedJob`:允许 [Job](/zh/docs/concepts/workloads/controllers/job/) +- `IndexedJob`:允许 [Job](/zh-cn/docs/concepts/workloads/controllers/job/) 控制器根据完成索引来管理 Pod 完成。 - `IngressClassNamespacedParams`:允许在 `IngressClass` 资源中引用命名空间范围的参数。 该特性增加了两个字段 —— `scope`、`namespace` 到 `IngressClass.spec.parameters`。 @@ -1363,33 +1391,35 @@ For more details, check the [status](/docs/reference/kubernetes-api/workload-resources/job-v1/#JobStatus) of a [Job](/docs/concepts/workloads/controllers/job) status. --> -- `IPv6DualStack`:启用[双协议栈](/zh/docs/concepts/services-networking/dual-stack/) +- `IPv6DualStack`:启用[双协议栈](/zh-cn/docs/concepts/services-networking/dual-stack/) 以支持 IPv6。 - `JobMutableNodeSchedulingDirectives`:允许在 [Job](/docs/concepts/workloads/controllers/job) 的 Pod 模板中更新节点调度指令。 -- `JobReadyPods`:允许跟踪[状况](/zh/docs/concepts/workloads/pods/pod-lifecycle/#pod-conditions)为 +- `JobReadyPods`:允许跟踪[状况](/zh-cn/docs/concepts/workloads/pods/pod-lifecycle/#pod-conditions)为 `Ready` 的 Pod 的个数。`Ready` 的 Pod 记录在 - [Job](/zh/docs/concepts/workloads/controllers/job) 对象的 + [Job](/zh-cn/docs/concepts/workloads/controllers/job) 对象的 [status](/docs/reference/kubernetes-api/workload-resources/job-v1/#JobStatus) 字段中。 -- `JobTrackingWithFinalizers`: 启用跟踪 [Job](/zh/docs/concepts/workloads/controllers/job) +- `JobTrackingWithFinalizers`: 启用跟踪 [Job](/zh-cn/docs/concepts/workloads/controllers/job) 完成情况,而不是永远从集群剩余 Pod 来获取信息判断完成情况。Job 控制器使用 Pod finalizers 和 Job 状态中的一个字段来跟踪已完成的 Pod 以计算完成。 - `KubeletConfigFile`:启用从使用配置文件指定的文件中加载 kubelet 配置。 有关更多详细信息,请参见 - [通过配置文件设置 kubelet 参数](/zh/docs/tasks/administer-cluster/kubelet-config-file/)。 + [通过配置文件设置 kubelet 参数](/zh-cn/docs/tasks/administer-cluster/kubelet-config-file/)。 - `LocalStorageCapacityIsolation`:允许使用 - [本地临时存储](/zh/docs/concepts/configuration/manage-resources-containers/) - 以及 [emptyDir 卷](/zh/docs/concepts/storage/volumes/#emptydir)的 `sizeLimit` 属性。 + [本地临时存储](/zh-cn/docs/concepts/configuration/manage-resources-containers/) + 以及 [emptyDir 卷](/zh-cn/docs/concepts/storage/volumes/#emptydir)的 `sizeLimit` 属性。 - `LocalStorageCapacityIsolationFSQuotaMonitoring`:如果 - [本地临时存储](/zh/docs/concepts/configuration/manage-resources-containers/)启用了 + [本地临时存储](/zh-cn/docs/concepts/configuration/manage-resources-containers/)启用了 `LocalStorageCapacityIsolation`,并且 - [emptyDir 卷](/zh/docs/concepts/storage/volumes/#emptydir)的后备文件系统支持项目配额, + [emptyDir 卷](/zh-cn/docs/concepts/storage/volumes/#emptydir)的后备文件系统支持项目配额, 并且启用了这些配额,将使用项目配额来监视 - [emptyDir 卷](/zh/docs/concepts/storage/volumes/#emptydir)的存储消耗而不是遍历文件系统, + [emptyDir 卷](/zh-cn/docs/concepts/storage/volumes/#emptydir)的存储消耗而不是遍历文件系统, 以此获得更好的性能和准确性。 - `LogarithmicScaleDown`:启用 Pod 的半随机(semi-random)选择,控制器将根据 Pod 时间戳的对数桶按比例缩小去驱逐 Pod。 - `MaxUnavailableStatefulSet`:启用为 StatefulSet - 的[滚动更新策略](/zh/docs/concepts/workloads/controllers/statefulset/#rolling-updates)设置 + 的[滚动更新策略](/zh-cn/docs/concepts/workloads/controllers/statefulset/#rolling-updates)设置 `maxUnavailable` 字段。该字段指定更新过程中不可用 Pod 个数的上限。 - `MemoryManager`:允许基于 NUMA 拓扑为容器设置内存亲和性。 - `MemoryQoS`:使用 cgroup v2 内存控制器在 pod / 容器上启用内存保护和使用限制。 - `MinDomainsInPodTopologySpread`:启用 Pod 的 `minDomains` - [拓扑分布约束](/zh/docs/concepts/workloads/pods/pod-topology-spread-constraints/). + [拓扑分布约束](/zh-cn/docs/concepts/workloads/pods/pod-topology-spread-constraints/). - `MixedProtocolLBService`:允许在同一 `LoadBalancer` 类型的 Service 实例中使用不同的协议。 - `MountContainers`:允许使用主机上的工具容器作为卷挂载程序。 - `MountPropagation`:启用将一个容器安装的共享卷共享到其他容器或 Pod。 - 更多详细信息,请参见[挂载传播](/zh/docs/concepts/storage/volumes/#mount-propagation)。 + 更多详细信息,请参见[挂载传播](/zh-cn/docs/concepts/storage/volumes/#mount-propagation)。 - `NamespaceDefaultLabelName`:配置 API 服务器以在所有名字空间上设置一个不可变的 {{< glossary_tooltip text="标签" term_id="label" >}} `kubernetes.io/metadata.name`, 也包括名字空间。 @@ -1506,48 +1539,51 @@ For more details, check the Must be used with `KubeletConfiguration.failSwapOn` set to false. For more details, please see [swap memory](/docs/concepts/architecture/nodes/#swap-memory) - `NonPreemptingPriority`: Enable `preemptionPolicy` field for PriorityClass and Pod. -- `OpenAPIEnums`: Enables populating "enum" fields of OpenAPI schemas in the +- `OpenAPIEnums`: Enables populating "enum" fields of OpenAPI schemas in the spec returned from the API server. - `OpenAPIV3`: Enables the API server to publish OpenAPI v3. -- `PVCProtection`: Enable the prevention of a PersistentVolumeClaim (PVC) from - being deleted when it is still used by any Pod. --> - `NodeOutOfServiceVolumeDetach`:当使用 `node.kubernetes.io/out-of-service` 污点将节点标记为停止服务时,节点上不能容忍这个污点的 Pod 将被强制删除, 并且该在节点上被终止的 Pod 将立即进行卷分离操作。 - `NodeSwap`: 启用 kubelet 为节点上的 Kubernetes 工作负载分配交换内存的能力。 必须将 `KubeletConfiguration.failSwapOn` 设置为 false 的情况下才能使用。 - 更多详细信息,请参见[交换内存](/zh/docs/concepts/architecture/nodes/#swap-memory)。 + 更多详细信息,请参见[交换内存](/zh-cn/docs/concepts/architecture/nodes/#swap-memory)。 - `NonPreemptingPriority`:为 PriorityClass 和 Pod 启用 `preemptionPolicy` 选项。 - `OpenAPIEnums`:允许在从 API 服务器返回的 spec 中填充 OpenAPI 模式的 "enum" 字段。 - `OpenAPIV3`:允许 API 服务器发布 OpenAPI V3。 -- `PVCProtection`:启用防止仍被某 Pod 使用的 PVC 被删除的特性。 -- `PodDeletionCost`:启用 [Pod 删除成本](/zh/docs/concepts/workloads/controllers/replicaset/#pod-deletion-cost)功能。 +- `PodDeletionCost`:启用 [Pod 删除成本](/zh-cn/docs/concepts/workloads/controllers/replicaset/#pod-deletion-cost)功能。 该功能使用户可以影响 ReplicaSet 的降序顺序。 - `PersistentLocalVolumes`:允许在 Pod 中使用 `local(本地)` 卷类型。 如果请求 `local` 卷,则必须指定 Pod 亲和性属性。 -- `PodDisruptionBudget`:启用 [PodDisruptionBudget](/zh/docs/tasks/run-application/configure-pdb/) 特性。 -- `PodAffinityNamespaceSelector`:启用 [Pod 亲和性名称空间选择器](/zh/docs/concepts/scheduling-eviction/assign-pod-node/#namespace-selector) - 和 [CrossNamespacePodAffinity](/zh/docs/concepts/policy/resource-quotas/#cross-namespace-pod-affinity-quota) +- `PodAndContainerStatsFromCRI`:配置 kubelet 从容器和 CRI 容器运行时收集 Pod 统计信息, + 不建议从 cAdvisor 收集统计信息。 +- `PodDisruptionBudget`:启用 [PodDisruptionBudget](/zh-cn/docs/tasks/run-application/configure-pdb/) 特性。 +- `PodAffinityNamespaceSelector`:启用 [Pod 亲和性名称空间选择器](/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/#namespace-selector) + 和 [CrossNamespacePodAffinity](/zh-cn/docs/concepts/policy/resource-quotas/#cross-namespace-pod-affinity-quota) 资源配额功能。 -- `PodOverhead`:启用 [PodOverhead](/zh/docs/concepts/scheduling-eviction/pod-overhead/) +- `PodOverhead`:启用 [PodOverhead](/zh-cn/docs/concepts/scheduling-eviction/pod-overhead/) 特性以考虑 Pod 开销。 -- `PodPriority`:启用根据[优先级](/zh/docs/concepts/scheduling-eviction/pod-priority-preemption/) +- `PodPriority`:启用根据[优先级](/zh-cn/docs/concepts/scheduling-eviction/pod-priority-preemption/) 的 Pod 调度和抢占。 - `PodReadinessGates`:启用 `podReadinessGate` 字段的设置以扩展 Pod 准备状态评估。 有关更多详细信息,请参见 - [Pod 就绪状态判别](/zh/docs/concepts/workloads/pods/pod-lifecycle/#pod-readiness-gate)。 + [Pod 就绪状态判别](/zh-cn/docs/concepts/workloads/pods/pod-lifecycle/#pod-readiness-gate)。 - `PodSecurity`: 开启 `PodSecurity` 准入控制插件。 - `PodShareProcessNamespace`:在 Pod 中启用 `shareProcessNamespace` 的设置, 以便在 Pod 中运行的容器之间共享同一进程名字空间。更多详细信息,请参见 - [在 Pod 中的容器间共享同一进程名字空间](/zh/docs/tasks/configure-pod-container/share-process-namespace/)。 + [在 Pod 中的容器间共享同一进程名字空间](/zh-cn/docs/tasks/configure-pod-container/share-process-namespace/)。 - `PreferNominatedNode`: 这个标志告诉调度器在循环遍历集群中的所有其他节点之前, 是否首先检查指定的节点。 -- `ProbeTerminationGracePeriod`:在 Pod 上 启用 - [设置探测器级别 `terminationGracePeriodSeconds`](/zh/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#probe-level-terminationgraceperiodseconds)。 +- `ProbeTerminationGracePeriod`:在 Pod 上启用 + [设置探测器级别 `terminationGracePeriodSeconds`](/zh-cn/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#probe-level-terminationgraceperiodseconds)。 有关更多信息,请参见[改进提案](https://github.com/kubernetes/enhancements/tree/master/keps/sig-node/2238-liveness-probe-grace-period)。 - `ProcMountType`:允许容器通过设置 SecurityContext 的 `procMount` 字段来控制对 proc 文件系统的挂载方式。 - `ProxyTerminatingEndpoints`: 当 `ExternalTrafficPolicy=Local` 时, 允许 kube-proxy 来处理终止过程中的端点。 +- `PVCProtection`:当 PersistentVolumeClaim (PVC) 仍然在 Pod 使用时被删除,启用保护。 - `QOSReserved`:允许在 QoS 级别进行资源预留,以防止处于较低 QoS 级别的 Pod 突发进入处于较高 QoS 级别的请求资源(目前仅适用于内存)。 - `ReadWriteOncePod`: 允许使用 `ReadWriteOncePod` 访问模式的 PersistentVolume。 - `RecoverVolumeExpansionFailure`:允许用户编辑其 PVC 来缩小其尺寸, 从而从之前卷扩容发生的失败中恢复。更多细节可参见 - [从卷扩容失效中恢复](/zh/docs/concepts/storage/persistent-volumes/#recovering-from-failure-when-expanding-volumes)。 + [从卷扩容失效中恢复](/zh-cn/docs/concepts/storage/persistent-volumes/#recovering-from-failure-when-expanding-volumes)。 - `RemainingItemCount`:允许 API 服务器在 - [分块列表请求](/zh/docs/reference/using-api/api-concepts/#retrieving-large-results-sets-in-chunks) + [分块列表请求](/zh-cn/docs/reference/using-api/api-concepts/#retrieving-large-results-sets-in-chunks) 的响应中显示剩余条目的个数。 - `RemoveSelfLink`:将所有对象和集合的 `.metadata.selfLink` 字段设置为空(空字符串)。 该字段自 Kubernetes v1.16 版本以来已被弃用。 @@ -1642,7 +1682,8 @@ For more details, check the 以了解更多细节。 - `RotateKubeletClientCertificate`:在 kubelet 上启用客户端 TLS 证书的轮换。 更多详细信息,请参见 - [kubelet 配置](/zh/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/#kubelet-configuration)。 + [kubelet 配置](/zh-cn/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/#kubelet-configuration)。 - `RotateKubeletServerCertificate`:在 kubelet 上启用服务器 TLS 证书的轮换。 更多详细信息,请参见 - [kubelet 配置](/zh/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/#kubelet-configuration)。 + [kubelet 配置](/zh-cn/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/#kubelet-configuration)。 - `RunAsGroup`:启用对容器初始化过程中设置的主要组 ID 的控制。 -- `RuntimeClass`:启用 [RuntimeClass](/zh/docs/concepts/containers/runtime-class/) +- `RuntimeClass`:启用 [RuntimeClass](/zh-cn/docs/concepts/containers/runtime-class/) 特性用于选择容器运行时配置。 - `ScheduleDaemonSetPods`:启用 DaemonSet Pods 由默认调度程序而不是 DaemonSet 控制器进行调度。 @@ -1680,6 +1722,9 @@ For more details, check the - `ServerSideApply`:在 API 服务器上启用 - [服务器端应用(SSA)](/zh/docs/reference/using-api/server-side-apply/) 。 + [服务器端应用(SSA)](/zh-cn/docs/reference/using-api/server-side-apply/) 。 +- `ServerSideFieldValidation`:启用服务器端字段验证。 + 这意味着验证资源模式在 API 服务器端而不是客户端执行 + (例如,`kubectl create` 或 `kubectl apply` 命令行)。 - `ServiceAccountIssuerDiscovery`:在 API 服务器中为服务帐户颁发者启用 OIDC 发现端点 (颁发者和 JWKS URL)。详情参见 - [为 Pod 配置服务账户](/zh/docs/tasks/configure-pod-container/configure-service-account/#service-account-issuer-discovery) 。 + [为 Pod 配置服务账户](/zh-cn/docs/tasks/configure-pod-container/configure-service-account/#service-account-issuer-discovery) 。 - `ServiceAppProtocol`:为 Service 和 Endpoints 启用 `appProtocol` 字段。 - `ServiceInternalTrafficPolicy`:为服务启用 `internalTrafficPolicy` 字段。 - `ServiceLBNodePortControl`:为服务启用 `allocateLoadBalancerNodePorts` 字段。 - `ServiceLoadBalancerClass`: 为服务启用 `loadBalancerClass` 字段。 - 有关更多信息,请参见[指定负载均衡器实现类](/zh/docs/concepts/services-networking/service/#load-balancer-class)。 + 有关更多信息,请参见[指定负载均衡器实现类](/zh-cn/docs/concepts/services-networking/service/#load-balancer-class)。 - `ServiceLoadBalancerFinalizer`:为服务负载均衡启用终结器(finalizers)保护。 - `ServiceNodeExclusion`:启用从云提供商创建的负载均衡中排除节点。 如果节点标记有 `node.kubernetes.io/exclude-from-external-load-balancers`, 标签,则可以排除该节点。 - `ServiceTopology`:启用服务拓扑可以让一个服务基于集群的节点拓扑进行流量路由。 - 有关更多详细信息,请参见[服务拓扑](/zh/docs/concepts/services-networking/service-topology/)。 + 有关更多详细信息,请参见[服务拓扑](/zh-cn/docs/concepts/services-networking/service-topology/)。 - `ServiceIPStaticSubrange`:启用服务 ClusterIP 分配策略,从而细分 ClusterIP 范围。 动态分配的 ClusterIP 地址将优先从较高范围分配,以低冲突风险允许用户从较低范围分配静态 ClusterIP。 - 更多详细信息请参阅[避免冲突](/zh/docs/concepts/services-networking/service/#avoiding-collisions) + 更多详细信息请参阅[避免冲突](/zh-cn/docs/concepts/services-networking/service/#avoiding-collisions) - `SetHostnameAsFQDN`:启用将全限定域名(FQDN)设置为 Pod 主机名的功能。 - 请参见[为 Pod 设置 `setHostnameAsFQDN` 字段](/zh/docs/concepts/services-networking/dns-pod-service/#pod-sethostnameasfqdn-field)。 + 请参见[为 Pod 设置 `setHostnameAsFQDN` 字段](/zh-cn/docs/concepts/services-networking/dns-pod-service/#pod-sethostnameasfqdn-field)。 - `SizeMemoryBackedVolumes`:允许 kubelet 检查基于内存制备的卷的尺寸约束 (目前主要针对 `emptyDir` 卷)。 - `StartupProbe`:在 kubelet 中启用 - [启动探针](/zh/docs/concepts/workloads/pods/pod-lifecycle/#when-should-you-use-a-startup-probe)。 + [启动探针](/zh-cn/docs/concepts/workloads/pods/pod-lifecycle/#when-should-you-use-a-startup-probe)。 - `StatefulSetMinReadySeconds`: 允许 StatefulSet 控制器采纳 `minReadySeconds` 设置。 - `StorageObjectInUseProtection`:如果仍在使用 PersistentVolume 或 @@ -1774,7 +1823,7 @@ For more details, check the - `SupportPodPidsLimit`: Enable the support to limiting PIDs in Pods. --> - `SupportIPVSProxyMode`:启用使用 IPVS 提供集群内服务负载平衡。更多详细信息,请参见 - [服务代理](/zh/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies)。 + [服务代理](/zh-cn/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies)。 - `SupportNodePidsLimit`:启用支持,限制节点上的 PID 用量。 `--system-reserved` 和 `--kube-reserved` 中的参数 `pid=<数值>` 可以分别用来 设定为整个系统所预留的进程 ID 个数和为 Kubernetes 系统守护进程预留的进程 ID 个数。 @@ -1791,11 +1840,11 @@ For more details, check the to clean up resources after they finish execution. --> - `SuspendJob`: 启用支持以暂停和恢复作业。 更多详细信息,请参见 - [Jobs 文档](/zh/docs/concepts/workloads/controllers/job/)。 + [Jobs 文档](/zh-cn/docs/concepts/workloads/controllers/job/)。 - `Sysctls`:允许为每个 Pod 设置的名字空间内核参数(sysctls)。 - 更多详细信息,请参见 [sysctls](/zh/docs/tasks/administer-cluster/sysctl-cluster/)。 + 更多详细信息,请参见 [sysctls](/zh-cn/docs/tasks/administer-cluster/sysctl-cluster/)。 - `TTLAfterFinished`:资源完成执行后,允许 - [TTL 控制器](/zh/docs/concepts/workloads/controllers/ttlafterfinished/)清理资源。 + [TTL 控制器](/zh-cn/docs/concepts/workloads/controllers/ttlafterfinished/)清理资源。 - `TaintBasedEvictions`:根据节点上的污点和 Pod 上的容忍度启用从节点驱逐 Pod 的特性。 - 更多详细信息可参见[污点和容忍度](/zh/docs/concepts/scheduling-eviction/taint-and-toleration/)。 -- `TaintNodesByCondition`:根据[节点状况](/zh/docs/concepts/scheduling-eviction/taint-and-toleration/) + 更多详细信息可参见[污点和容忍度](/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration/)。 +- `TaintNodesByCondition`:根据[节点状况](/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration/) 启用自动为节点标记污点。 - `TokenRequest`:在服务帐户资源上启用 `TokenRequest` 端点。 - `TokenRequestProjection`:启用通过 - [`projected` 卷](/zh/docs/concepts/storage/volumes/#projected) + [`projected` 卷](/zh-cn/docs/concepts/storage/volumes/#projected) 将服务帐户令牌注入到 Pod 中的特性。 - `TopologyAwareHints`: 在 EndpointSlices 中启用基于拓扑提示的拓扑感知路由。 - 更多详细信息可参见[拓扑感知提示](/zh/docs/concepts/services-networking/topology-aware-hints/)。 + 更多详细信息可参见[拓扑感知提示](/zh-cn/docs/concepts/services-networking/topology-aware-hints/)。 - `TopologyManager`:启用一种机制来协调 Kubernetes 不同组件的细粒度硬件资源分配。 - 详见[控制节点上的拓扑管理策略](/zh/docs/tasks/administer-cluster/topology-manager/)。 + 详见[控制节点上的拓扑管理策略](/zh-cn/docs/tasks/administer-cluster/topology-manager/)。 - `ValidateProxyRedirects`: 这个标志控制 API 服务器是否应该验证只跟随到相同的主机的重定向。 仅在启用 `StreamingProxyRedirects` 标志时被使用。 - `WindowsEndpointSliceProxying`: 当启用时,运行在 Windows 上的 kube-proxy 将使用 EndpointSlices 而不是 Endpoints 作为主要数据源,从而实现可伸缩性和并改进性能。 - 详情请参见[启用端点切片](/zh/docs/concepts/services-networking/endpoint-slices/). + 详情请参见[启用端点切片](/zh-cn/docs/concepts/services-networking/endpoint-slices/). - `WindowsGMSA`:允许将 GMSA 凭据规范从 Pod 传递到容器运行时。 - `WindowsHostProcessContainers`: 启用对 Windows HostProcess 容器的支持。 - `WindowsRunAsUserName`:提供使用非默认用户在 Windows 容器中运行应用程序的支持。 详情请参见 - [配置 RunAsUserName](/zh/docs/tasks/configure-pod-container/configure-runasusername)。 + [配置 RunAsUserName](/zh-cn/docs/tasks/configure-pod-container/configure-runasusername)。 ## {{% heading "whatsnext" %}} @@ -1896,10 +1946,10 @@ For more details, check the `storage.k8s.io/v1beta1/csistoragecapacities`, set `--runtime-config=storage.k8s.io/v1beta1/csistoragecapacities`. See [API Versioning](/docs/reference/using-api/#api-versioning) for more details on the command line flags. --> -* Kubernetes 的[弃用策略](/zh/docs/reference/using-api/deprecation-policy/) +* Kubernetes 的[弃用策略](/zh-cn/docs/reference/using-api/deprecation-policy/) 介绍了项目针对已移除特性和组件的处理方法。 * 从 Kubernetes 1.24 开始,默认不启用新的 beta API。 启用 beta 功能时,还需要启用所有关联的 API 资源。 例如:要启用一个特定资源,如 `storage.k8s.io/v1beta1/csistoragecapacities`, 请设置 `--runtime-config=storage.k8s.io/v1beta1/csistoragecapacities`。 - 有关命令行标志的更多详细信息,请参阅 [API 版本控制](/zh/docs/reference/using-api/#api-versioning)。 + 有关命令行标志的更多详细信息,请参阅 [API 版本控制](/zh-cn/docs/reference/using-api/#api-versioning)。 diff --git a/content/zh-cn/docs/reference/kubectl/cheatsheet.md b/content/zh-cn/docs/reference/kubectl/cheatsheet.md index a20e05c713..8878d01f7f 100644 --- a/content/zh-cn/docs/reference/kubectl/cheatsheet.md +++ b/content/zh-cn/docs/reference/kubectl/cheatsheet.md @@ -17,7 +17,8 @@ weight: 10 # highlight it card: name: reference weight: 30 ---- --> +--- +--> @@ -64,12 +65,12 @@ complete -o default -F __start_kubectl k ```bash source <(kubectl completion zsh) # 在 zsh 中设置当前 shell 的自动补全 -echo "[[ $commands[kubectl] ]] && source <(kubectl completion zsh)" >> ~/.zshrc # 在您的 zsh shell 中永久的添加自动补全 +echo '[[ $commands[kubectl] ]] && source <(kubectl completion zsh)' >> ~/.zshrc # 在您的 zsh shell 中永久的添加自动补全 ``` 我们经常用到 `--all-namespaces` 参数,你应该要知道它的简写: ```kubectl -A``` ## 与节点和集群进行交互 @@ -862,7 +863,7 @@ kubectl get pods -A -o=custom-columns='DATA:spec.containers[*].image' # All images running in namespace: default, grouped by Pod kubectl get pods --namespace default --output=custom-columns="NAME:.metadata.name,IMAGE:.spec.containers[*].image" -# All images excluding "k8s.gcr.io/coredns:1.6.2" + # All images excluding "k8s.gcr.io/coredns:1.6.2" kubectl get pods -A -o=custom-columns='DATA:spec.containers[?(@.image!="k8s.gcr.io/coredns:1.6.2")].image' # All fields under metadata regardless of name @@ -887,6 +888,9 @@ kubectl get pods -A -o=custom-columns='DATA:spec.containers[?(@.image!="k8s.gcr. kubectl get pods -A -o=custom-columns='DATA:metadata.*' ``` + 有关更多示例,请参看 kubectl [参考文档](/zh-cn/docs/reference/kubectl/#custom-columns)。