ObjectMeta
import "k8s.io/apimachinery/pkg/apis/meta/v1"
ObjectMeta 是所有持久化资源必须拥有的元数据,包括用户必须创建的所有对象。
name (string)
名称在命名空间中必须是唯一的。创建资源时是必需的,尽管某些资源可能允许客户端请求自动生成合适的名称。名称主要用于创建幂等性和配置定义。不能更新。更多信息: https://kubernetes.top/docs/concepts/overview/working-with-objects/names#names
generateName (string)
generateName 是一个可选的前缀,由服务器使用,仅当未提供 Name 字段时生成唯一的名称。如果使用此字段,则返回给客户端的名称将与传递的名称不同。此值还将与唯一的后缀组合。提供的值具有与 Name 字段相同的验证规则,并且可能会因服务器上使该值唯一所需的后缀长度而被截断。
如果指定此字段并且生成的名称存在,则服务器将返回 409。
仅当未指定 Name 时才应用。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
namespace (string)
命名空间定义了每个名称必须是唯一的空间。空命名空间等效于“default”命名空间,但“default”是规范表示。并非所有对象都必须限定在命名空间内 - 这些对象的此字段值将为空。
必须是 DNS_LABEL。不能更新。更多信息: https://kubernetes.top/docs/concepts/overview/working-with-objects/namespaces
labels (map[string]string)
字符串键和值的映射,可用于组织和分类(限定范围和选择)对象。可能与复制控制器和服务的选择器匹配。更多信息: https://kubernetes.top/docs/concepts/overview/working-with-objects/labels
annotations (map[string]string)
注释是与资源一起存储的非结构化键值映射,外部工具可以设置它来存储和检索任意元数据。它们不可查询,应在修改对象时保留。更多信息: https://kubernetes.top/docs/concepts/overview/working-with-objects/annotations
系统
finalizers ([]string)
设置:在合并期间将保留唯一值
在从注册表中删除对象之前必须为空。每个条目都是负责从列表中删除条目的组件的标识符。如果对象的 deletionTimestamp 非 nil,则只能删除此列表中的条目。终结器可以按任意顺序处理和删除。不强制执行顺序,因为它会引入终结器卡住的重大风险。finalizers 是一个共享字段,任何具有权限的参与者都可以重新排序它。如果按顺序处理终结器列表,则可能导致以下情况:列表中第一个终结器负责的组件正在等待列表中后续终结器负责的组件产生的信号(字段值、外部系统或其他),从而导致死锁。在没有强制排序的情况下,终结器可以自由地在它们之间排序,并且不会受到列表中顺序更改的影响。
managedFields ([]ManagedFieldsEntry)
原子性:在合并期间将被替换
ManagedFields 将 workflow-id 和版本映射到该工作流管理的字段集。这主要用于内部管理,用户通常不需要设置或理解此字段。工作流可以是用户的名称、控制器的名称或特定应用路径的名称,例如“ci-cd”。字段集始终使用工作流修改对象时使用的版本。
ManagedFieldsEntry 是一个 workflow-id、一个 FieldSet 和字段集应用到的资源的组版本。
managedFields.apiVersion (string)
APIVersion 定义了此字段集所应用的资源的版本。格式为“group/version”,就像顶级的 APIVersion 字段一样。跟踪字段集的版本是必要的,因为它不能自动转换。
managedFields.fieldsType (string)
FieldsType 是不同字段格式和版本的鉴别器。目前只有一个可能的值:“FieldsV1”
managedFields.fieldsV1 (FieldsV1)
FieldsV1 拥有 “FieldsV1” 类型中描述的第一个 JSON 版本格式。
*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
映射:在合并期间将保留键 uid 上的唯一值
此对象所依赖的对象列表。如果列表中的所有对象都已删除,则将对此对象进行垃圾回收。如果此对象由控制器管理,则此列表中的条目将指向此控制器,并将控制器字段设置为 true。不能有多个管理控制器。
OwnerReference 包含足够的信息,可以让您识别拥有对象。拥有对象必须与依赖项位于同一命名空间中,或者具有集群范围,因此没有命名空间字段。
ownerReferences.apiVersion (string),必需
引用对象的 API 版本。
ownerReferences.kind (string),必需
引用对象的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
ownerReferences.name (string),必需
引用对象的名称。更多信息: https://kubernetes.top/docs/concepts/overview/working-with-objects/names#names
ownerReferences.uid (string),必需
引用对象的 UID。更多信息: https://kubernetes.top/docs/concepts/overview/working-with-objects/names#uids
ownerReferences.blockOwnerDeletion (boolean)
如果为 true,并且所有者具有 “foregroundDeletion” 终结器,则在删除此引用之前,无法从键值存储中删除所有者。有关垃圾收集器如何与此字段交互并强制执行前台删除的信息,请参见 https://kubernetes.top/docs/concepts/architecture/garbage-collection/#foreground-deletion。默认为 false。要设置此字段,用户需要对所有者具有“delete”权限,否则将返回 422(无法处理的实体)。
ownerReferences.controller (boolean)
如果为真,则此引用指向管理控制器。
只读
creationTimestamp (时间)
creationTimestamp 是表示此对象创建时服务器时间的时间戳。不保证在不同操作中按先后顺序设置。客户端不能设置此值。它以 RFC3339 格式表示,并且使用 UTC 时间。
由系统填充。只读。列表为空。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
Time 是 time.Time 的包装器,它支持正确地编排到 YAML 和 JSON。为 time 包提供的许多工厂方法提供了包装器。
deletionGracePeriodSeconds (int64)
此对象在从系统中删除之前允许正常终止的秒数。仅当也设置了 deletionTimestamp 时才设置。只能缩短。只读。
deletionTimestamp (时间)
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.top/docs/concepts/overview/working-with-objects/names#uids
此页面是自动生成的。
如果您计划报告此页面的问题,请在您的问题描述中提及此页面是自动生成的。修复可能需要在 Kubernetes 项目的其他地方进行。