[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-kubernetes-kakova-arkhitektura-klastera-kubernetes":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":15,"progress":16,"seo":17},1308,"kakova-arkhitektura-klastera-kubernetes",26,"kubernetes","Kubernetes","☸️","Какова архитектура кластера Kubernetes?","Кластер Kubernetes состоит из Master Node (управляющий узел, Control Plane) и Worker Nodes (рабочие узлы).\n\n### Master Node (Control Plane)\n\nУправляющий узел отвечает за состояние всего кластера и принятие решений:\n\n- API Server (`kube-apiserver`) — центральный компонент, точка входа для всех REST-запросов. Через него работает `kubectl`, другие компоненты кластера и внешние системы. Все операции (создание Pod, Service и т.д.) проходят через API Server\n- etcd — распределённое хранилище типа «ключ-значение». Хранит всё состояние кластера: информацию о нодах, подах, конфигурации, секретах. Это «источник истины» для кластера\n- Scheduler (`kube-scheduler`) — отвечает за назначение Pod'ов на Worker Node. При создании нового Pod'а Scheduler анализирует доступные ресурсы на нодах, affinity\u002Fanti-affinity правила, taints\u002Ftolerations и выбирает оптимальный узел\n- Controller Manager (`kube-controller-manager`) — запускает контроллеры, которые следят за состоянием кластера и приводят его к желаемому состоянию. Примеры контроллеров: ReplicaSet Controller, Deployment Controller, Node Controller, Job Controller\n\n### Worker Node\n\nРабочий узел, на котором выполняются контейнеры с приложениями:\n\n- kubelet — агент, работающий на каждой Worker Node. Получает от API Server описание Pod'ов, которые должны запускаться на данной ноде, и обеспечивает их запуск и работу\n- kube-proxy — сетевой прокси на каждой ноде. Обеспечивает сетевое взаимодействие между Pod'ами и Service'ами. Управляет правилами iptables\u002FIPVS для маршрутизации трафика\n- Container Runtime — среда выполнения контейнеров. Kubernetes поддерживает несколько рантаймов через стандарт CRI (Container Runtime Interface): `containerd`, `CRI-O`. Docker как рантайм был исключён начиная с Kubernetes 1.24, но Docker-образы по-прежнему полностью совместимы\n\n### Схема взаимодействия\n\n```\n                   +-------------------+\n                   |    Master Node    |\n                   |  (Control Plane)  |\n                   |                   |\n  kubectl -------->|  API Server       |\n                   |  Scheduler        |\n                   |  Controller Mgr   |\n                   |  etcd             |\n                   +--------+----------+\n                            |\n              +-------------+-------------+\n              |                           |\n     +--------v--------+        +--------v--------+\n     |  Worker Node 1  |        |  Worker Node 2  |\n     |                  |        |                  |\n     |  kubelet         |        |  kubelet         |\n     |  kube-proxy      |        |  kube-proxy      |\n     |  Container RT    |        |  Container RT    |\n     |                  |        |                  |\n     |  [Pod] [Pod]     |        |  [Pod] [Pod]     |\n     +-----------------+        +-----------------+\n```\n\n> **На собеседовании:** достаточно назвать 4 компонента Control Plane (API Server, etcd, Scheduler, Controller Manager) и 3 компонента Worker Node (kubelet, kube-proxy, Container Runtime). Частая ошибка — путать kubelet и kube-proxy или забыть про etcd.","","middle",[7],[],null,{"title":18,"description":19,"ogTitle":18,"ogDescription":19,"keywords":20,"schemaAnswer":19,"featuredSnippetReady":21},"Какова архитектура кластера Kubernetes? — Gymterview","Кластер Kubernetes состоит из Master Node (управляющий узел, Control Plane) и Worker Nodes (рабочие узлы).",[7,13],true]