Узел
apiVersion: v1
import "k8s.io/api/core/v1"
Узел
Узел — это рабочий узел в Kubernetes. Каждый узел будет иметь уникальный идентификатор в кэше (т. е. в etcd).
apiVersion: v1
kind: Узел
-
metadata (ObjectMeta)
Стандартные метаданные объекта. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
-
spec (NodeSpec)
Spec определяет поведение узла. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
status (NodeStatus)
Наиболее недавно наблюдаемый статус узла. Заполняется системой. Только для чтения. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
NodeSpec
NodeSpec описывает атрибуты, с которыми создается узел.
-
configSource (NodeConfigSource)
Устарело: Раньше использовалось для указания источника конфигурации узла для функции DynamicKubeletConfig. Эта функция удалена.
NodeConfigSource указывает источник конфигурации узла. Должен быть непустым ровно один подпольный элемент (за исключением метаданных). Этот API устарел с версии 1.22
-
configSource.configMap (ConfigMapNodeConfigSource)
ConfigMap — это ссылка на ConfigMap узла
ConfigMapNodeConfigSource содержит информацию для ссылки на ConfigMap в качестве источника конфигурации для узла. Этот API устарел с версии 1.22: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
-
configSource.configMap.kubeletConfigKey (string), обязательный
KubeletConfigKey объявляет, какой ключ из указанного ConfigMap соответствует структуре KubeletConfiguration. Это поле обязательно во всех случаях.
-
configSource.configMap.name (string), обязательный
Name — это metadata.name указанного ConfigMap. Это поле обязательно во всех случаях.
-
configSource.configMap.namespace (string), обязательный
Namespace — это metadata.namespace указанного ConfigMap. Это поле обязательно во всех случаях.
-
configSource.configMap.resourceVersion (string)
ResourceVersion — это metadata.ResourceVersion указанного ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
configSource.configMap.uid (string)
UID — это metadata.UID указанного ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
-
-
externalID (string)
Устарело. Не все kubelet будут устанавливать это поле. Удалить поле после 1.13. см.: https://issues.k8s.io/61966
-
podCIDR (string)
PodCIDR представляет диапазон IP-адресов pod, назначенный узлу.
-
podCIDRs ([]string)
Установить: уникальные значения будут сохранены во время слияния
podCIDRs представляет собой диапазон IP-адресов, назначенных узлу для использования Pods на этом узле. Если это поле указано, первый элемент должен соответствовать полю podCIDR. Может содержать не более 1 значения для каждого из IPv4 и IPv6.
-
providerID (string)
ID узла, назначенный поставщиком облачных услуг в формате: <ИмяПоставщика>://<IDУзлаПоставщика>
-
taints ([]Taint)
Атомарно: будет заменено при слиянии
Если указано, метки узла.
Узел, к которому прикреплена эта метка, оказывает «воздействие» на любой pod, который не терпит метку.
-
taints.effect (string), обязательный
Необходимо. Воздействие метки на pod, не терпящие метку. Допустимые воздействия — NoSchedule, PreferNoSchedule и NoExecute.
-
taints.key (string), обязательный
Необходимо. Ключ метки, который должен быть применен к узлу.
-
taints.timeAdded (Time)
TimeAdded представляет время, в которое была добавлена метка. Оно записывается только для меток NoExecute.
Time — это оболочка вокруг time.Time, которая поддерживает правильную сериализацию в YAML и JSON. Оболочки предоставляются для многих из фабричных методов, которые предлагает пакет time.
-
taints.value (string)
Значение метки, соответствующее ключу метки.
-
-
unschedulable (boolean)
Unschedulable управляет планируемостью нового pod на узле. По умолчанию узел планируется. Дополнительная информация: https://kubernetes.io/docs/concepts/nodes/node/#manual-node-administration
NodeStatus
NodeStatus — это информация о текущем состоянии узла.
-
addresses ([]NodeAddress)
Patch strategy: merge on key
typeMap: unique values on key type will be kept during a merge
Список адресов, доступных узлу. Запрашивается у поставщика облачных услуг, если доступен. Подробнее: https://kubernetes.io/docs/concepts/nodes/node/#addresses Примечание: Это поле объявлено как объединяемое, но ключ слияния недостаточно уникален, что может привести к повреждению данных при его слиянии. Вместо этого вызывающие стороны должны использовать исправление полной замены. См. https://pr.k8s.io/79391 для примера. Потребители должны предполагать, что адреса могут изменяться в течение срока службы узла. Однако есть некоторые исключения, когда это может быть невозможно, например, Pod'ы, которые наследуют адрес узла в своем собственном состоянии или потребители нисходящего API (status.hostIP).
NodeAddress содержит информацию об адресе узла.
-
addresses.address (string), required
Адрес узла.
-
addresses.type (string), required
Тип адреса узла, один из Hostname, ExternalIP или InternalIP.
-
-
allocatable (map[string]Quantity)
Allocatable представляет ресурсы узла, доступные для планирования. По умолчанию используется Capacity.
-
capacity (map[string]Quantity)
Capacity представляет собой общие ресурсы узла. Подробнее: https://kubernetes.io/docs/reference/node/node-status/#capacity
-
conditions ([]NodeCondition)
Patch strategy: merge on key
typeMap: unique values on key type will be kept during a merge
Conditions — это массив текущих наблюдаемых состояний узла. Подробнее: https://kubernetes.io/docs/concepts/nodes/node/#condition
NodeCondition содержит информацию о состоянии узла.
-
conditions.status (string), required
Состояние условия, одно из True, False, Unknown.
-
conditions.type (string), required
Тип условия узла.
-
conditions.lastHeartbeatTime (Time)
Последнее время, когда мы получили обновление для данного условия.
Time — это обертка вокруг time.Time, которая поддерживает правильную маршалирование в YAML и JSON. Обёртки предоставляются для многих фабричных методов, которые предлагает пакет time.
-
conditions.lastTransitionTime (Time)
Последнее время перехода условия из одного состояния в другое.
Time — это обертка вокруг time.Time, которая поддерживает правильную маршалирование в YAML и JSON. Обёртки предоставляются для многих фабричных методов, которые предлагает пакет time.
-
conditions.message (string)
Чёткий текст, указывающий подробности о последнем переходе.
-
conditions.reason (string)
(краткая) причина последнего перехода условия.
-
-
config (NodeConfigStatus)
Состояние конфигурации, назначенной узлу с помощью функции динамической конфигурации Kubelet.
NodeConfigStatus описывает состояние конфигурации, назначенной Node.Spec.ConfigSource.
-
config.active (NodeConfigSource)
Active сообщает о контрольной точке конфигурации, которая активно используется узлом. Active будет представлять либо текущую версию назначенной конфигурации, либо текущую конфигурацию LastKnownGood, в зависимости от того, приводит ли попытка использования назначенной конфигурации к ошибке.
NodeConfigSource указывает источник конфигурации узла. Ровно одно подполе (исключая метаданные) должно быть не null. Этот API устарел с версии 1.22
-
config.active.configMap (ConfigMapNodeConfigSource)
ConfigMap — это ссылка на ConfigMap узла
ConfigMapNodeConfigSource содержит информацию для ссылки на ConfigMap в качестве источника конфигурации для узла. Этот API устарел с версии 1.22: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
-
config.active.configMap.kubeletConfigKey (string), required
KubeletConfigKey объявляет, какой ключ ссылаемого ConfigMap соответствует структуре KubeletConfiguration. Это поле обязательно во всех случаях.
-
config.active.configMap.name (string), required
Name — это metadata.name ссылаемого ConfigMap. Это поле обязательно во всех случаях.
-
config.active.configMap.namespace (string), required
Namespace — это metadata.namespace ссылаемого ConfigMap. Это поле обязательно во всех случаях.
-
config.active.configMap.resourceVersion (string)
ResourceVersion — это metadata.ResourceVersion ссылаемого ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
config.active.configMap.uid (string)
UID — это metadata.UID ссылаемого ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
-
-
config.assigned (NodeConfigSource)
Assigned сообщает о контрольной точке конфигурации, которую узел попытается использовать. Когда Node.Spec.ConfigSource обновляется, узел создает контрольную точку связанной полезной нагрузки конфигурации на локальном диске вместе с записью, указывающей на предполагаемую конфигурацию. Узел ссылается на эту запись, чтобы выбрать свою контрольную точку конфигурации, и сообщает об этой записи в Assigned. Assigned обновляется в статусе только после того, как запись будет создана на диске. Когда Kubelet перезапускается, он пытается сделать назначенную конфигурацию активной конфигурацией, загружая и проверяя контрольную точку полезной нагрузки, указанную Assigned.
NodeConfigSource указывает источник конфигурации узла. Ровно одно подполе (исключая метаданные) должно быть не null. Этот API устарел с версии 1.22
-
config.assigned.configMap (ConfigMapNodeConfigSource)
ConfigMap — это ссылка на ConfigMap узла
ConfigMapNodeConfigSource содержит информацию для ссылки на ConfigMap в качестве источника конфигурации для узла. Этот API устарел с версии 1.22: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
-
config.assigned.configMap.kubeletConfigKey (string), required
KubeletConfigKey объявляет, какой ключ ссылаемого ConfigMap соответствует структуре KubeletConfiguration. Это поле обязательно во всех случаях.
-
config.assigned.configMap.name (string), required
Name — это metadata.name ссылаемого ConfigMap. Это поле обязательно во всех случаях.
-
config.assigned.configMap.namespace (string), required
Namespace — это metadata.namespace ссылаемого ConfigMap. Это поле обязательно во всех случаях.
-
config.assigned.configMap.resourceVersion (string)
ResourceVersion — это metadata.ResourceVersion ссылаемого ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
config.assigned.configMap.uid (string)
UID — это metadata.UID ссылаемого ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
-
-
config.error (string)
Error описывает любые проблемы при согласовании Spec.ConfigSource с активной конфигурацией. Ошибки могут возникать, например, при попытке создать контрольную точку Spec.ConfigSource в локальной записи Assigned, при попытке создать контрольную точку полезной нагрузки, связанной с Spec.ConfigSource, при попытке загрузить или проверить назначенную конфигурацию и т. д. Ошибки могут возникать в разных точках при синхронизации конфигурации. Более ранние ошибки (например, ошибки загрузки или создания контрольной точки) не приведут к откату к LastKnownGood и могут быть устранены при повторных попытках Kubelet. Более поздние ошибки (например, загрузка или проверка контрольной точки конфигурации) приведут к откату к LastKnownGood. В последнем случае ошибку обычно можно устранить, исправив назначенную конфигурацию в Spec.ConfigSource. Вы можете найти дополнительную информацию для отладки, поискав сообщение об ошибке в журнале Kubelet. Error — это понятное описание состояния ошибки; машины могут проверять, пустое ли значение Error, но не должны полагаться на стабильность текста Error в разных версиях Kubelet.
-
config.lastKnownGood (NodeConfigSource)
LastKnownGood сообщает о контрольной точке конфигурации, к которой узел вернется, если он столкнется с ошибкой при попытке использовать назначенную конфигурацию. Назначенная конфигурация становится конфигурацией LastKnownGood, когда узел определяет, что назначенная конфигурация стабильна и корректна. В настоящее время это реализовано как период выдержки в 10 минут, начиная с момента обновления локальной записи назначенной конфигурации. Если назначенная конфигурация является активной в конце этого периода, она становится LastKnownGood. Обратите внимание, что если Spec.ConfigSource сброшено в nil (используются локальные значения по умолчанию), LastKnownGood также немедленно сбрасывается в nil, поскольку локальная конфигурация по умолчанию всегда считается хорошей. Не следует делать предположения о методе узла определения стабильности и правильности конфигурации, поскольку это может измениться или стать настраиваемым в будущем.
NodeConfigSource указывает источник конфигурации узла. Ровно одно подполе (исключая метаданные) должно быть не null. Этот API устарел с версии 1.22
-
config.lastKnownGood.configMap (ConfigMapNodeConfigSource)
ConfigMap — это ссылка на ConfigMap узла
ConfigMapNodeConfigSource содержит информацию для ссылки на ConfigMap в качестве источника конфигурации для узла. Этот API устарел с версии 1.22: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
-
config.lastKnownGood.configMap.kubeletConfigKey (string), required
KubeletConfigKey объявляет, какой ключ ссылаемого ConfigMap соответствует структуре KubeletConfiguration. Это поле обязательно во всех случаях.
-
config.lastKnownGood.configMap.name (string), required
Name — это metadata.name ссылаемого ConfigMap. Это поле обязательно во всех случаях.
-
config.lastKnownGood.configMap.namespace (string), required
Namespace — это metadata.namespace ссылаемого ConfigMap. Это поле обязательно во всех случаях.
-
config.lastKnownGood.configMap.resourceVersion (string)
ResourceVersion — это metadata.ResourceVersion ссылаемого ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
config.lastKnownGood.configMap.uid (string)
UID — это metadata.UID ссылаемого ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
-
-
-
daemonEndpoints (NodeDaemonEndpoints)
Эндпоинты демонов, запущенных на узле.
NodeDaemonEndpoints перечисляет порты, открытые демонами, запущенными на узле.
-
daemonEndpoints.kubeletEndpoint (DaemonEndpoint)
Эндпоинт, на котором прослушивает Kubelet.
DaemonEndpoint содержит информацию об одном эндпоинте демона.
-
daemonEndpoints.kubeletEndpoint.Port (int32), required
Номер порта данного эндпоинта.
-
-
-
features (NodeFeatures)
Features описывает набор функций, реализованных реализацией CRI.
NodeFeatures описывает набор функций, реализованных реализацией CRI. Функции, содержащиеся в NodeFeatures, должны зависеть только от реализации cri, независимо от обработчиков runtime.
-
features.supplementalGroupsPolicy (boolean)
SupplementalGroupsPolicy устанавливается в значение true, если runtime поддерживает SupplementalGroupsPolicy и ContainerUser.
-
-
images ([]ContainerImage)
Атомарно: будет заменено во время слияния
Список контейнерных образов на этом узле
Описание контейнерного образа
-
images.names ([]string)
Атомарно: будет заменено во время слияния
Имена, под которыми известен этот образ. Например: ["kubernetes.example/hyperkube:v1.0.7", "cloud-vendor.registry.example/cloud-vendor/hyperkube:v1.0.7"]
-
images.sizeBytes (int64)
Размер образа в байтах.
-
-
nodeInfo (NodeSystemInfo)
Набор идентификаторов/UUID для уникальной идентификации узла. Дополнительная информация: https://kubernetes.io/docs/concepts/nodes/node/#info
NodeSystemInfo — набор идентификаторов/UUID для уникальной идентификации узла.
-
nodeInfo.architecture (string), required
Архитектура, сообщённая узлом
-
nodeInfo.bootID (string), required
Boot ID, сообщённый узлом.
-
nodeInfo.containerRuntimeVersion (string), required
Версия ContainerRuntime, сообщённая узлом через удалённый API runtime (например, containerd://1.4.2).
-
nodeInfo.kernelVersion (string), required
Версия ядра, сообщённая узлом из 'uname -r' (например, 3.16.0-0.bpo.4-amd64).
-
nodeInfo.kubeProxyVersion (string), required
Устаревшее поле: Версия KubeProxy, сообщённая узлом.
-
nodeInfo.kubeletVersion (string), required
Версия Kubelet, сообщённая узлом.
-
nodeInfo.machineID (string), required
MachineID, сообщённый узлом. Для уникальной идентификации машины в кластере предпочтительнее использовать это поле. Подробнее см. man(5) machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html
-
nodeInfo.operatingSystem (string), required
Операционная система, сообщённая узлом
-
nodeInfo.osImage (string), required
Образ ОС, сообщённый узлом из /etc/os-release (например, Debian GNU/Linux 7 (wheezy)).
-
nodeInfo.systemUUID (string), required
SystemUUID, сообщённый узлом. Для уникальной идентификации машины предпочтительнее использовать MachineID. Это поле специфично для хостов Red Hat https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid
-
-
phase (string)
NodePhase — недавно наблюдаемая фаза жизненного цикла узла. Дополнительная информация: https://kubernetes.io/docs/concepts/nodes/node/#phase Поле никогда не заполняется и теперь устарело.
-
runtimeHandlers ([]NodeRuntimeHandler)
Атомарно: будет заменено во время слияния
Доступные обработчики runtime.
NodeRuntimeHandler — набор информации об обработчике runtime.
-
runtimeHandlers.features (NodeRuntimeHandlerFeatures)
Поддерживаемые функции.
NodeRuntimeHandlerFeatures — набор функций, реализованных обработчиком runtime.
-
runtimeHandlers.features.recursiveReadOnlyMounts (boolean)
RecursiveReadOnlyMounts устанавливается в значение true, если обработчик runtime поддерживает RecursiveReadOnlyMounts.
-
runtimeHandlers.features.userNamespaces (boolean)
UserNamespaces устанавливается в значение true, если обработчик runtime поддерживает UserNamespaces, включая для томов.
-
-
runtimeHandlers.name (string)
Имя обработчика runtime. Пустая строка для стандартного обработчика runtime.
-
-
volumesAttached ([]AttachedVolume)
Атомарно: будет заменено во время слияния
Список томов, присоединённых к узлу.
AttachedVolume описывает том, присоединённый к узлу
-
volumesAttached.devicePath (string), required
DevicePath представляет собой путь к устройству, где должен быть доступен том
-
volumesAttached.name (string), required
Имя присоединённого тома
-
-
volumesInUse ([]string)
Атомарно: будет заменено во время слияния
Список прикрепляемых томов, используемых (смонтированных) узлом.
Список узлов
NodeList — весь список всех узлов, которые были зарегистрированы у мастера.
apiVersion: v1
kind: NodeList
-
metadata (ListMeta)
Стандартные метаданные списка. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
items ([]Node), required
Список узлов
© 2024 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2024 The Linux Foundation ®. All rights reserved.
https://kubernetes.io/docs/reference/kubernetes-api/cluster-resources/node-v1/