diff --git a/content/zh-cn/docs/reference/labels-annotations-taints/_index.md b/content/zh-cn/docs/reference/labels-annotations-taints/_index.md index ac154e1726..16796f3ac5 100644 --- a/content/zh-cn/docs/reference/labels-annotations-taints/_index.md +++ b/content/zh-cn/docs/reference/labels-annotations-taints/_index.md @@ -3,12 +3,24 @@ title: 众所周知的标签、注解和污点 content_type: concept weight: 40 no_list: true +card: + name: reference + weight: 30 + anchors: + - anchor: "#labels-annotations-and-taints-used-on-api-objects" + title: 标签、注解和污点 --- @@ -25,7 +37,36 @@ Kubernetes 将所有标签和注解保留在 `kubernetes.io` 和 `k8s.io `名字 +## API 对象上使用的标签、注解和污点 {#labels-annotations-and-taints-used-on-api-objects} +### apf.kubernetes.io/autoupdate-spec + + +类别:注解 + +例子:`apf.kubernetes.io/autoupdate-spec: "true"` + +用于:[`FlowSchema` 和 `PriorityLevelConfiguration` 对象](/zh-cn/concepts/cluster-administration/flow-control/#defaults) + +如果在 FlowSchema 或 PriorityLevelConfiguration 上将此注解设置为 true, +那么该对象的 `spec` 将由 kube-apiserver 进行管理。如果 API 服务器不识别 APF 对象, +并且你对其添加了自动更新的注解,则 API 服务器将删除整个对象。否则,API 服务器不管理对象规约。 +更多细节参阅[维护强制性和建议的配置对象](/zh-cn/docs/concepts/cluster-administration/flow-control/#maintenance-of-the-mandatory-and-suggested-configuration-objects) + + -## API 对象上使用的标签、注解和污点 {#labels-annotations-and-taints-used-on-api-objects} - ### app.kubernetes.io/component {#app-kubernetes-io-component} 类别:标签 @@ -449,6 +488,36 @@ The value must be in the format `/`. 工具应该拒绝改变属于其他工具 ApplySets。 该值必须采用 `/` 格式。 +### apps.kubernetes.io/pod-index (beta) {#apps-kubernetes.io-pod-index} + + +类别:标签 + +例子:`apps.kubernetes.io/pod-index: "0"` + +用于:Pod + +当 StatefulSet 控制器为 StatefulSet 创建 Pod 时,该控制器会在 Pod 上设置这个标签。 +标签的值是正在创建的 Pod 的序号索引。 + +更多细节参阅 StatefulSet 主题中的 +[Pod 索引标签](/zh-cn/docs/concepts/workloads/controllers/statefulset/#pod-index-label)。 +请注意,[PodIndexLabel](/zh-cn/docs/reference/command-line-tools-reference/feature-gates.md) 特性门控必须被启用, +才能将此标签添加到 Pod 上。 + +### service.kubernetes.io/topology-aware-hints(已弃用) {#servicekubernetesiotopology-aware-hints} + +例子:`service.kubernetes.io/topology-aware-hints: "Auto"` + +用于:Service + + +此注解曾用于在 Service 中启用**拓扑感知提示(topology aware hints)**。 +然而,拓扑感知提示已经做了更名操作, +此概念现在名为[拓扑感知路由(topology aware routing)](/zh-cn/docs/concepts/services-networking/topology-aware-routing/)。 +在 Service 上将该注解设置为 `Auto` 会配置 Kubernetes 控制平面, +以将拓扑提示添加到该 Service 关联的 EndpointSlice 上。你也可以显式地将该注解设置为 `Disabled`。 + +如果你使用的是早于 {{< skew currentVersion >}} 的 Kubernetes 版本, +请查阅该版本对应的文档,了解其拓扑感知路由的工作方式。 + +此注解没有其他有效值。如果你不希望为 Service 启用拓扑感知提示,不要添加此注解。 + ### batch.kubernetes.io/job-completion-index {#batch-kubernetes-io-job-completion-index} -类别:注解 +类别:注解、标签 例子:`batch.kubernetes.io/job-completion-index: "3"` @@ -2048,7 +2156,38 @@ created with Indexed [completion mode](/docs/concepts/workloads/controllers/job/ kube-controller-manager 中的 Job 控制器为使用 Indexed [完成模式](/zh-cn/docs/concepts/workloads/controllers/job/#completion-mode)创建的 Pod -设置此注解。 +设置此标签和注解。 + + +请注意,[PodIndexLabel](/zh-cn/docs/reference/command-line-tools-reference/feature-gates.md) 特性门控必须被启用, +才能将其添加为 Pod 的**标签**,否则它只会用作注解。 + +### batch.kubernetes.io/cronjob-scheduled-timestamp + + +类别:注解 + +例子:`batch.kubernetes.io/cronjob-scheduled-timestamp: "2016-05-19T03:00:00-07:00"` + +用于:CronJob 所控制的 Job 和 Pod + +此注解在 Job 是 CronJob 的一部分时用于记录 Job 的原始(预期)创建时间戳。 +控制平面会将该值设置为 RFC3339 格式的时间戳。如果 Job 属于设置了时区的 CronJob, +则时间戳以该时区为基准。否则,时间戳以 controller-manager 的本地时间为准。 +类别:注解 + +例子:**参见以下代码片段** + +```yaml + kubectl.kubernetes.io/last-applied-configuration: > + {"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{},"name":"example","namespace":"default"},"spec":{"selector":{"matchLabels":{"app.kubernetes.io/name":foo}},"template":{"metadata":{"labels":{"app.kubernetes.io/name":"foo"}},"spec":{"containers":[{"image":"container-registry.example/foo-bar:1.42","name":"foo-bar","ports":[{"containerPort":42}]}]}}}} +``` + + +用于:所有对象 + +kubectl 命令行工具使用此注解作为一种旧的机制来跟踪变更。 +该机制已被[服务器端应用](/zh-cn/docs/reference/using-api/server-side-apply/)取代。 +