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 不为 nil,则只能删除此列表中的条目。finalizers 可以按任何顺序处理和删除。不强制执行顺序,因为它会引入卡住 finalizers 的重大风险。finalizers 是一个共享字段,任何具有权限的参与者都可以重新排序它。如果按照顺序处理 finalizer 列表,则可能导致以下情况:列表中第一个 finalizer 负责的组件正在等待来自列表中后续 finalizer 负责的组件生成的信号(字段值、外部系统或其他),从而导致死锁。在未强制执行排序的情况下,finalizers 可以在它们之间自由排序,并且不受列表中排序更改的影响。
managedFields ([]ManagedFieldsEntry)
原子:将在合并期间被替换
ManagedFields 将 workflow-id 和版本映射到由该 workflow 管理的字段集。这主要用于内部维护,用户通常不需要设置或理解此字段。workflow 可以是用户的名称、控制器的名称,或像“ci-cd”这样的特定 apply 路径的名称。字段集始终以 workflow 修改对象时使用的版本存在。
ManagedFieldsEntry 是一个 workflow-id、一个 FieldSet 和资源的版本,该 FieldSet 适用于该资源。
managedFields.apiVersion (string)
APIVersion 定义了此 FieldSet 适用的资源的版本。格式为“group/version”,就像顶级 APIVersion 字段一样。跟踪 FieldSet 的版本是必要的,因为它不能自动转换。
managedFields.fieldsType (string)
FieldsType 是不同字段格式和版本的区分符。当前只有一个可能的值:“FieldsV1”。
managedFields.fieldsV1 (FieldsV1)
FieldsV1 包含 JSON 格式中描述的第一个 JSON 版本格式。
*FieldsV1 以类似于 Trie 的数据结构在 JSON 格式中存储一组字段。
每个键要么是表示字段本身的“.”,并且始终映射到空集,要么是表示子字段或项目的字符串。该字符串将遵循以下四种格式之一:'f
’,其中 是结构体中的字段名称或映射中的键 'v ’,其中 是列表项的精确 JSON 格式值 'i ’,其中 是列表中项目的索引 'k ’,其中 是列表项的键字段到其唯一值的映射 如果键映射到空 Fields 值,则该键所代表的字段是集合的一部分。 确切的格式在 sigs.k8s.io/structured-merge-diff 中定义*
managedFields.manager (string)
Manager 是管理这些字段的 workflow 的标识符。
managedFields.operation (string)
Operation 是导致创建此 ManagedFieldsEntry 的操作类型。此字段的唯一有效值是“Apply”和“Update”。
managedFields.subresource (string)
Subresource 是用于更新该对象的子资源的名称,如果对象是通过主资源更新的,则为空字符串。该字段的值用于区分管理器,即使它们共享相同的名称。例如,状态更新将与使用相同管理器名称的常规更新不同。请注意,APIVersion 字段与 Subresource 字段无关,它始终对应于主资源的版本。
managedFields.time (Time)
Time 是添加 ManagedFieldsEntry 的时间戳。如果添加了字段、管理器更改了拥有的字段值或删除了字段,则时间戳也将更新。由于另一个管理器接管了它,因此时间戳不会在从条目中删除字段时更新。
Time 是 time.Time 的包装器,支持正确地编组到 YAML 和 JSON。为时间包提供的许多工厂方法提供包装器。
ownerReferences ([]OwnerReference)
补丁策略:在键
uid上合并映射:在合并期间将保留键 uid 上的唯一值
此对象依赖的对象列表。如果列表中的所有对象都已被删除,则此对象将被垃圾回收。如果此对象由控制器管理,则列表中的一个条目将指向此控制器,并将控制器字段设置为 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”finalizer,则在删除此引用之前,无法从键值存储中删除所有者。有关垃圾回收器如何与此字段交互并强制执行前台删除,请参阅 https://kubernetes.ac.cn/docs/concepts/architecture/garbage-collection/#foreground-deletion。默认为 false。要设置此字段,用户需要所有者的“delete”权限,否则将返回 422(无法处理的实体)。
ownerReferences.controller (boolean)
如果为 true,则此引用指向管理控制器。
只读
creationTimestamp (Time)
CreationTimestamp 是一个时间戳,表示服务器在此对象创建时的服务器时间。不能保证在单独的操作中按 happens-before 顺序设置。客户端不得设置此值。它以 RFC3339 格式表示,并且以 UTC 格式表示。
由系统填充。只读。列表为空。更多信息: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 格式的日期和时间,表示该资源将被删除的时间。当用户请求优雅删除时,此字段由服务器设置,客户端无法直接设置。一旦 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。为时间包提供的许多工厂方法提供包装器。
generation (int64)
一个序列号,表示期望状态的特定版本。由系统填充。只读。
resourceVersion (string)
一个不透明的值,表示该对象的内部版本,客户端可以使用它来确定对象何时发生更改。可用于乐观并发控制、更改检测以及资源或一组资源的 watch 操作。客户端必须将这些值视为不透明,并原样返回给服务器。它们可能仅对特定的资源或一组资源有效。
由系统填充。只读。客户端必须将该值视为不透明。更多信息: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 项目的其他地方进行。