ObjectMeta

ObjectMeta 是所有持久化资源都必须具有的元数据,其中包括用户必须创建的所有对象。

import "k8s.io/apimachinery/pkg/apis/meta/v1"

ObjectMeta 是所有持久化资源都必须具有的元数据,其中包括用户必须创建的所有对象。


系统

  • finalizers ([]string)

    在从注册表中删除对象之前,必须为空。每个条目都是负责从列表中删除该条目的组件的标识符。如果对象的 deletionTimestamp 不为空,则此列表中的条目只能被删除。终结器可以按任何顺序处理和删除。顺序不强制执行,因为它会带来重大风险,导致终结器卡住。finalizers 是一个共享字段,任何具有权限的参与者都可以重新排序它。如果终结器列表按顺序处理,那么这会导致负责列表中第一个终结器的组件等待负责列表中较后终结器的组件产生的信号(字段值、外部系统或其他),从而导致死锁。如果没有强制排序,终结器可以自由地在彼此之间排序,并且不会受到列表中排序更改的影响。

  • managedFields ([]ManagedFieldsEntry)

    ManagedFields 将工作流 ID 和版本映射到由该工作流管理的字段集。这主要用于内部管理,用户通常不需要设置或理解此字段。工作流可以是用户名称、控制器的名称或特定应用路径的名称,例如“ci-cd”。字段集始终处于工作流在修改对象时使用的版本中。

    ManagedFieldsEntry 是一个工作流 ID、一个 FieldSet 以及字段集适用的资源的组版本。

    • managedFields.apiVersion (string)

      APIVersion 定义了此字段集适用的此资源的版本。格式为“group/version”,与顶层 APIVersion 字段相同。跟踪字段集的版本是必要的,因为它不能自动转换。

    • managedFields.fieldsType (string)

      FieldsType 是不同字段格式和版本的鉴别器。目前只有一个可能的值:“FieldsV1”。

    • managedFields.fieldsV1 (FieldsV1)

      FieldsV1 包含第一个 JSON 版本格式,如“FieldsV1”类型中所述。

      *FieldsV1 以类似于 Trie 的数据结构存储一组字段,以 JSON 格式存储。

      每个键要么是表示字段本身的“.”,并且始终映射到空集,要么是表示子字段或项目的字符串。该字符串将遵循以下四种格式之一:'f',其中是结构体中的字段名称,或映射中的键 'v',其中是列表项的精确 json 格式化值 'i',其中是列表中项目的索引 'k',其中是列表项的键字段与其唯一值的映射 如果键映射到空 Fields 值,则该键表示的字段是集合的一部分。

      确切的格式在 sigs.k8s.io/structured-merge-diff* 中定义

    • managedFields.manager (string)

      Manager 是管理这些字段的工作流的标识符。

    • managedFields.operation (string)

      Operation 是导致创建此 ManagedFieldsEntry 的操作类型。此字段的唯一有效值为“Apply”和“Update”。

    • managedFields.subresource (string)

      Subresource 是用于更新该对象的子资源的名称,如果对象是通过主资源更新的,则为空字符串。此字段的值用于区分管理器,即使它们共享相同的名称。例如,状态更新将与使用相同管理器名称的常规更新不同。请注意,APIVersion 字段与 Subresource 字段无关,并且始终对应于主资源的版本。

    • managedFields.time (Time)

      Time 是添加 ManagedFields 条目的时间戳。如果添加了字段,管理器更改了任何拥有字段的值或删除了字段,时间戳也将更新。当字段从条目中删除时,时间戳不会更新,因为另一个管理器接管了它。

      Time 是 time.Time 的包装器,支持正确地编组到 YAML 和 JSON。包装器为 time 包提供的许多工厂方法提供。

  • ownerReferences ([]OwnerReference)

    补丁策略:按键 uid 合并

    此对象依赖的对象列表。如果列表中的所有对象都被删除,则此对象将被垃圾回收。如果此对象由控制器管理,则列表中的一个条目将指向此控制器,并将 controller 字段设置为 true。不能有多个管理控制器。

    OwnerReference 包含足够的信息来识别拥有对象。拥有对象必须与依赖项位于同一个命名空间,或者必须是集群范围的,因此没有命名空间字段。

只读

  • creationTimestamp (Time)

    CreationTimestamp 是一个时间戳,表示创建此对象时的服务器时间。它不保证在不同的操作中按发生顺序设置。客户端可能不会设置此值。它以 RFC3339 格式表示,并且以 UTC 表示。

    由系统填充。只读。列表为空时为 null。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

    Time 是 time.Time 的包装器,支持正确地编组到 YAML 和 JSON。包装器为 time 包提供的许多工厂方法提供。

  • deletionGracePeriodSeconds (int64)

    允许此对象在从系统中删除之前优雅终止的秒数。仅在设置 deletionTimestamp 时设置。只能缩短。只读。

  • deletionTimestamp (Time)

    DeletionTimestamp 是 RFC 3339 日期和时间,在此时间之后将删除此资源。当用户请求优雅删除时,此字段由服务器设置,并且不能由客户端直接设置。预计该资源将在该字段中的时间之后被删除(不再从资源列表中可见,并且无法通过名称访问),前提是 finalizers 列表为空。只要 finalizers 列表包含项目,删除就会被阻止。一旦设置了 deletionTimestamp,此值就不能被取消设置或设置到更远的将来,尽管它可以被缩短或资源可以在此时间之前被删除。例如,用户可能请求在 30 秒内删除一个 pod。Kubelet 将通过向 pod 中的容器发送优雅终止信号来做出反应。30 秒后,Kubelet 将向容器发送硬终止信号 (SIGKILL),并在清理后从 API 中删除 pod。在网络分区的情况下,此对象可能在此时间戳之后仍然存在,直到管理员或自动化进程能够确定资源已完全终止。如果未设置,则未请求对象的优雅删除。

    在请求优雅删除时由系统填充。只读。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

    Time 是 time.Time 的包装器,支持正确地编组到 YAML 和 JSON。包装器为 time 包提供的许多工厂方法提供。

  • generation (int64)

    表示所需状态的特定版本的序列号。由系统填充。只读。

  • resourceVersion (string)

    一个不透明的值,表示此对象的内部版本,客户端可以使用它来确定对象何时发生变化。可用于乐观并发、更改检测和对资源或一组资源的监视操作。客户端必须将这些值视为不透明,并将其未修改地传递回服务器。它们可能仅对特定资源或一组资源有效。

    由系统填充。只读。客户端必须将值视为不透明。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

  • selfLink (string)

    已弃用:selfLink 是一个旧的只读字段,不再由系统填充。

  • uid (string)

    UID 是此对象的唯一时间和空间值。它通常由服务器在成功创建资源时生成,并且不允许在 PUT 操作中更改。

    由系统填充。只读。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names#uids

此页面是自动生成的。

如果您打算报告此页面的问题,请在您的问题描述中提及该页面是自动生成的。修复可能需要在 Kubernetes 项目的其他地方进行。

上次修改时间:2023 年 4 月 3 日上午 8:22 PST:API Ref 多页面 v1.27 (7b39e9a9ec)