ObjectMeta
import "k8s.io/apimachinery/pkg/apis/meta/v1"
ObjectMeta 是所有持久化资源都必须具有的元数据,其中包括所有用户必须创建的对象。
name (string)
名称在命名空间内必须唯一。在创建资源时需要,尽管某些资源可能允许客户端请求自动生成适当的名称。名称主要用于创建幂等性和配置定义。无法更新。更多信息:https://kubernetes.ac.cn/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)
Namespace 定义每个名称必须唯一的空间。空命名空间等效于“default”命名空间,但“default”是规范表示。并非所有对象都需要限定到命名空间 - 这些对象的此字段值将为空。
必须是 DNS_LABEL。无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/namespaces
labels (map[string]string)
字符串键和值的映射,可用于组织和分类(范围和选择)对象。可能与复制控制器和服务的选取器匹配。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/labels
annotations (map[string]string)
Annotations 是一个无结构的键值映射,与资源一起存储,可以由外部工具设置以存储和检索任意元数据。它们不可查询,并且在修改对象时应保留。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/annotations
系统
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 的正确编组。包装器为时间包提供的许多工厂方法提供。
ownerReferences ([]OwnerReference)
补丁策略:按键
uid
合并此对象所依赖的对象列表。如果列表中的所有对象都被删除,此对象将被垃圾回收。如果此对象由控制器管理,则列表中的一个条目将指向此控制器,并将 controller 字段设置为 true。不能有多个管理控制器。
OwnerReference 包含足够的信息,让你可以识别拥有对象。拥有对象必须与依赖项位于同一个命名空间,或者属于集群范围,因此没有命名空间字段。
ownerReferences.apiVersion (string), required
引用的 API 版本。
ownerReferences.kind (string), required
引用的类型。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
ownerReferences.name (string), required
引用的名称。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names#names
ownerReferences.uid (string), required
引用的 UID。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names#uids
ownerReferences.blockOwnerDeletion (boolean)
如果为 true,并且如果所有者具有“foregroundDeletion”最终化器,则在删除此引用之前,所有者不能从键值存储中删除。有关垃圾回收器如何与此字段交互并强制执行前台删除,请参见https://kubernetes.ac.cn/docs/concepts/architecture/garbage-collection/#foreground-deletion。默认为 false。要设置此字段,用户需要所有者的“删除”权限,否则将返回 422(不可处理的实体)。
ownerReferences.controller (boolean)
如果为 true,则此引用指向管理控制器。
只读
creationTimestamp (Time)
CreationTimestamp 是一个时间戳,表示创建此对象时的服务器时间。它不能保证在不同的操作之间按发生的顺序设置。客户端可能不会设置此值。它以 RFC3339 格式表示,并且为 UTC。
由系统填充。只读。列表为 null。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
Time 是 time.Time 的包装器,支持对 YAML 和 JSON 的正确编组。包装器为时间包提供的许多工厂方法提供。
deletionGracePeriodSeconds (int64)
允许此对象在从系统中删除之前优雅终止的秒数。仅在也设置 deletionTimestamp 时设置。可能只能缩短。只读。
deletionTimestamp (Time)
DeletionTimestamp 是 RFC 3339 日期和时间,在此时间之后将删除此资源。当用户请求优雅删除时,此字段由服务器设置,并且客户端不能直接设置。预计资源将在此字段中的时间之后被删除(不再从资源列表中可见,并且无法通过名称访问),一旦最终化器列表为空。只要最终化器列表包含项目,删除就会被阻止。一旦设置了 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 的正确编组。包装器为时间包提供的许多工厂方法提供。
generation (int64)
表示期望状态的特定生成序列号。由系统填充。只读。
resourceVersion (string)
一个不透明的值,表示此对象的内部版本,客户端可以使用该值来确定对象何时发生更改。 可用于乐观并发、更改检测以及对资源或一组资源的 watch 操作。 客户端必须将这些值视为不透明的,并在未修改的情况下传回服务器。 它们可能仅对特定资源或一组资源有效。
由系统填充。 只读。 客户端必须将值视为不透明的。 更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
selfLink (字符串)
已弃用:selfLink 是一个遗留的只读字段,不再由系统填充。
uid (字符串)
UID 是此对象的时空唯一值。 它通常由服务器在成功创建资源时生成,并且不允许在 PUT 操作中更改。
由系统填充。 只读。 更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names#uids
此页面是自动生成的。
如果您计划报告此页面的问题,请在问题描述中提及页面是自动生成的。 修复可能需要在 Kubernetes 项目的其他地方进行。