Назад к вопросам
Middle
73
questionbank

За что отвечает контрольная плоскость Kubernetes и что делают рабочие узлы?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Контрольная плоскость управляет кластером: принимает команды, планирует процессы kube-scheduler, управляет состояниями через kube-controller-manager, хранит конфигурацию в etcd. Рабочие узлы (воркеры) выполняют реальные рабочие нагрузки (поды) под управлением kubelet и обслуживают сетевые запросы через kube-proxy.

Контрольная плоскость:

  • kube-apiserver: API-сервер кластера, единая точка входа.
    # Пример обращения к API
    apiVersion: v1
    kind: Pod
    metadata:
      name: my-pod
    spec:
      containers:
      - name: my-container
        image: nginx
    
  • etcd: Распределенное, согласованное хранилище типа ключ-значение для хранения состояния кластера.
  • kube-scheduler: Выбирает узел для размещения новых подов.
  • kube-controller-manager: Запускает контроллеры, которые отслеживают состояние кластера и вносят необходимые изменения.
    • Node Controller
    • Replication Controller, ReplicaSet, Deployment Controller
    • Endpoints Controller
    • Service Account & Token Controllers
  • cloud-controller-manager (опционально): Взаимодействует с облачными провайдерами для управления ресурсами (load balancers, persistent volumes и т.д.).

Рабочие узлы:

  • kubelet: Агент, запущенный на каждом узле. Управляет контейнерами в подах, взаимодействуя с контейнерным рантаймом (например, Docker, containerd).
    # Пример команды, которую может выполнить kubelet (упрощенно)
    docker run nginx
    
  • kube-proxy: Поддерживает сетевые правила на узлах, обеспечивая связь между подами, сетью кластера и внешним миром.
  • Container Runtime: Софт, отвечающий за запуск контейнеров (Docker, containerd, CRI-O).