Узел — это рабочая машина в кластере Kubernetes, которая также известна как миньон. Это рабочие единицы, которые могут быть физическими, виртуальными или облачными.
Каждый узел имеет всю необходимую конфигурацию, необходимую для запуска модуля, например прокси-службы и службы кублетов, а также Docker, который используется для запуска контейнеров Docker на модуле, созданном на узле.
Они не создаются Kubernetes, но они создаются внешне либо поставщиком облачных услуг, либо администратором кластера Kubernetes на физических или виртуальных машинах.
Ключевым компонентом Kubernetes для обработки нескольких узлов является диспетчер контроллеров, который запускает несколько видов контроллеров для управления узлами. Чтобы управлять узлами, Kubernetes создает объект типа узла, который будет проверять, что созданный объект является допустимым узлом.
Сервис с селектором
apiVersion: v1 kind: node metadata: name: < ip address of the node> labels: name: <lable name>
В формате JSON создается реальный объект, который выглядит следующим образом:
{ Kind: node apiVersion: v1 "metadata": { "name": "10.01.1.10", "labels" { "name": "cluster 1 node" } } }
Контроллер узла
Они представляют собой набор служб, которые выполняются в мастере Kubernetes и постоянно отслеживают узел в кластере на основе metadata.name. Если все необходимые службы запущены, то узел проверяется, и вновь созданный модуль будет назначен этому узлу контроллером. Если он недействителен, мастер не назначит ему какой-либо модуль и будет ждать, пока он не станет действительным.
Мастер Kubernetes автоматически регистрирует узел, если флаг –register-node равен true.
–register-node = true
Однако, если администратор кластера хочет управлять им вручную, то это можно сделать, повернув плоскость —