Узел
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 указывает источник конфигурации узла. Ровно одно подполе (за исключением metadata) должно быть не null. Этот 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-адресов, назначенные узлу для использования pod на этом узле. Если это поле указано, то 0-й элемент должен совпадать с полем podCIDR. Может содержать не более 1 значения для IPv4 и IPv6.
-
providerID (string)
ID узла, назначенный поставщиком облачных услуг в формате: <Имя поставщика>://<Идентификатор узла поставщика>
-
taints ([]Taint)
Если указано, метки узла.
Узел, к которому прикреплена эта метка, оказывает «воздействие» на любой pod, который не терпит эту метку.
-
taints.effect (string), обязательное
Обязательно. Эффект метки на под, которые не терпят эту метку. Допустимые эффекты: 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 — информация о текущем состоянии узла.
-
адреса ([]NodeAddress)
Стратегия патчинга: слияние по ключу
typeСписок адресов, доступных узлу. Запрашивается у поставщика облачных услуг, если доступен. Дополнительная информация: https://kubernetes.io/docs/concepts/nodes/node/#addresses Примечание: Это поле объявлено как сливаемое, но ключ слияния недостаточно уникален, что может привести к повреждению данных при слиянии. Звонящие должны вместо этого использовать полную замену патча. См. https://pr.k8s.io/79391 для примера.
NodeAddress содержит информацию об адресе узла.
-
addresses.address (строка), обязательно
Адрес узла.
-
addresses.type (строка), обязательно
Тип адреса узла, один из Hostname, ExternalIP или InternalIP.
-
-
allocatable (map[string]Quantity)
Allocatable представляет собой ресурсы узла, доступные для планирования. По умолчанию соответствует Capacity.
-
capacity (map[string]Quantity)
Capacity представляет собой совокупные ресурсы узла. Дополнительная информация: https://kubernetes.io/docs/concepts/storage/persistent-volumes#capacity
-
conditions ([]NodeCondition)
Стратегия патчинга: слияние по ключу
typeConditions — массив текущих наблюдаемых условий узла. Дополнительная информация: https://kubernetes.io/docs/concepts/nodes/node/#condition
NodeCondition содержит информацию о состоянии узла.
-
conditions.status (строка), обязательно
Состояние условия, одно из True, False, Unknown.
-
conditions.type (строка), обязательно
Тип условия узла.
-
conditions.lastHeartbeatTime (Time)
Последнее время получения обновления по данному условию.
Time — оболочка вокруг time.Time, которая поддерживает правильное кодирование в YAML и JSON. Оболочки предоставляются для многих фабричных методов, предлагаемых пакетом time.
-
conditions.lastTransitionTime (Time)
Последнее время перехода условия из одного состояния в другое.
Time — оболочка вокруг time.Time, которая поддерживает правильное кодирование в YAML и JSON. Оболочки предоставляются для многих фабричных методов, предлагаемых пакетом time.
-
conditions.message (строка)
Человекопонятное сообщение, указывающее детали о последнем переходе.
-
conditions.reason (строка)
(краткое) обоснование последнего перехода состояния условия.
-
-
config (NodeConfigStatus)
Статус конфигурации, назначенной узлу с помощью динамической функции конфигурации Kubelet.
NodeConfigStatus описывает состояние конфигурации, назначенной Node.Spec.ConfigSource.
-
config.active (NodeConfigSource)
Active сообщает о проверенной конфигурации, которую узел активно использует. Active будет представлять собой либо текущую версию конфигурации Assigned, либо текущую конфигурацию LastKnownGood, в зависимости от того, приводит ли попытка использовать конфигурацию Assigned к ошибке.
NodeConfigSource указывает источник конфигурации узла. Точно один подотрезок (исключая метаданные) должен быть непустым. Этот 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 (строка), обязательно
KubeletConfigKey объявляет, какой ключ из указанного ConfigMap соответствует структуре KubeletConfiguration. Это поле обязательно во всех случаях.
-
config.active.configMap.name (строка), обязательно
Name — это metadata.name указанного ConfigMap. Это поле обязательно во всех случаях.
-
config.active.configMap.namespace (строка), обязательно
Namespace — это metadata.namespace указанного ConfigMap. Это поле обязательно во всех случаях.
-
config.active.configMap.resourceVersion (строка)
ResourceVersion — это metadata.ResourceVersion указанного ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
config.active.configMap.uid (строка)
UID — это metadata.UID указанного ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
-
-
config.assigned (NodeConfigSource)
Assigned сообщает о проверенной конфигурации, которую узел попытается использовать. При обновлении Node.Spec.ConfigSource узел сохраняет связанную конфигурацию в локальный диск, вместе с записью, указывающей предполагаемую конфигурацию. Узел ссылается на эту запись, чтобы выбрать свою контрольную точку конфигурации и сообщает об этой записи в Assigned. Assigned обновляется в состоянии только после того, как запись была сохранена на диск. При перезапуске Kubelet он пытается сделать конфигурацию Assigned активной, загрузив и проверив сохраненный фрагмент, определенный Assigned.
NodeConfigSource указывает источник конфигурации узла. Точно один подотрезок (исключая метаданные) должен быть непустым. Этот 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 (строка), обязательно
KubeletConfigKey объявляет, какой ключ из указанного ConfigMap соответствует структуре KubeletConfiguration. Это поле обязательно во всех случаях.
-
config.assigned.configMap.name (строка), обязательно
Name — это metadata.name указанного ConfigMap. Это поле обязательно во всех случаях.
-
config.assigned.configMap.namespace (строка), обязательно
Namespace — это metadata.namespace указанного ConfigMap. Это поле обязательно во всех случаях.
-
config.assigned.configMap.resourceVersion (строка)
ResourceVersion — это metadata.ResourceVersion указанного ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
config.assigned.configMap.uid (строка)
UID — это metadata.UID указанного ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
-
-
config.error (строка)
Error описывает любые проблемы с привязкой Spec.ConfigSource к активной конфигурации. Ошибки могут возникать, например, при попытке сохранения Spec.ConfigSource в локальную запись Assigned, при попытке сохранения данных, связанных с Spec.ConfigSource, при попытке загрузки или проверки конфигурации Assigned и т. д. Ошибки могут возникать в разных точках при синхронизации конфигурации. Более ранние ошибки (например, ошибки загрузки или сохранения) не приведут к откату к LastKnownGood и могут быть решены после повторных попыток Kubelet. Более поздние ошибки (например, ошибка загрузки или проверки сохранённой конфигурации) приведут к откату к LastKnownGood. В последнем случае обычно можно решить проблему, исправив конфигурацию, назначенную в Spec.ConfigSource. Для отладки вы можете найти дополнительную информацию, выполнив поиск сообщения об ошибке в журнале Kubelet. Error — это понятное для человека описание состояния ошибки; машины могут проверить, пуст ли Error, но не должны полагаться на стабильность текста Error между версиями Kubelet.
-
config.lastKnownGood (NodeConfigSource)
LastKnownGood сообщает о сохранённой конфигурации, к которой узел вернётся при возникновении ошибки при попытке использования конфигурации Assigned. Конфигурация Assigned становится LastKnownGood, когда узел определит, что конфигурация Assigned стабильна и корректна. В настоящее время это реализовано как период ожидания в 10 минут, начиная с момента обновления локальной записи Assigned конфигурации. Если конфигурация Assigned является активной по окончании этого периода, она становится LastKnownGood. Обратите внимание, что если Spec.ConfigSource сброшен до null (используются локальные значения по умолчанию), LastKnownGood также немедленно сбрасывается до null, поскольку локальная конфигурация по умолчанию всегда считается корректной. Не следует делать предположений о методе определения узлом стабильности и корректности конфигурации, поскольку это может измениться или стать настраиваемым в будущем.
NodeConfigSource указывает источник конфигурации узла. Точно один подотрезок (исключая метаданные) должен быть непустым. Этот 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 (строка), обязательно
KubeletConfigKey объявляет, какой ключ из указанного ConfigMap соответствует структуре KubeletConfiguration. Это поле обязательно во всех случаях.
-
config.lastKnownGood.configMap.name (строка), обязательно
Name — это metadata.name указанного ConfigMap. Это поле обязательно во всех случаях.
-
config.lastKnownGood.configMap.namespace (строка), обязательно
Namespace — это metadata.namespace указанного ConfigMap. Это поле обязательно во всех случаях.
-
config.lastKnownGood.configMap.resourceVersion (строка)
ResourceVersion — это metadata.ResourceVersion указанного ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
config.lastKnownGood.configMap.uid (строка)
UID — это metadata.UID указанного ConfigMap. Это поле запрещено в Node.Spec и обязательно в Node.Status.
-
-
-
-
daemonEndpoints (NodeDaemonEndpoints)
Конечные точки демонов, запущенных на узле.
NodeDaemonEndpoints перечисляет порты, открытые демонами, работающими на узле.
-
daemonEndpoints.kubeletEndpoint (DaemonEndpoint)
Конечная точка, на которой прослушивает Kubelet.
DaemonEndpoint содержит информацию об одной конечной точке демона.
-
daemonEndpoints.kubeletEndpoint.Port (int32), требуется
Номер порта данной конечной точки.
-
-
-
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), требуется
Архитектура, сообщенная узлом
-
nodeInfo.bootID (string), требуется
Идентификатор загрузки, сообщенный узлом.
-
nodeInfo.containerRuntimeVersion (string), требуется
Версия контейнерного времени выполнения, сообщенная узлом через удаленный API времени выполнения (например, containerd://1.4.2).
-
nodeInfo.kernelVersion (string), требуется
Версия ядра, сообщенная узлом из 'uname -r' (например, 3.16.0-0.bpo.4-amd64).
-
nodeInfo.kubeProxyVersion (string), требуется
Версия KubeProxy, сообщенная узлом.
-
nodeInfo.kubeletVersion (string), требуется
Версия Kubelet, сообщенная узлом.
-
nodeInfo.machineID (string), требуется
MachineID, сообщенный узлом. Для уникальной идентификации машины в кластере предпочтительнее использовать это поле. Дополнительная информация в man(5) machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html
-
nodeInfo.operatingSystem (string), требуется
Операционная система, сообщенная узлом
-
nodeInfo.osImage (string), требуется
Изображение ОС, сообщенное узлом из /etc/os-release (например, Debian GNU/Linux 7 (wheezy)).
-
nodeInfo.systemUUID (string), требуется
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 Поле никогда не заполняется и теперь устарело.
-
volumesAttached ([]AttachedVolume)
Список томов, прикрепленных к узлу.
AttachedVolume описывает том, прикрепленный к узлу
-
volumesAttached.devicePath (string), требуется
DevicePath представляет собой путь к устройству, где должен быть доступен том
-
volumesAttached.name (string), требуется
Имя прикрепленного тома
-
-
volumesInUse ([]string)
Список прикрепляемых томов, используемых (смонтированных) узлом.
NodeList
NodeList — это весь список всех узлов, которые были зарегистрированы у мастера.
-
apiVersion: v1
-
kind: NodeList
-
metadata (ListMeta)
Стандартные метаданные списка. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
items ([]Node), требуется
Список узлов
© 2022 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2022 The Linux Foundation ®. All rights reserved.
https://v1-26.docs.kubernetes.io/docs/reference/kubernetes-api/cluster-resources/node-v1/