Kubernetes (K8s)
Kubernetes (K8s) — это система с открытым исходным кодом для автоматизации развертывания, масштабирования и управления контейнеризированными приложениями.
Kubernetes, часто сокращенно K8s, — это платформа оркестровки контейнеров, которая автоматизирует развертывание, масштабирование и управление контейнеризированными приложениями. Она группирует контейнеры, составляющие приложение, в логические единицы для удобного управления и обнаружения. Kubernetes предоставляет декларативный подход к управлению приложениями, позволяя пользователям определять желаемое состояние своих приложений, а система работает над достижением этого состояния.
Разработанный изначально Google, Kubernetes сейчас поддерживается Cloud Native Computing Foundation (CNCF). Он поддерживает различные среды выполнения контейнеров, включая Docker, containerd и CRI-O. Kubernetes разработан таким образом, чтобы быть высоко расширяемым и может использоваться для управления приложениями в различных средах, от локальных центров обработки данных до публичных облаков.
graph LR
Center["Kubernetes (K8s)"]:::main
Pre_docker["docker"]:::pre --> Center
click Pre_docker "/terms/docker"
Rel_container_orchestration["container-orchestration"]:::related -.-> Center
click Rel_container_orchestration "/terms/container-orchestration"
Rel_microservices["microservices"]:::related -.-> Center
click Rel_microservices "/terms/microservices"
Rel_devops["devops"]:::related -.-> Center
click Rel_devops "/terms/devops"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Простыми словами
🎼 Представьте огромный оркестр, где сотни музыкантов (контейнеры [Docker](/ru/terms/docker)). Чтобы музыка звучала идеально, нужен дирижер. Kubernetes — это такой дирижер. Он следит, чтобы все вступали вовремя, играли в такт, а если кто-то заболеет — мгновенно находит замену, чтобы концерт не прекращался.
🤓 Expert Deep Dive
Архитектура K8s разделяется на Control Plane (центр управления) и Worker Nodes (рабочие узлы). Основной единицей развертывания является Pod (под), который может содержать один или несколько контейнеров. Связь между ними обеспечивают Сервисы (Services), а состояние кластера хранится в базе данных etcd. Благодаря механизмам самолечения и автоматического масштабирования, Kubernetes стал стандартом для облачных технологий.