Spec-Zone.ru › Kubernetes 1.24

ObjectMeta

ObjectMeta является метаданными, которые должны иметь все персистированные ресурсы, включая все объекты, которые должны создавать пользователи.

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

ObjectMeta является метаданными, которые должны иметь все персистированные ресурсы, включая все объекты, которые должны создавать пользователи.

  • name (строка)

    Имя должно быть уникальным в пределах пространства имен. Требуется при создании ресурсов, хотя некоторые ресурсы могут позволить клиенту запросить автоматическое генерацию подходящего имени. Имя в первую очередь предназначено для создания идемпотентности и определения конфигурации. Не может быть обновлено. Дополнительная информация: http://kubernetes.io/docs/user-guide/identifiers#names

  • generateName (строка)

    GenerateName — это необязательный префикс, используемый сервером для генерации уникального имени ТОЛЬКО В ТОМ СЛУЧАЕ, ЕСЛИ поле Name не было предоставлено. Если это поле используется, возвращённое клиенту имя будет отличаться от переданного. Это значение также будет объединено с уникальным суффиксом. Предоставленное значение имеет те же правила проверки, что и поле Name, и может быть усечено на длину суффикса, необходимого для уникальности значения на сервере.

    Если это поле указано, а сгенерированное имя существует, сервер вернёт 409.

    Применяется только если Name не указан. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency

  • namespace (строка)

    Namespace определяет пространство, в пределах которого каждое имя должно быть уникальным. Пустое пространство имён эквивалентно пространству имён "default", но "default" — это каноническое представление. Не все объекты обязаны быть ограниченными пространством имён — значение этого поля для этих объектов будет пустым.

    Должно быть DNS_LABEL. Не может быть обновлено. Дополнительная информация: http://kubernetes.io/docs/user-guide/namespaces

  • labels (карта[строка]строка)

    Карта строковых ключей и значений, которые могут использоваться для организации и категоризации (области и выбора) объектов. Может соответствовать селекторам контроллеров репликации и сервисов. Дополнительная информация: http://kubernetes.io/docs/user-guide/labels

  • annotations (карта[строка]строка)

    Annotations — это неструктурированная карта ключ-значение, хранящаяся с ресурсом, которая может быть установлена внешними инструментами для хранения и извлечения произвольных метаданных. Они не доступны для запроса и должны сохраняться при модификации объектов. Дополнительная информация: http://kubernetes.io/docs/user-guide/annotations

Система

  • finalizers ([]строка)

    Должно быть пустым перед удалением объекта из реестра. Каждая запись — это идентификатор ответственного компонента, который удалит запись из списка. Если deletionTimestamp объекта не равен null, записи в этом списке могут быть удалены только. Finalizers могут обрабатываться и удаляться в любом порядке. Порядок НЕ навязывается, потому что это вводит значительный риск застрявших finalizers. finalizers — это общее поле, любой участник с разрешением может переупорядочить его. Если список finalizers обрабатывается в порядке, то это может привести к ситуации, в которой компонент, ответственный за первый finalizer в списке, ожидает сигнала (значение поля, внешняя система или другое), производимого компонентом, ответственным за finalizer позже в списке, что приводит к тупику. Без принудительного порядка finalizers свободны устанавливать свой собственный порядок и не уязвимы для изменений порядка в списке.

  • managedFields ([]ManagedFieldsEntry)

    ManagedFields сопоставляет идентификатор рабочего процесса и версию набору полей, которые управляются этим рабочим процессом. Это в основном для внутренних задач, и пользователям обычно не нужно устанавливать или понимать это поле. Рабочий процесс может быть именем пользователя, именем контроллера или именем конкретного пути применения, например "ci-cd". Набор полей всегда находится в версии, которую рабочий процесс использовал при модификации объекта.

    ManagedFieldsEntry — это идентификатор рабочего процесса, FieldSet и группа версии ресурса, к которому относится Fieldset.

    • managedFields.apiVersion (строка)

      APIVersion определяет версию этого ресурса, к которой относится этот набор полей. Формат — "group/version", как и поле APIVersion на верхнем уровне. Следует отслеживать версию набора полей, потому что она не может быть автоматически преобразована.

    • managedFields.fieldsType (строка)

      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 (строка)

      Manager — это идентификатор рабочего процесса, управляющего этими полями.

    • managedFields.operation (строка)

      Operation — это тип операции, приведший к созданию этого ManagedFieldsEntry. Единственные допустимые значения для этого поля — 'Apply' и 'Update'.

    • managedFields.subresource (строка)

      Subresource — это имя подресурса, используемого для обновления объекта, или пустая строка, если объект был обновлён через основной ресурс. Значение этого поля используется для различения менеджеров, даже если они имеют одинаковое имя. Например, обновление статуса будет отличаться от обычного обновления с использованием того же имени менеджера. Обратите внимание, что поле APIVersion не связано с полем Subresource, и оно всегда соответствует версии основного ресурса.

    • managedFields.time (Time)

      Time — это метка времени, когда запись ManagedFields была добавлена. Метка времени также будет обновлена, если поле добавлено, менеджер изменяет любое из управляемых полей значения или удаляет поле. Метка времени не обновляется, когда поле удалено из записи, потому что другой менеджер принял его на себя.

      Time — это оболочка вокруг time.Time, которая поддерживает правильное форматирование в YAML и JSON. Оболочки предоставляются для многих методов фабрики, которые предлагает пакет time.

  • ownerReferences ([]OwnerReference)

    Стратегия патча: слияние по ключу uid

    Список объектов, от которых зависит этот объект. Если все объекты в списке были удалены, этот объект будет удалён. Если этот объект управляется контроллером, то запись в этом списке будет указывать на этот контроллер, причём поле контроллера будет установлено в true. Не может быть более одного управляющего контроллера.

    OwnerReference содержит достаточную информацию, чтобы позволить вам идентифицировать владеющий объект. Владеющий объект должен находиться в том же пространстве имён, что и зависимый, или быть кластерно-глобальным, поэтому поля пространства имён нет.

    • ownerReferences.apiVersion (строка), обязательно

      API-версия ссылки.

    • ownerReferences.kind (строка), обязательно

      Тип ссылки. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

    • ownerReferences.name (строка), обязательно

      Имя ссылки. Дополнительная информация: http://kubernetes.io/docs/user-guide/identifiers#names

    • ownerReferences.uid (строка), обязательно

      UID ссылки. Дополнительная информация: http://kubernetes.io/docs/user-guide/identifiers#uids

    • ownerReferences.blockOwnerDeletion (логическое)

      Если true, И если у владельца есть finalizer "foregroundDeletion", то владелец не может быть удалён из хранилища ключ-значение, пока эта ссылка не будет удалена. См. https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion для получения информации о взаимодействии сборщика мусора с этим полем и о принудительном удалении в фоновом режиме. По умолчанию false. Для установки этого поля пользователю требуется разрешение "delete" владельца, в противном случае будет возвращено 422 (Необработанная сущность).

    • ownerReferences.controller (логическое)

      Если true, эта ссылка указывает на управляющий контроллер.

Только для чтения

  • creationTimestamp (Time)

    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 (Time)

    DeletionTimestamp — дата и время RFC 3339, в которые этот ресурс будет удалён. Это поле устанавливается сервером, когда пользователь запрашивает плавное удаление, и не может быть напрямую установлено клиентом. Ожидается, что ресурс будет удалён (больше не будет отображаться в списках ресурсов и не будет доступен по имени) после времени в этом поле, как только список finalizers станет пустым. Пока список finalizers содержит элементы, удаление заблокировано. После установки deletionTimestamp это значение не может быть сброшено или установлено в более позднее время, хотя оно может быть уменьшено или ресурс может быть удалён до этого времени. Например, пользователь может запросить удаление под в течение 30 секунд. Kubelet отреагирует, отправив контейнерам в под контейнеры сигнал плавного завершения. После этих 30 секунд Kubelet отправит сигнал жёсткого завершения (SIGKILL) контейнеру и после очистки удалит под из API. При наличии сетевых разрывов этот объект может всё ещё существовать после этого временного отметки, пока администратор или автоматизированный процесс не смогут определить, что ресурс полностью завершён. Если не задано, плавное удаление объекта не запрошено.

    Заполняется системой, когда запрашивается плавное удаление. Только для чтения. Дополнительная информация: 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.

    Заполняется системой. Только для чтения. Дополнительная информация: http://kubernetes.io/docs/user-guide/identifiers#uids

Отклонено

  • clusterName (string)

    Устарело: ClusterName — устаревшее поле, которое всегда очищалось системой и никогда не использовалось; оно будет полностью удалено в версии 1.25.

    Имя в структуре go изменено для помощи клиентам в обнаружении случайного использования.

© 2022 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2022 The Linux Foundation ®. All rights reserved.
https://v1-24.docs.kubernetes.io/docs/reference/kubernetes-api/common-definitions/object-meta/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API