← Назад в словарь

Kubernetes

Kubernetes — рулевой, штурман (греч.)

Суть в одном предложении

Kubernetes — это система оркестрации контейнеров, автоматически управляющая их запуском, масштабированием и отказоустойчивостью.

Краткое определение

Kubernetes (K8s) — это платформа для управления контейнеризированными приложениями, которая обеспечивает автоматический деплой, масштабирование и восстановление сервисов.

Оригинал и перевод

  • Язык: английский
  • Оригинал: Kubernetes
  • Буквальный перевод: штурман, рулевой

Синонимы и варианты написания

  • K8s
  • Кубер
  • Kubernetes cluster

Происхождение

Kubernetes был разработан в Google на основе их внутренней системы Borg и открыт в 2014 году как open-source проект.

Где используется

  • Облачная инфраструктура
  • Микросервисная архитектура
  • High-load системы
  • SaaS-платформы
  • DevOps-проекты

Когда это важно

Kubernetes становится критичным, когда:

  • используется много контейнеров
  • нужна автоматическая масштабируемость
  • требуется высокая доступность
  • инфраструктура распределённая

Подробное объяснение

Docker запускает контейнеры.
Kubernetes управляет ими в кластере.

Если один контейнер упал — Kubernetes запустит новый.
Если нагрузка выросла — увеличит количество реплик.


Основные сущности Kubernetes

  • Cluster — группа серверов
  • Node — сервер внутри кластера
  • Pod — минимальная единица (1 или несколько контейнеров)
  • Deployment — управление версиями и масштабом
  • Service — доступ к приложению
  • ConfigMap — конфигурация
  • Secret — хранение секретов

Пример Deployment

apiVersion: apps/v1
kind: Deployment
metadata:
  name: app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: app
  template:
    metadata:
      labels:
        app: app
    spec:
      containers:
        - name: app
          image: my-app:latest
          ports:
            - containerPort: 80

Команда применения:

kubectl apply -f deployment.yaml

Что делает Kubernetes автоматически

  • Балансирует нагрузку
  • Перезапускает упавшие контейнеры
  • Обновляет сервис без простоя
  • Масштабирует приложение
  • Управляет сетью контейнеров

Kubernetes ≠ Docker

Docker — контейнеризация. Kubernetes — оркестрация контейнеров.


Где особенно актуален

  • SaaS-платформы
  • Микросервисы
  • High-load API
  • Облачные среды (AWS, GCP, Azure)

Для небольшого VPS с WordPress Kubernetes чаще избыточен.


Что не является Kubernetes

  • Контейнер
  • Виртуальная машина
  • CI/CD система
  • Хостинг

Аналоги и связанные термины

  • Docker
  • Orchestrator
  • Pod
  • Deployment
  • Service
  • GitOps

Пример использования

«Приложение развернуто в Kubernetes-кластере с автоскейлингом до 10 реплик.»


Мини-FAQ

  • Нужен ли Kubernetes для одного сервера? Обычно нет. Это избыточное решение.

  • Можно ли использовать Kubernetes без Docker? Да, но всё равно используются контейнерные runtime (например, containerd).


Смотри также

  • Docker
  • GitOps
  • Deployment
  • Containerization