Часто мы используем
kubectl, не задумываясь, что происходит «под капотом». На этой схеме отлично разложено устройство кластера Kubernetes. Давайте разберем три главных уровня архитектуры.1. Control Plane (Панель управления) - «Мозг» кластера 🧠
Это центр принятия решений. Именно здесь определяется, что и где должно работать.
🔴API Server (в центре): Единая точка входа. Все компоненты общаются только через него (и вы через CLI тоже). Примечание: на схеме иконка подписана как Kube-Scheduler, но функционально и визуально (надпись API) это именно API Server.
🔴etcd: «Память» кластера. Надежное хранилище типа «ключ-значение», где лежит вся конфигурация и текущее состояние системы.
🔴Kube-Scheduler: Логист. Решает, на какую именно ноду (узле) запустить новый Pod, исходя из свободных ресурсов.
🔴Controller Manager: Смотритель. Следит, чтобы текущее состояние кластера совпадало с желаемым (например, если упал под - он его перезапустит).
🔴Cloud-Controller Manager: Связной с облаком. Управляет ресурсами, специфичными для облачного провайдера (AWS, Azure, GCP).
2. Worker Nodes (Рабочие узлы) - «Мускулы» кластера 💪
Здесь крутятся ваши приложения.
🔴Pod (Под): Минимальная единица в K8s. Внутри пода живет один или несколько контейнеров.
🔴Container Runtime (Docker): Движок, который фактически запускает контейнеры.
🔴Kubelet: Главный агент на узле. Получает задачи от Control Plane и гарантирует, что контейнеры в поде запущены и работают.
🔴Kube-Proxy: Сетевой регулировщик. Отвечает за сетевые правила и проброс трафика к подам.
3. Kubernetes Extensions - Инструменты 🛠
То, с чем взаимодействуем мы или системы мониторинга:
🔴CLI: Консольная утилита (
kubectl).🔴Web Admin UI: Дашборд для визуального управления.
🔴DNS: Для обнаружения сервисов внутри кластера.
🔴Monitoring: Сбор метрик ресурсов.
💡Control Plane командует, Worker Nodes исполняют, а Extensions помогают нам этим управлять.
#devops #kubernetes #k8s #architecture #docker
♻️ Сделай репост, чтобы помочь другим.
📲 Мы в MAX
👉 @Bookflow
